Yellowfinの管理サービスは、基本的に、Yellowfinをすべてのサードパーティ製認証プロセスに統合することができます。主に、認証bridgeは、Yellowfinをスタンドアロンアプリケーション、または完全統合アプリケーションとして実装する場合に使用されますが、サードパーティ製認証プロセスに統合する場合は、カスタムbridgeを作成しなくてはいけません。このbridgeは、サードパーティ製ソースからのユーザーログイン情報と、Yellowfinシステム内のユーザー情報を一致させます。通常、認証ソースはユーザー名を提供しますが、こちらではユーザーを認証するために、パスワードやその他ユーザー属性が送信されることもあります。
既存のYellowfinユーザーとの一致が確認されると、bridgeはシングルサインオン(SSO)を実行することで、ユーザーをYellowfinにログインさせます。これは、LOGINUSER webサービス(ユーザーログインにパスワードを要求します)、またはLOGINUSERNOPASSWORDサービス(ユーザー名のみでユーザーのログインを実行する)のいずれかを使用して実行することができます。サードパーティ製ソースからの利用可能なパスワードの取得は極めて難しいため、後者が理想的な方法です。
ユーザーのログイン可否を定義する際に、bridgeを使用しなくても構いません。bridgeがユーザー名を受信する、ということは、対象のユーザーが既に有効であることを意味します。しかし、ユーザーの認証有無をサードパーティ製ソースに確認する責任を負う場合もあります。
ユーザーがYellowfinに存在しない場合は、ユーザーの自動作成をしなくてはいけない場合があります。これには、サードパーティ製アプリケーションから取得する必要のある、電子メールアドレスや、ユーザーの姓名など、追加情報が必要になることもあります。bridgeは、GETUSER、またはVALIDATEUSER webサービス関数を使用することで、ユーザーがYellowfinに存在するかを定義することができ、存在しない場合は、ADDUSER webサービスを呼び出すことで、ユーザーを作成します。複数のユーザーを一度に作成する場合は、ADDUSERS webサービス関数を呼び出します。
bridgeプロセスの一部は、ログインプロセスの一環として、ユーザーのYellowfinロールやグループメンバーシップを変更することができます。Yellowfinが、異なるコンテンツへのアクセスを変更する可能性のある製品に統合されている場合、ログインプロセス中にグループメンバーシップを更新するように要求される可能性があります。これには、ユーザーをどのグループに追加、または削除する必要があるのかを確認するために、サードパーティ製ソースからの情報が必要になります。UPDATEUSER webサービスの呼び出しは、ユーザーロールの変更に、INCLUDEUSERINGROUP、またはEXCLUDEUSERFROMGROUPの呼び出しは、ユーザーがアクセスできるYellwfinのコンテンツを定義するグループへの追加、削除のために使用されます。
bridgeは、様々な方法で実装することができます。以下はその一例です。
bridgeの最適な実装場所は、環境と含まれるコンポーネントに応じて異なります。
Yellowfinのコンテナ内に実装する場合は、様々な実装方法が、異なる機能の取り込みを可能にします。JSPとサーブレットは、ユーザーが特定のURLに直接誘導されるようにコードを実装することができますが、フィルターは、Yellowfinシステムから要求された任意のURLの認証を確認します。
こちらは、Yellowfinの認証bridgeに必要となる基礎的なプロセスです。
注意:認証プロバイダーがSAMLをサポートする場合は、Yellowfin SAML bridgeを使用して、SSOを実行することもできます。
こちらのサービスは、Yellowfinに接続し、指定されたユーザーのログオントークンを取得します。ユーザーは、ユーザーID(ログオンID方法に応じて、電子メールアドレス、または他のタイプのIDになります)を使用して指定されます。このトークンがYellowfinのログオンURLとともに渡されると、認証されたユーザーのログイン画面を無効にし、即座にセッションが開始されます。 こちらの関数は、Yellowfinのヘッダーを非表示にしたり、ログイン後に特定のレポートやダッシュボードへ直接移動するなど、追加のタスクを実行するための様々なログインセッションパラメーターを渡すためにも使用されます。これらのログインセッションオプションについて、より詳細な情報は、こちらの項目を参照してください。
リクエスト要素LOGINUSER関数は、指定されたユーザーのYellowfinへのシングルサインオンを実行します。以下の要素は、こちらのリクエストとともに渡されます。 注意:AdministrationPersonオブジェクトのコンテンツは、ログインするユーザーを定義するために使用されます。
以下は、こちらの関数のために、「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。
以下のSOAPの例は、この呼び出しに渡すことのできるパラメーターを表示しています。
応答要素返される応答には、これらのパラメーターが含まれます。
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
ログイントークンを使用したYellowfinのリダイレクトwebサービスの呼び出し(AdministrationResponseのコンテンツ。LoginSessionId)から受信したトークンを使用することで、ユーザーをURLへ誘導することができます。
こちらのURLはYellowfinの認証画面をバイパスすることで、ユーザーをYellowfinへ直接誘導します。
JavaScript APIを使用したトークンの使用SSOトークンは、組み込まれたJavaScript APIウィジェットとともに使用することができます。トークンは、スクリプトレットURLへ以下のように追加されます。
ログインセッションオプションこのシングルサインオンリクエストにより作成されたセッションの機能のみを切り替える変数、またはスイッチを渡すことができます。これらのオプションは、AdministrationRequest内のパラメーター属性を介して渡すか、リダイレクトURLへ付加することで有効にすることができます。より詳細な情報は、こちらを参照してください。
完成例以下の、LOGINUSERの例を使用することができます。こちらを使用するには、以下の手順に従います。
|
LOGINUSERNOPASSWORD webサービスは、ユーザー名のみを使用して、ユーザーをログインさせることができます。
関数の有効化こちらの関数を有効化するには、Yellowfinデータベースの構成テーブルに、追加のパラメーターを設定しなくてはいけません。
注意:データベースへの変更を反映するために、Yellowfinを再起動しなくてはいけない場合があります。 こちらの設定がYellowfinのデータベースに追加されなかった場合は、webサービスエラー26:UNSECURE_LOGIN_NOT_ENABLEDが発生します。
こちらの呼び出しのパラメーターオプションは、LOGINUSERのものと同様です。例:
|