Oracle BI Server で Windows Live 認証 を 利用する

 

Oracle BI Server は、認証をリポジトリのみで管理することが出来るが、外部認証を使用すると既存の認証基盤を利用することが出来る。
外部認証は大きく分けて

  1. LDAP認証
  2. 外部テーブル認証
  3. データベース認証
  4. 外部モジュールを使用した認証

の4つある。
システムをWindows & Active Directory 環境で構築する場合は
  1. LDAP認証 で Active Directoryを使用する方法
が導入や運用コストが一番少なくてお勧めだ。
これ以外にグローバルな認証、例えばWindows Live認証を利用したい場合は
 4. 外部モジュールを使用した認証
で次のようにして行う。

 

認証シーケンス

 

Windows Live 認証を利用する場合、認証シーケンスは次のようになる。

 

 

 

開発と導入

 

① Web Authentication 利用のためのアプリケーション ID の取得
 
  下記のページを参考にして、アプリケーション IDを取得する。

Web Authentication 利用のためのアプリケーション ID 取得
http://msdn.microsoft.com/ja-jp/library/bb676626.aspx

② 認証連携用の外部モジュール(DLL)を下記APIで作成する。

#ifdef ADSIDA_DLL_EXPORT
#define ADSIDADLL      __declspec( dllexport )
#define ADSIDATEMPL
#else
#define ADSIDADLL      DLL_IMPORT_DECLSPEC
#define ADSIDATEMPL    TEMPLATE_IMPORT
#endif

typedef wchar_t SAChar;

typedef unsigned int SAUInt32;

enum SAReturnType
{
    SAAuthenticatorFalse = 0L,
    SAAuthenticatorTrue =1L,
    SAAuthenticatorNotSupported = 2L
};

extern "C"
{
SCHAPIDLL  SAUInt32 SAAuthenticatorGetVersion();
SCHAPIDLL  void SAAuthenticatorFreeString(SAChar *p);
SCHAPIDLL void SAAuthenticatorFreeStringArray(SAChar **p);
SCHAPIDLL  SAReturnType  SAAuthenticatorInit(const SAChar *pConfigParam, SAChar **ppErrorMessage);
SCHAPIDLL  SAReturnType SAAuthenticatorLogin(const SAChar *pUserID, const SAChar *pPassword, SAChar **ppErrorMessage);
SCHAPIDLL  SAReturnType SAAuthenticatorIsAValidUser(const SAChar *pUserID, SAChar **ppErrorMessage);
SCHAPIDLL  SAReturnType SAAuthenticatorGetUserProps(
            const SAChar *pUserID, const SAChar **ppKeys, SAChar ***pppValues,  SAChar **ppErrorMessage);
SCHAPIDLL  SAReturnType SAAuthenticatorGetUserGroups(
            const SAChar *pUserID, SAChar ***pppGroups,  SAChar **ppErrorMessage);
SCHAPIDLL  SAReturnType SAAuthenticatorGetAllGroups(
            SAChar ***pppGroups,  SAChar **ppErrorMessage);
SCHAPIDLL  void SAAuthenticatorShutdown();
}

③ Webアプリケーションページ(戻り先ページ)の作成

 

ユーザーのサインイン、サインアウト、または Cookie のクリアが正常に完了した後、Windows Live ID 認証サービスがそのユーザーを (認証トークンと共に) リダイレクトする際の宛先になるWeb ページ。ページは、サービスからの応答に対して、そのサイトで必要な処理を行う。

サービスからの応答の処理
http://msdn.microsoft.com/ja-jp/library/bb676640.aspx

 

④  ②で作成した外部モジュールを、Oracle BI Server に登録する。

 

※グループ情報だけはWindows Live IDから取得・管理することは出来ない為、ファイル、データベース・・・等 を用意して管理することになる。

 

関連情報

Windows Live ID SDK
http://msdn.microsoft.com/ja-jp/library/bb404787.aspx

Oracle Business Intelligence Server 管理ガイド リリース10.1.3.2 2007 年4 月
http://otndnld.oracle.co.jp/document/products/OBIEE/10133/doc_cd/doc/bi.1013/E05032-01.pdf

  P323: 15. Oracle BI におけるセキュリティ
  P419: B. Oracle BI Server 認証API

広告

コメントを残す

コメントを投稿するには、以下のいずれかでログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中