SSO認証およびOracle Analytics Serverの理解
シングル・サインオン(SSO)ソリューションを統合することで、ユーザーはログオン(サインオン)して認証を受けるのを一度で済ませることができます。その後、認証されたユーザーには、そのユーザーに付与された権限に応じて、システム・コンポーネントまたはリソースへのアクセス権が与えられます。
Oracle Analytics Serverは、Oracle Fusion MiddlewareおよびOracle WebLogic Serverとともに使用するように構成されたSSOソリューションで認証された受信HTTPリクエストを信頼するように構成できます。
SSO認証を使用するように構成されたOracle Analytics Serverの場合は、Oracle Fusion Middlewareで使用するように構成されたSSOソリューションからの認証されたユーザーを受け入れます。SSOが有効化されていない場合は、Oracle Analytics Serverは、各ユーザーに対して認証資格証明を要求します。Oracle Analytics ServerがSSOを使用するように構成されている場合、ユーザーはまずSSOソリューションの認証用のログイン・ページにリダイレクトされます。SSOソリューションによってユーザーが認証されると、ユーザー名がプレゼンテーション・サービスに転送され、そこでこの名前が抽出されます。次に、偽装機能(偽装されているユーザーの代理の役目を果す資格証明を使用したプレゼンテーション・サーバーとBIサーバーの間の接続文字列)を使用して、BIサーバーとのセッションが確立されます。
SSOを使用して正常にログインした後も、ユーザーは、有効なユーザー名とパスワードの組合せを使用してモデル管理ツールにログインするためのoracle.bi.server.manageRepositories
権限を持っている必要があります。
SSO認証と連携するようにOracle Analytics Serverを構成するには、少なくとも次を実行する必要があります。
- SSO認証を受け付けるようにOracle Fusion MiddlewareとOracle WebLogic Serverを構成します。本番環境では、Oracle Access Managerをお薦めします。
- 受信メッセージを信頼するようにOracle Analytics Serverプレゼンテーション・サービスを構成します。
- SSO構成でのアイデンティティの伝播に必要なHTTPヘッダー情報(ユーザー・アイデンティティとSSOのCookie)を指定して構成します。
IDアサーション・プロバイダのしくみ
この項では、Oracle Access Managerの認証プロバイダがOracle WebLogic Serverと連携し、シングル・サインオンのためのIDアサーション・プロバイダを使用して、次の機能を提供するしくみについて説明します。
- シングル・サインオン用のIDアサーション・プロバイダ
この機能は、Oracle Access Managerの認証サービスを使用し、適切なトークンを通じて、認証済のOracle Access Managerユーザーを検証し、WebLogicで認証されたセッションを作成します。また、Webゲートとポータルの間のシングル・サインオンも提供します。Webゲートは、Webリソース(HTTP)リクエストをインターセプトし、それを認証および認可のためにアクセス・サーバーに転送するプラグインです。
- オーセンティケータ
この機能は、Oracle Access Managerの認証サービスを使用して、Oracle WebLogic Serverにデプロイされているアプリケーションにアクセスするユーザーを認証します。ユーザーはその資格証明、たとえばユーザー名やパスワードに基づいて認証されます。
Oracle Access Managerの認証プロバイダをシングル・サインオン用のIDアサーション・プロバイダとして構成すると、Webリソースが保護されます。境界認証は、Web層のWebゲートと、保護されているWebLogicリソースにアクセスしようとしているユーザーのアイデンティティをアサートする適切なトークンによって実行されます。
すべてのアクセス・リクエストは、リバース・プロキシWebサーバーにルーティングされます。これらのリクエストは次にWebゲートでインターセプトされます。Oracle Access Manager内で構成されている認証スキームに基づいて、ユーザーに対して資格証明の提示が要求されます(フォームベースのログインをお薦めします)。
正常に認証されると、Webゲートがトークンを生成し、WebサーバーがリクエストをOracle WebLogic Serverに転送します。次に、Oracle WebLogic Serverによって、シングル・サインオンの検証のためにOracle Access ManagerのIDアサーション・プロバイダが起動されます。Oracle Access Managerは各種ヘッダー・トークンを渡すことができ、最も簡単なものはOracle Access Managerに認証されているユーザーIDが含まれているOAM_REMOTE_USERというHTTPヘッダーです。WebLogic Security Serviceがシングル・サインオンのためにOracle Access ManagerのIDアサーション・プロバイダを起動し、IDアサーション・プロバイダが受信リクエストからトークンを取得し、サブジェクトにWLSUserImpl
プリンシパルを移入します。シングル・サインオンのためのIDアサーション・プロバイダが、ユーザーがメンバーであるグループに対応したWLSGroupImpl
プリンシパルを追加します。次に、Oracle Access ManagerがCookieを検証します。
次の図に、Oracle Fusion Middlewareを使用したSSOのIDアサーション・プロバイダとしてOracle Access Managerの認証プロバイダが構成されている場合の、コンポーネントの配置と情報フローを示します。
Oracle Analytics ServerをSSO認証で動作させる方法
SSO認可が実装されると、プレゼンテーション・サービスは受信したWebリクエストがSSOで認証されたユーザーからのものであるかのように動作します。プレゼンテーション・サービスは次に、偽装機能を使用してBIサーバーへの接続を作成し、ユーザーの代理としてBIサーバーへの接続を確立します。ユーザーのパーソナライゼーションと、データレベル・セキュリティなどのアクセス制御は、この環境で保持されます。