...
- レフトサイドナビゲーションから、管理>システム構成を選択します。
- 認証をクリックして、認証方法項目を展開します。
- JWTシングルサインオンのトグルを有効にします。
新しくJWT設定項目が表示されます。こちらから、JWT SSOに関連するすべての設定を行います。 - JWT設定項目を展開します。各オプションの詳細は、以下の表に示します。
...
JWT SSO データベースオプションの設定
YellowfinのJWT設定項目には、JWT SSOを実装するための様々な設定が含まれており、最大限の柔軟性を提供します。次の表および手順に示すように、必要最小限の情報を含めるか、必要に応じてトークンをカスタマイズし、追加の詳細情報を含めるかを選択できます。
JWT設定項目を展開します。各オプションの詳細は、以下の表に示します。
パラメーター名 | パラメーターの説明 | 必須項目かどうか | デフォルト設定 | |
JWTトークンの配信方法 | JWTトークンの配信方法を、URLパラメーター、またはCookieから選択します。 Cookieを選択した場合、JWTトークンは、JWT Cookie名項目のCookie名から取得されます。 | No | URLパラメーター | |
JWT Cookie名 | この項目は、JWTトークンの配信方法で、Cookieを選択すると表示されます。このパラメーターは、使用されるCookie名を定義します。 | No | なし | |
JWT検証キー | JWTトークンの署名を検証するための検証キーを入力します。これはプレーンテキストです。バイナリキーは、Base 64でエンコードすることで渡すことができます。この場合、バイナリ検証キー項目はプレーンテキストに設定する必要があります。 これを使用する場合は、検証キーを入力した後でパスワードを更新ボタンをクリックしてください。 | Yes | なし | |
バイナリ検証キー | デフォルトでは、このパラメーターはプレーンテキストに設定されています。セキュリティを強化するには、Base64エンコードを選択します。 | No | プレーンテキスト | |
JWTの署名アルゴリズム | デフォルトでは、HMAC256に設定されています。選択肢は、以下の通りです。
| デフォルトでは、HMAC256に設定されています。その他のオプションは以下の通りです HMAC512 , RSA256, RSA384, RSA512, ECD256, ECD384, ECD512 | No | HMAC256 |
JWT発行者 | このパラメーターは、JWTトークン内の発行者属性を検証します。これを設定した場合、この項目の値は、JWTトークンの発行者項目と比較され、一致しない場合は、トークン検証が失敗します。 | No | なし | |
JWT User Id Attribute | このパラメーターは、Yellowfin UserIdを提供します。 | Yes | なし | |
JWTクライアント参照ID Attribute | このパラメーターは、ユーザーが属するクライアント組織のクライアント参照IDの場所を提供します。通常、関連するクライアント組織を持たないYellowfin インスタンスの場合は、「1」に設定されます。 | No | なし | |
SSOエントリーオプション | このパラメーターを使用すると、SSO web サービスのカスタムパラメーターオプションを介して渡すことができるカスタムデータを、JWT SSOプロセスにより作成されたセッションに渡すことができます。 これは属性ベースではないため、すべてのユーザーに適用されます。このパラメータは、JWT SSOプロセスで作成されたセッションに渡されるコンマ区切りのWebサービスセッションパラメータ値を保持するJWT属性を取ります。 より詳細な情報は、カスタムパラメーターおよびパラメーターを使用したデータのカスタマイズ項目を参照してください。 | No | なし | |
SSOカスタムセッション変数Attribute | このパラメーターを使用すると、SSO web サービス呼び出しのパラメーターをオプションを介して渡すことができるオプションを、JWT SSOプロセスにより作成されたセッションに渡すことができます。 これは属性ベースなので、個別のユーザーに適用できます。 より詳細な情報は、カスタムパラメーターおよびパラメーターを使用したデータのカスタマイズ項目を参照してください。 | No | なし | |
JWTオンボーディング | このトグルを有効にすると、新規ユーザーが存在しない場合に、最初のログイン試行時にそのユーザーをプロビジョニングできます。 | No | Off |
...
- お好みのJWT トークンクリエイターへ移動します(今回の例では、 https://jwt.io/を使用しています)
- 最低限として、右側のPayload項目にユーザー名を追加します。
これは、YellowfinのJWT User Id Attribute項目に追加した内容と一致しなくてはいけません。 - JWT検証キー項目で検証キーを使用している場合は、右下のsignature項目内のテキスト項目に同じキーを入力します。
参考として、左側のカラーコーディングは、JWTトークンがどのように作成されるかを示しています。 - 左側のエンコードされたトークンをコピーします。
- Yellowfin URLの最後に、JWTトークンログインおよびクエリー文字列を追加します。
JWTLogin.i4?jwtToken= - クエリー文字列の最後に、エンコードされたトークンを貼り付けます。
JWT payloadで指定したユーザーが、自動的にログインします。
...
SSO web サービスの呼び出しで、カスタムパラメーターおよびパラメーターオプションを既に利用している場合は、SSOエントリーオプションおよびSSOカスタムセッション変数Attribute項目を使用して、これらをJWTトークンに追加することもできます。
...
SSOエントリーオプション属性
SSOエントリーオプション項目を使用することで、SSO SSOエントリーオプション属性を使用することで、SSO web サービスのカスタムパラメーターオプションを介して渡すことができるカスタムデータを、JWT サービスのカスタムパラメーターオプションを介して渡すことができるユーザーごとのカスタムデータを、JWT SSOプロセスにより作成されたセッションに渡すことができます。これは属性ベースではないため、すべてのユーザーに適用されます。
SSOエントリーオプションの属性フィールドでは、JWTシングルサインオンを使用する際に、カスタムセッション変数をセッションごとに設定することができます。この属性には、JWT SSOプロセスで作成されたセッションに適用されるWebサービスのSSOセッションオプションを含めることができます。
例えば、ログイン時にすべてのユーザーがお気に入りに登録したレポートやダッシュボード、ストーリーなどを表示できるようにする場合は、TIMELINEおよびDISABLEHEADERパラメーター(または、ログインセッションオプションの定義に記載されているその他のパラメーター)を使用できます。以下の例では、これらを使用します。
- YellowfinのJWT設定を展開し、SSOエントリーオプション項目を表示します。YellowfinのJWT設定を展開し、SSOエントリーオプション属性項目を表示します。
- 使用するパラメーターをカンマ区切りで入力します。
以下の例では、ENTRY=TIMELINE,DISABLEHEADER=TRUEを使用します。
JWT属性の名前を入力します。 - 設定を保存し、変更内容を保存します。
...