埋め込み認証プロバイダの設定
項目一覧
Atlas Charts は、埋め込み SDK によって渡されたトークンを使用して、認証を必要とする埋め込みチャートまたはダッシュボードを表示するユーザーを認証します。
Chartsは、次のいずれのシナリオでもチャートまたはダッシュボードをレンダリングしません。
トークンの詳細が指定した条件と一致しません。
トークンが無効です。
トークンが存在しません。
Considerations
リンクされた Charts インスタンスの埋め込み認証プロバイダを構成するには、Atlas プロジェクト オーナーである必要があります。
Charts は、次の認証プロバイダをサポートしています。
Google
カスタム JSON web token
Atlas App Services プロバイダー
Charts では、次の場合、App Services プロバイダーからのトークンが有効であると見なされます。
構文上で有効なJSON web tokenであること。
関連する認証局によって発行された場合
プロバイダーが受け入れるように構成した App Services App ID と一致します。
Google プロバイダー
Charts では、次の場合、Google プロバイダーからのトークンが有効であると見なされます。
構文上で有効なJSON web tokenであること。
関連する認証局によって発行された場合
受け入れるようにプロバイダーを設定した Google クライアント ID と一致します。
JSON web tokenプロバイダー
Chartsは、次の場合にJSON web tokenプロバイダーからのトークンが有効であると見なします。
将来の日時を指定した有効期限クレームを含みます。
注意
アプリケーションは、有効期限が切れる前にリフレッシュ トークンを処理する必要があります。
過去の日時を指定して、その時点で発行されたクレームを含みます。
Have a token lifetime of less than or equal to 24 hours. トークンの有効期間は、発行された時間のクレームと有効期限のクレームの差です。
例
Charts は、1 年間のトークン有効期限が長すぎるため、次のクレームを含むトークンを拒否します。
{ "iat": "1587497399", "exp": "1617305399" } Charts は、次のクレームを含むトークンを受け入れることができます。トークンの有効期限は24時間であるためです。
{ "iat": "1585769399", "exp": "1586002999" } HS256
またはRS256
署名アルゴリズムのいずれかを使用して署名されている。カスタムJSON web token認証プロバイダーを設定するときに提供したシークレットによって検証できるキーで署名されています。
該当する場合は、プロバイダーを設定するときに指定したものと一致するオーディエンス クレームを含めます。
手順
認証プロバイダの表示
設定した埋め込み認証プロバイダを表示するには:
Authentication SettingsビューにGoします。
注意
ページにアクセスするには、 プロジェクト オーナーである必要があります。Authentication Settings管理者以外のユーザーでも埋め込みチャートは引き続き使用できますが、プロジェクト オーナーからキーを取得する必要があります。
[Authentication Settings] タブをクリックします。
[ Authentication Settings(認証設定) ] タブが表示されます。
認証プロバイダの追加
埋め込み認証プロバイダを追加するには、次の手順に従います。
Authentication SettingsビューにGoします。
注意
Authentication Settingsページにアクセスするには、プロジェクト オーナーである必要があります。 管理者以外のユーザーでも埋め込みチャートは引き続き使用できますが、プロジェクト オーナーからキーを取得する必要があります。
[Authentication Settings] タブをクリックします。
[ Authentication Settings(認証設定) ] タブが表示されます。
認証プロバイダを追加します。
Authentication providersセクションから [ Add ] をクリックします。
Nameフィールドに、プロバイダーのわかりやすい名前を入力します。
Providerリストから、追加するプロバイダーのタイプを選択します。
プロバイダーからのトークンを検証するために Charts を設定します。
入力する必要がある値は、選択したプロバイダーによって異なります。
プロバイダーフィールドカスタムJSON web token次の値を指定します。
フィールド値署名アルゴリズム署名キーJSON web token署名を検証するために使用される秘密キーまたはキー。 トークンが署名されていない場合、Charts はそれらを無効と見なします。 誤ったキーを指定すると、Charts はトークン署名を検証できず、それらが無効であると見なします。
指定する必要がある値は、 Signing Algorithmによって異なります。
HS256
: JSON web tokenの署名に使用した秘密キーを入力します。RS256
: JWK or JWKS URLまたはPEM Public Keyのいずれかを選択します。JWK or JWKS URLを選択すると、Charts は JWK からキーを検索します 指定された URL 上の または JWKS ファイル。次に、Charts はそのキーを使用して JSON web token を検証します。 ファイルに複数のキーがある場合、Charts は一致するまで各キーを試行します。 JWK または JWKS ファイルを含む URL を入力します。
PEM Public Keyを選択した場合、Charts は指定された公開鍵を使用して JSON web token を検証します。 JSON web tokenの署名に使用されたキーペアの公開キーを入力します。 公開鍵は PEM 形式 である必要があります 次の例に示すように、
-----BEGIN CERTIFICATE----- MIIDfjCCAmagAwIBAgIBBzANBgkqhkiG9w0BAQUFADB0MRcwFQYDVQQDEw5LZXJu ZWwgVGVzdCBDQTEPMA0GA1UECxMGS2VybmVsMRAwDgYDVQQKEwdNb25nb0RCMRYw FAYDVQQHEw1OZXcgWW9yayBDaXR5MREwDwYDVQQIEwhOZXcgWW9yazELMAkGA1UE BhMCVVMwHhcNMTQwNzE3MTYwMDAwWhcNMjAwNzE3MTYwMDAwWjBsMQ8wDQYDVQQD EwZzZXJ2ZXIxDzANBgNVBAsTBktlcm5lbDEQMA4GA1UEChMHTW9uZ29EQjEWMBQG A1UEBxMNTmV3IFlvcmsgQ2l0eTERMA8GA1UECBMITmV3IFlvcmsxCzAJBgNVBAYT AlVTMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp76KJeDczBqjSPJj 5f8DHdtrWpQDK9AWNDlslWpi6+pL8hMqwbX0D7hC2r3kAgccMyFoNIudPqIXfXVd 1LOh6vyY+jveRvqjKW/UZVzZeiL4Gy4bhke6R8JRC3O5aMKIAbaiQUAI1Nd8LxIt LGvH+ia/DFza1whgB8ym/uzVQB6igOifJ1qHWJbTtIhDKaW8gvjOhv5R3jzjfLEb R9r5Q0ZyE0lrO27kTkqgBnHKPmu54GSzU/r0HM3B+Sc/6UN+xNhNbuR+LZ+EvJHm r4de8jhW8wivmjTIvte33jlLibQ5nYIHrlpDLEwlzvDGaIio+OfWcgs2WuPk98MU tht0IQIDAQABoyMwITAfBgNVHREEGDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTAN BgkqhkiG9w0BAQUFAAOCAQEANoYxvVFsIol09BQA0fwryAye/Z4dYItvKhmwB9VS t99DsmJcyx0P5meB3Ed8SnwkD0NGCm5TkUY/YLacPP9uJ4SkbPkNZ1fRISyShCCn SGgQUJWHbCbcIEj+vssFb91c5RFJbvnenDkQokRvD2VJWspwioeLzuwtARUoMH3Y qg0k0Mn7Bx1bW1Y6xQJHeVlnZtzxfeueoFO55ZRkZ0ceAD/q7q1ohTXi0vMydYgu 1CB6VkDuibGlv56NdjbttPJm2iQoPaez8tZGpBo76N/Z1ydan0ow2pVjDXVOR84Y 2HSZgbHOGBiycNw2W3vfw7uK0OmiPRTFpJCmewDjYwZ/6w== -----END CERTIFICATE-----
オーディエンス(任意)オーディエンス クレーム JSON web tokenChartsAtlas が有効と見なすには、 に含める必要があります。Google[ Client IDフィールドに、アプリケーションの Google クライアント ID を次の形式で入力します。
<prefix>.apps.googleusercontent.com Atlas App Services次の値を指定します。
フィールド値プロジェクトアプリ サービスを含む プロジェクト 。App Serviceユーザー トークンを発行している App ServicesAtlas App Services を使用してデータを取得する(任意)を切り替えて、Charts が App Services からユーザー データとルールを取得できるようにします。
有効にすると、Charts はApp Service Nameフィールドで指定したサービスからデータを取得します。
このオプションを有効にすると、特定のコレクションまたはユーザーに対して Atlas App Services で Charts が表示するデータを制御するためのルールを定義できます。
詳細については、App Services ドキュメントの「受信クエリのフィルタリング」を参照してください。
アプリ サービス名Charts がチャートのデータを取得するために使用するアプリ サービス内のサービスの名前。 たとえば、mongodb-atlas
。[Save] をクリックします。
認証プロバイダの変更
埋め込み認証プロバイダを変更するには、以下の手順を行います。
Authentication SettingsビューにGoします。
注意
Authentication Settingsページにアクセスするには、プロジェクト オーナーである必要があります。 管理者以外のユーザーでも埋め込みチャートは引き続き使用できますが、プロジェクト オーナーからキーを取得する必要があります。
[Authentication Settings] タブをクリックします。
[ Authentication Settings(認証設定) ] タブが表示されます。
埋め込みプロバイダーを編集します。
Embedding providersセクションから、変更するプロバイダーの横にある [ Edit ] をクリックします。
Charts がプロバイダーからのトークンを検証するために使用する 値を変更します。
構成したプロバイダー タイプで変更できる値については、「 認証プロバイダの追加」を参照してください。
[Save] をクリックします。
認証プロバイダを削除する
埋め込み認証プロバイダを削除するには、次の手順に従います。
Authentication SettingsビューにGoします。
注意
Authentication Settingsページにアクセスするには、プロジェクト オーナーである必要があります。 管理者以外のユーザーでも埋め込みチャートは引き続き使用できますが、プロジェクト オーナーからキーを取得する必要があります。
[Authentication Settings] タブをクリックします。
[ Authentication Settings(認証設定) ] タブが表示されます。
重要
プロバイダーを削除すると、削除されたプロバイダーが認証したすべての埋め込みチャートがレンダリングされなくなります。
埋め込みキーの生成
注意
このセクションは、プロジェクト オーナーのロールを持つユーザーのみが表示できます。
重要
埋め込みキーは非推奨であり、将来のリリースで削除される予定です。 代わりに、埋め込み認証プロバイダと埋め込み SDKを使用してください。
埋め込みキーは、 Verified Signature`モードを使用して埋め込まれたチャートのデジタル署名の生成と検証に必要です。
新しい埋め込みキーを生成するには、ページの右側にある [ Generate New Key ] ボタンをクリックします。
警告
新しいキーを生成すると、以前のキーは無効になります。 古いキーを使用している既存の埋め込みチャートがすべて新しいキーを使用するように更新されていることを確認します。