SAML OpenSearch Dashboards の認証 - Amazon OpenSearch サービス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SAML OpenSearch Dashboards の認証

SAML OpenSearch Dashboards の認証を使用すると、既存の ID プロバイダーを使用して、 OpenSearch または Elasticsearch 6.7 以降を実行している Amazon OpenSearch Service ドメインの Dashboards にシングルサインオン (SSO) を提供できます。SAML 認証を使用するには、きめ細かなアクセスコントロール を有効にする必要があります。

Amazon Cognito または内部ユーザーデータベース を介して認証するのではなく、 OpenSearch Dashboards のSAML認証では、サードパーティーの ID プロバイダーを使用して Dashboards にログインし、きめ細かなアクセスコントロールを管理し、データを検索し、視覚化を構築できます。 OpenSearch サービスは、Okta、Keycloak、Active Directory フェデレーションサービス (ADFS)、Auth0、および などの SAML 2.0 標準を使用するプロバイダーをサポートします。 AWS IAM Identity Center.

SAML Dashboards の 認証は、ウェブブラウザから OpenSearch Dashboards にアクセスするためだけのものです。SAML 認証情報では、 OpenSearch または Dashboards に直接HTTPリクエストすることはできませんAPIs。

SAML 設定の概要

このドキュメントは、ユーザーに既存の ID プロバイダーがあり、そのプロバイダーについてある程度の知識があることを前提としています。正確なプロバイダーに対して詳細な設定手順を提供することはできません。これは、 OpenSearch サービスドメインに対してのみ行います。

OpenSearch Dashboards ログインフローは、次の 2 つの形式のいずれかになります。

  • サービスプロバイダー (SP) が開始されている: Dashboards に移動します (例えば、https://my-domain.us-east-1.es.amazonaws.com/_dashboards)。これにより、ログイン画面にリダイレクトされます。ログイン後、ID プロバイダーはお客様を Dashboards にリダイレクトします。

  • ID プロバイダー (IdP) が開始: ID プロバイダーに移動し、ログインして、アプリケーションディレクトリから OpenSearch Dashboards を選択します。

OpenSearch サービスにはURLs、SP 開始と IdP 開始の 2 つのシングルサインオン がありますが、必要なのは目的の OpenSearch Dashboards ログインフローに一致するものだけです。

使用する認証タイプにかかわらず、目標は ID プロバイダー経由でログインし、ユーザー名 (必須) とバックエンドロール (オプションですが推奨) を含むSAMLアサーションを受け取ることです。この情報により、きめ細かなアクセスコントロールでユーザーに許可を割り当てるSAMLことができます。外部 ID プロバイダーでは、バックエンドロールは通常「ロール」または「グループ」と呼ばれます。

考慮事項

SAML 認証を設定するときは、次の点を考慮してください。

  • IdP メタデータファイルのサイズのため、 を使用することを強くお勧めします。 AWS コンソールでSAML認証を設定します。

  • ドメインは、一度に 1 つの Dashboards 認証方法のみをサポートします。 OpenSearch Dashboards の Amazon Cognito 認証が有効になっている場合は、SAML認証を有効にする前に無効にする必要があります。

  • で Network Load Balancer を使用する場合はSAML、まずカスタムエンドポイントを作成する必要があります。詳細については、「Amazon OpenSearch サービスのカスタムエンドポイントの作成」を参照してください。

  • サービスコントロールポリシー (SCP) は、ID IAM以外の場合 (Amazon OpenSearch Serverless & SAMLや Amazon OpenSearch Service SAMLの基本的な内部ユーザー認証など) は適用または評価されません。

SAML VPCドメインの認証

SAML は、ID プロバイダーとサービスプロバイダー間の直接通信を必要としません。したがって、 OpenSearch ドメインがプライベート 内でホストされていてもVPC、ブラウザが OpenSearch クラスターと ID プロバイダーの両方と通信できるSAML限り、 を使用できます。ブラウザは、基本的にアイデンティティプロバイダーとサービスプロバイダーの仲介として機能します。SAML 認証フローを説明する便利な図については、Okta ドキュメント を参照してください。

ドメインアクセスポリシーの変更

SAML 認証を設定する前に、ドメインアクセスポリシーを更新して、SAMLユーザーがドメインにアクセスできるようにする必要があります。これを実行しない場合は、アクセス拒否エラーが表示されます。

次のドメインアクセスポリシーをお勧めします。これにより、ドメイン上のサブリソース (/*) にフルアクセスが付与されます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "es:ESHttp*", "Resource": "domain-arn/*" } ] }

ポリシーをより制限するには、ポリシーに IP アドレス条件を追加します。この条件は、指定された IP アドレス範囲またはサブネットのみへのアクセスを制限します。例えば、次のポリシーでは、192.0.2.0/24 サブネットからのアクセスのみを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "es:ESHttp*" ], "Condition": { "IpAddress": { "aws:SourceIp": [ "192.0.2.0/24" ] } }, "Resource": "domain-arn/*" } ] }
注記

オープンドメインアクセスポリシーでは、ドメインできめ細かなアクセスコントロールを有効にする必要があります。有効にしないと、次のエラーが表示されます。

To protect domains with public access, a restrictive policy or fine-grained access control is required.

マスターユーザーまたは内部ユーザーが堅牢なパスワードで設定されている場合、きめ細かなアクセスコントロールの使用中にポリシーを開いたままにしておくことは、セキュリティの観点からも許容できる場合があります。詳細については、「Amazon サービスのきめ細かいアクセス制御 OpenSearch 」を参照してください。

SP 開始認証または IdP 開始認証の設定

これらのステップでは、 OpenSearch Dashboards で SP 開始SAML認証または IdP 開始認証を使用して認証を有効にする方法について説明します。両方を有効にするために必要な追加のステップについては、「SP 開始認証と IdP 開始認証の両方を有効にする」を参照してください。

ステップ 1: SAML認証を有効にする

ドメインの作成時にSAML認証を有効にするか、アクション 、既存のドメインでセキュリティ設定を編集する を選択します。以下のステップは、どちらを選択するかに応じて若干異なります。

ドメイン設定内で、SAML OpenSearch Dashboards/Kibana の認証で、SAML認証を有効にする を選択します。

ステップ 2: アイデンティティプロバイダーを設定する

SAML 認証を設定するタイミングに応じて、次の手順を実行します。

新しいドメインを作成している場合

新しいドメインを作成中の場合、 OpenSearch サービスはまだサービスプロバイダーエンティティ ID または SSO を生成できませんURLs。ID プロバイダーは、SAML認証を適切に有効にするためにこれらの値を必要としますが、ドメインの作成後にのみ生成できます。ドメインの作成中にこの相互依存性を回避するには、IdP 設定に一時的な値を指定して必要なメタデータを生成し、ドメインがアクティブになった後でそれらを更新することができます。

カスタムエンドポイント を使用している場合は、 URLsがどのようになるかを推測できます。例えば、カスタムエンドポイントが の場合www.custom-endpoint.com、サービスプロバイダーエンティティ ID は www.custom-endpoint.com、IdP 開始SSOURLは www.custom-endpoint.com/_dashboards/_opendistro/_security/saml/acs/idpinitiated、SP 開始は SSOURLになりますwww.custom-endpoint.com/_dashboards/_opendistro/_security/saml/acs。ドメインを作成される前に、これらの値を使用して ID プロバイダーを設定できます。例については、次のセクションを参照ください。

注記

リクエストの がHTTPリクエストFQDNの とは異なるため、デュアルスタックエンドポイントでサインインすることはできませんFQDNSAML。デュアルスタックエンドポイントを使用してサインインする場合は、 OpenSearch管理者はカスタムエンドポイントを設定し、CNAME値をデュアルスタックエンドポイントに設定する必要があります。

カスタムエンドポイントを使用していない場合は、IdP に一時的な値を入力して必要なメタデータを生成し、ドメインがアクティブになった後でそれらを更新することができます。

例えば、Okta 内では、https://temp-endpoint.amazonaws.comシングルサインオンURLフィールドとオーディエンス URI (SP エンティティ ID) フィールドに入力できます。これにより、メタデータを生成できます。その後、ドメインがアクティブになったら、 OpenSearch サービスから正しい値を取得し、Okta で更新できます。手順については、ステップ 6: IdP を更新する URLs を参照してください。

既存のドメインを編集している場合

既存のドメインでSAML認証を有効にする場合は、サービスプロバイダーエンティティ ID と SSO のいずれかをコピーしますURLs。使用するガイダンスについてはURL、「」を参照してくださいSAML 設定の概要

Service provider entity ID and SSO URLs for SAML authentication configuration.

これらの値を使用して、アイデンティティプロバイダーを設定します。これはプロセスの最も複雑な部分ですが、残念ながら、用語とステップはプロバイダーによって大きく異なります。プロバイダーのドキュメントを参照してください。

例えば、Okta では、2.0 SAML ウェブアプリケーションを作成します。のシングルサインオンでURL、 SSO を指定しますURL。対象者 URI (SP エンティティ ID) には、SP エンティティ ID を指定します。

Okta には、ユーザーおよびバックエンドロールではなく、ユーザーとグループがあります。[Group Attribute Statements] (グループ属性ステートメント) では、role[Name] (名前) フィールドに、正規表現 .+[Filter] (フィルター) フィールドに追加することをお勧めします。このステートメントは、ユーザーが認証された後、SAMLアサーションの roleフィールドの下にすべてのユーザーグループを含めるように Okta ID プロバイダーに指示します。

IAM Identity Center では、SP エンティティ ID をアプリケーションSAMLオーディエンス として指定します。また、次の属性マッピングも指定する必要があります: Subject=${user:subject}:format=unspecifiedRole=${user:groups}:format=uri

Auth0 では、通常のウェブアプリケーションを作成し、2.0 SAML アドオンを有効にします。Keycloak では、クライアントを作成します。

ステップ 3: IdP メタデータをインポートする

ID プロバイダーを設定すると、IdP メタデータファイルが生成されます。このXMLファイルには、TLS証明書、シングルサインオンエンドポイント、ID プロバイダーのエンティティ ID など、プロバイダーに関する情報が含まれています。

IdP メタデータファイルの内容をコピーし、 OpenSearch サービスコンソールの IdP フィールドからメタデータに貼り付けます。または、XMLファイルからインポートを選択してファイルをアップロードします。メタデータファイルは、次のように表示されます。

<?xml version="1.0" encoding="UTF-8"?> <md:EntityDescriptor entityID="entity-id" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"> <md:IDPSSODescriptor WantAuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <md:KeyDescriptor use="signing"> <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:X509Data> <ds:X509Certificate>tls-certificate</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </md:KeyDescriptor> <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat> <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat> <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="idp-sso-url"/> <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="idp-sso-url"/> </md:IDPSSODescriptor> </md:EntityDescriptor>

ステップ 4: SAMLフィールドを設定する

IdP メタデータを入力したら、 OpenSearch サービスコンソールで次の追加フィールドを設定します。

  • [IdP entity ID] (IdP エンティティ ID) – メタデータファイルから entityID プロパティの値をコピーし、このフィールドにそれを貼り付けます。多くの ID プロバイダーは、この値も設定後の概要の一部として表示します。一部のプロバイダーは、それを「発行者」と呼んでいます。

  • SAML マスターユーザー名およびSAMLマスターバックエンドロール – 指定したユーザーおよび/またはバックエンドロールは、新しいマスターユーザー に相当するクラスターへの完全なアクセス許可を受け取りますが、これらのアクセス許可は OpenSearch Dashboards 内でのみ使用できます。

    例えば、Okta では、グループ admins に属しているユーザー jdoe がある可能性があります。SAML マスターユーザー名フィールドに を追加するjdoeと、そのユーザーのみが完全なアクセス許可を受け取ります。admins をSAMLマスターバックエンドロールフィールドに追加すると、adminsグループに属するすべてのユーザーが完全なアクセス許可を受け取ります。

    注記

    SAML アサーションの内容は、SAMLマスターユーザー名とSAMLマスターロールに使用する文字列と完全に一致する必要があります。一部の ID プロバイダーは、ユーザー名の前にプレフィックスを追加するため、 hard-to-diagnose 一致しない可能性があります。ID プロバイダーのユーザーインターフェイスには が表示される場合がありますがjdoe、SAMLアサーションには が含まれる場合がありますauth0|jdoe。必ずアSAMLサーションの文字列を使用してください。

多くの ID プロバイダーでは、設定プロセス中にサンプルのアサーションを表示できます。また、SAML-tracer などのツールは、実際のアサーションの内容を調べてトラブルシューティングするのに役立ちます。アサーションは次のようになります。

<?xml version="1.0" encoding="UTF-8"?> <saml2:Assertion ID="id67229299299259351343340162" IssueInstant="2020-09-22T22:03:08.633Z" Version="2.0" xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"> <saml2:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">idp-issuer</saml2:Issuer> <saml2:Subject> <saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">username</saml2:NameID> <saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml2:SubjectConfirmationData NotOnOrAfter="2020-09-22T22:08:08.816Z" Recipient="domain-endpoint/_dashboards/_opendistro/_security/saml/acs"/> </saml2:SubjectConfirmation> </saml2:Subject> <saml2:Conditions NotBefore="2020-09-22T21:58:08.816Z" NotOnOrAfter="2020-09-22T22:08:08.816Z"> <saml2:AudienceRestriction> <saml2:Audience>domain-endpoint</saml2:Audience> </saml2:AudienceRestriction> </saml2:Conditions> <saml2:AuthnStatement AuthnInstant="2020-09-22T19:54:37.274Z"> <saml2:AuthnContext> <saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml2:AuthnContextClassRef> </saml2:AuthnContext> </saml2:AuthnStatement> <saml2:AttributeStatement> <saml2:Attribute Name="role" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"> <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">GroupName Match Matches regex ".+" (case-sensitive) </saml2:AttributeValue> </saml2:Attribute> </saml2:AttributeStatement> </saml2:Assertion>

ステップ 5: (オプション) 追加設定を実行する

[Additional settings] (その他の設定) で、次のオプションフィールドを設定します。

  • サブジェクトキー – このフィールドを空のままにして、ユーザー名のSAMLアサーションの NameID要素を使用できます。アサーションでこの標準エレメントを使用せず、代わりにユーザーネームをカスタム属性として含める場合は、ここでその属性を指定します。

  • [Roles key] (ロールキー) – バックエンドロール (推奨) を使用する場合は、このフィールドでアサーションからの属性 (role または group など) を指定します。これは、SAML-tracer などのツールが役立つもう 1 つの状況です。

  • セッション有効期限 – デフォルトでは、 OpenSearch Dashboards は 24 時間後にユーザーをログアウトします。この値は、新しい値を指定することで、60 から 1,440 (24 時間) までの任意の数値に設定できます。

設定に問題がなければ、ドメインを保存します。

ステップ 6: IdP を更新する URLs

ドメイン の作成時にSAML認証を有効にした場合、XMLメタデータファイルを生成するために IdP URLs内で一時的な を指定する必要がありました。ドメインのステータスが に変わったらActive、正しい を取得しURLs、IdP を変更できます。

を取得するにはURLs、ドメインを選択し、アクション、セキュリティ設定の編集 を選択します。SAML OpenSearch Dashboards/Kibana の認証では、正しいサービスプロバイダーエンティティ ID と SSO を見つけることができますURLs。値をコピーし、それらを使用して ID プロバイダーを設定し、ステップ 2 でURLs指定した一時 を置き換えます。

ステップ 7: SAML ユーザーをロールにマッピングする

ドメインのステータスがアクティブで、IdP が正しく設定されると、 OpenSearch Dashboards に移動します。

  • SP 開始 を選択した場合はURL、 に移動しますdomain-endpoint/_dashboards。特定のテナントに直接ログインするには、 ?security_tenant=tenant-nameに を追加しますURL。

  • IdP 開始 を選択した場合はURL、ID プロバイダーのアプリケーションディレクトリに移動します。

いずれの場合も、SAMLマスターユーザーまたはSAMLマスターバックエンドロールに属するユーザーとしてログインします。ステップ 7 からの例を続けるには、jdoe、または admins グループのメンバーとしてログインします。

OpenSearch Dashboards がロードされたら、セキュリティ、ロール を選択します。次に、ロールをマッピングして、他のユーザーが OpenSearch Dashboards にアクセスできるようにします。

例えば、信頼できる同僚 jroeall_access および security_manager ロールにマッピングします。また、バックエンドロール analystsreadall および opensearch_dashboards_user ロールにマッピングすることもできます。

OpenSearch Dashboards APIではなく を使用する場合は、次のサンプルリクエストを参照してください。

PATCH _plugins/_security/api/rolesmapping [ { "op": "add", "path": "/security_manager", "value": { "users": ["master-user", "jdoe", "jroe"], "backend_roles": ["admins"] } }, { "op": "add", "path": "/all_access", "value": { "users": ["master-user", "jdoe", "jroe"], "backend_roles": ["admins"] } }, { "op": "add", "path": "/readall", "value": { "backend_roles": ["analysts"] } }, { "op": "add", "path": "/opensearch_dashboards_user", "value": { "backend_roles": ["analysts"] } } ]

SP 開始認証と IdP 開始認証両方の設定

SP 開始認証と IdP 開始認証の両方を設定する場合は、ID プロバイダーを通じて設定する必要があります。例えば、Okta では、次のステップを実行できます。

  1. SAML アプリケーション内で、一般的な SAML設定 に移動します。

  2. シングルサインオンURLの場合は、IdP が開始した SSO を指定しますURL。例えば、https://search-domain-hash/_dashboards/_opendistro/_security/saml/acs/idpinitiated と指定します。

  3. 有効にします。このアプリが他の SSO をリクエストURLsできるようにします。

  4. 「リクエスト可能SSOURLs」で、1 つ以上の SP 開始 SSO を追加しますURLs。例えば、https://search-domain-hash/_dashboards/_opendistro/_security/saml/acs と指定します。

SAML 認証の設定 (AWS CLI)

以下のようになります AWS CLI コマンドは、既存のドメインで OpenSearch Dashboards のSAML認証を有効にします。

aws opensearch update-domain-config \ --domain-name my-domain \ --advanced-security-options '{"SAMLOptions":{"Enabled":true,"MasterUserName":"my-idp-user","MasterBackendRole":"my-idp-group-or-role","Idp":{"EntityId":"entity-id","MetadataContent":"metadata-content-with-quotes-escaped"},"RolesKey":"optional-roles-key","SessionTimeoutMinutes":180,"SubjectKey":"optional-subject-key"}}'

メタデータ のすべての引用符と改行文字をエスケープする必要がありますXML。例えば、<KeyDescriptor use="signing"> および改行の代わりに <KeyDescriptor use=\"signing\">\n を使用します。の使用に関する詳細情報 AWS CLI、「」を参照してください。 AWS CLI コマンドリファレンス

SAML 認証の設定 (設定 API)

設定に対する次のリクエストは、既存のドメインで OpenSearch Dashboards のSAML認証APIを有効にします。

POST https://es.us-east-1.amazonaws.com/2021-01-01/opensearch/domain/my-domain/config { "AdvancedSecurityOptions": { "SAMLOptions": { "Enabled": true, "MasterUserName": "my-idp-user", "MasterBackendRole": "my-idp-group-or-role", "Idp": { "EntityId": "entity-id", "MetadataContent": "metadata-content-with-quotes-escaped" }, "RolesKey": "optional-roles-key", "SessionTimeoutMinutes": 180, "SubjectKey": "optional-subject-key" } } }

メタデータ のすべての引用符と改行文字をエスケープする必要がありますXML。例えば、<KeyDescriptor use="signing"> および改行の代わりに <KeyDescriptor use=\"signing\">\n を使用します。設定 の使用の詳細についてはAPI、OpenSearch 「サービスAPIリファレンス」を参照してください。

SAML トラブルシューティング

エラー 詳細

リクエスト: '/some/path' は使用できません。

ID プロバイダーに正しい SSO URL (ステップ 3) を提供したことを確認します。

を有効にするには、有効な ID プロバイダーメタデータドキュメントを指定してくださいSAML。

IdP メタデータファイルが 2.0 SAML 標準に準拠していません。検証ツールを使用してエラーをチェックします。

SAML 設定オプションはコンソールに表示されません。

最新のサービスソフトウェアに更新します。

SAML 設定エラー: SAML設定の取得中にエラーが発生しました。設定を確認してください。

この一般的なエラーは、さまざまな原因で発生することがあります。

  • ID プロバイダーに正しい SP エンティティ ID と SSO を指定したことを確認しますURL。

  • IdP メタデータファイルを再生成し、IdP エンティティ ID を確認します。に更新されたメタデータを追加する AWS console。

  • ドメインアクセスポリシーが OpenSearch Dashboards と へのアクセスを許可していることを確認します_plugins/_security/*。一般的に、きめ細かなアクセスコントロールを使用するドメインではオープンアクセスポリシーを使用することをお勧めします。

  • の設定手順については、ID プロバイダーのドキュメントを参照してくださいSAML。

ロールがありません: このユーザーには使用できるロールがありません。システム管理者に連絡してください。

正常に認証されましたが、ユーザー名とSAMLアサーションからのバックエンドロールはどのロールにもマッピングされないため、アクセス許可がありません。これらのマッピングでは、大文字と小文字が区別されます。

システム管理者は、SAML-tracer などのツールを使用してSAMLアサーションの内容を確認し、次のリクエストを使用してロールマッピングを確認できます。

GET _plugins/_security/api/rolesmapping

OpenSearch Dashboards にアクセスしようとすると、ブラウザは継続的にリダイレクトまたは HTTP 500 エラーを受信します。

これらのエラーは、SAMLアサーションに合計約 1,500 文字の多数のロールが含まれている場合に発生する可能性があります。例えば、平均の長さが 20 文字である 80 ロールを渡すと、ウェブブラウザの Cookie のサイズ制限を超える可能性があります。 OpenSearch バージョン 2.7 以降、SAMLアサーションは最大 5000 文字のロールをサポートします。

からログアウトすることはできませんADFS。

ADFS では、 OpenSearch サービスがサポートしていないすべてのログアウトリクエストに署名する必要があります。IdP メタデータファイル<SingleLogoutService />から を削除して、 OpenSearch サービスが独自の内部ログアウトメカニズムを使用するように強制します。

Could not find entity descriptor for __PATH__.

Service にメタデータで提供される IdP のエンティティ ID XML OpenSearch は、SAMLレスポンスのエンティティ ID とは異なります。これを修正するには、それらが一致していることを確認してください。ドメインで CW アプリケーションエラーログを有効にして、SAML統合問題をデバッグするためのエラーメッセージを見つけます。

Signature validation failed. SAML response rejected.

OpenSearch サービスは、メタデータ で提供される IdP の証明書SAMLを使用してレスポンスの署名を検証できませんXML。これは手動エラーであるか、または IdP が証明書をローテーションした可能性があります。を介して OpenSearch Service XMLに提供されるメタデータの IdP から最新の証明書を更新する AWS Management Console.

__PATH__ is not a valid audience for this response.

SAML レスポンスのオーディエンスフィールドがドメインエンドポイントと一致しません。このエラーを修正するには、ドメインエンドポイントと一致するように SP オーディエンスフィールドを更新します。カスタムエンドポイントを有効にしている場合は、オーディエンスフィールドがカスタムエンドポイントと一致する必要があります。ドメインで CW アプリケーションエラーログを有効にして、SAML統合問題をデバッグするためのエラーメッセージを見つけます。

ブラウザはレスポンスInvalid Request Idで HTTP 400 エラーを受け取ります。

このエラーは、通常、IdP を URL形式で開始して設定した場合に発生します<DashboardsURL>/_opendistro/_security/saml/acs。代わりに、 の形式を URLに設定します<DashboardsURL>/_opendistro/_security/saml/acs/idpinitiated

レスポンスは __PATH__ の代わりに __PATH__ で受信されました。

SAML レスポンスの送信先フィールドが、次のいずれかのURL形式と一致しません。

  • <DashboardsURL>/_opendistro/_security/saml/acs

  • <DashboardsURL>/_opendistro/_security/saml/acs/idpinitiated.

使用するログインフロー (SP 開始または IdP 開始) に応じて、 のいずれかに一致する送信先フィールドに を入力します OpenSearch URLs。

レスポンスには InResponseTo 属性がありますが、InResponseTo 属性は想定されていません。

SP 開始ログインフローURLに IdP 開始 を使用しています。URL 代わりに SP 開始 を使用してください。

SAML 認証の無効化

OpenSearch Dashboards のSAML認証を無効にするには (コンソール)
  1. ドメインを選択し、[アクション] から [セキュリティ設定の編集] を選択します。

  2. SAML 「認証を有効にする」のチェックを解除します。

  3. [Save changes] (変更の保存) をクリックします。

  4. ドメインの処理が終了したら、次のリクエストを用いてきめ細かなアクセスコントロールのロールマッピングを確認します。

    GET _plugins/_security/api/rolesmapping

    Dashboards のSAML認証を無効にしても、SAMLマスターユーザー名やSAMLマスターバックエンドロールのマッピングは削除されません。これらのマッピングを削除する場合は、内部ユーザーデータベース (有効になっている場合) を使用して Dashboards にログインするかAPI、 を使用してマッピングを削除します。

    PUT _plugins/_security/api/rolesmapping/all_access { "users": [ "master-user" ] }