設定 OpenSearch Dashboards 的 Amazon Cognito 身分驗證 - Amazon OpenSearch Service

設定 OpenSearch Dashboards 的 Amazon Cognito 身分驗證

您可以使用 Amazon Cognito 進行身分驗證並保護 OpenSearch Dashboards 的 Amazon OpenSearch Service 預設安裝。Amazon Cognito 身分驗證是可選的,並僅適用於使用 OpenSearch 或 Elasticsearch 5.1 或更高版本的網域。如果您不設定 Amazon Cognito 身分驗證,您仍然可以使用以 IP 為基礎的存取政策代理伺服器、HTTP 基本身分驗證或 SAML 來保護 Dashboards。

大部分身分驗證程序發生在 Amazon Cognito 中,但本節提供設定 Amazon Cognito 資源以使用 OpenSearch Service 網域的準則和要求。標準定價適用於所有 Amazon Cognito 資源。

提示

第一次設定網域以便對 Dashboards 使用 Amazon Cognito 身分驗證時,我們建議您使用主控台。Amazon Cognito 資源完全可自訂,而主控台可協助您識別和了解重要的功能。

先決條件

您必須滿足幾個先決條件,之後您才能夠為 OpenSearch Dashboards 設定 Amazon Cognito 身分驗證。OpenSearch Service 主控台可協助簡化這些資源的建立,但了解每個資源的目的有助於進行設定和故障診斷。針對 Dashboards 的 Amazon Cognito 身分驗證需要下列資源:

  • Amazon Cognito 使用者集區

  • Amazon Cognito 身分集區

  • 連接 AmazonOpenSearchServiceCognitoAccess 政策的 IAM 角色 (CognitoAccessForAmazonOpenSearch)

注意

使用者集區和身分集區必須在相同的 AWS 區域。您可以使用相同的使用者集區、身分集區和 IAM 角色,將 Dashboards 的 Amazon Cognito 身分驗證新增到多個 OpenSearch Service 網域。如需進一步了解,請參閱 限制

關於使用者集區

使用者集區有兩個主要功能:建立和管理使用者目錄,並讓使用者註冊和登入。如需建立使用者集區的說明,請參閱 Amazon Cognito 開發人員指南中的建立使用者集區

當您建立使用者集區以與 OpenSearch Service 搭配使用時,請考慮以下事項:

  • 您的 Amazon Cognito 使用者集區必須擁有網域名稱。OpenSearch Service 使用此網域名稱將使用者重新引導至存取 Dashboards 的登入頁面。除了網域名稱,使用者集區不需要任何非預設組態。

  • 您必須指定集區所需的標準屬性 -​ 例如名稱、出生日期、電子郵件地址和電話號碼等屬性。在您建立使用者集區之後您無法變更這些屬性,因此請選擇目前對您重要的屬性。

  • 建立您的使用者集區時,選擇使用者是否可以建立自己的帳戶、帳戶的最低密碼強度,以及是否啟用多重要素驗證。如果您計劃使用外部身分供應商,這些設定是無關緊要的。通常,您可以讓使用者集區做為身分供應商並且啟用外部身分供應商,但大多數使用者偏好非此即彼。

使用者集區 ID 採用 region_ID 格式。如果您計劃使用 AWS CLI 或 AWS 開發套件來設定 OpenSearch Service,請記下該 ID。

關於身分集區

身分集區可讓您在使用者登入後將臨時受限的許可角色指派給使用者。如需有關建立身分集區的說明,請參閱 Amazon Cognito 開發人員指南中的身分集區。當您建立身分集區以與 OpenSearch Service 搭配使用時,請考慮以下事項:

  • 如果您使用 Amazon Cognito 主控台,您必須選擇 Enable access to unauthenticated identities (允許存取未經驗證的身分) 核取方塊,以建立身分集區。在您建立身分集區並設定 OpenSearch Service 網域之後,Amazon Cognito 會停用此設定。

  • 您不需要新增外部身分供應商到身分集區。當您設定 OpenSearch Service 以使用 Amazon Cognito 身分驗證時,它會設定身分集區以使用您剛建立的使用者集區。

  • 建立身分集區之後,您必須選擇未經授權和經過授權的 IAM 角色。這些角色指定使用者登入前後的存取政策。如果您使用 Amazon Cognito 主控台,它可為您建立這些角色。在您建立經過授權的角色後,請記下採用 arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role 格式的 ARN。

身分集區 ID 採用 region:ID-ID-ID-ID-ID 格式。如果您計劃使用 AWS CLI 或 AWS 開發套件來設定 OpenSearch Service,請記下該 ID。

關於 CognitoAccessForAmazonOpenSearch 角色

OpenSearch Service 需要許可才能設定 Amazon Cognito 使用者集區和身分集區,並使用它們來進行身分驗證。您可以使用 AmazonOpenSearchServiceCognitoAccess,這是一個用於此目的之 AWS 受管政策。AmazonESCognitoAccess 是一個舊式政策,當 Amazon Elasticsearch Service 重新命名為 Amazon OpenSearch Service 時已由 AmazonOpenSearchServiceCognitoAccess 取代。這兩個政策提供啟用 Cognito 身分驗證所必需的最低 Amazon Cognito 許可。如需了解政策 JSON,請參閱 IAM 主控台

如果您使用主控台來建立或設定 OpenSearch Service 網域,它會為您建立 IAM 角色,然後將 AmazonOpenSearchServiceCognitoAccess 政策 (或者,若為 Elasticsearch 網域,則為 AmazonESCognitoAccess 政策) 連接到角色。此角色的預設名稱為 CognitoAccessForAmazonOpenSearch

角色許可政策 AmazonOpenSearchServiceCognitoAccessAmazonESCognitoAccess 均允許 OpenSearch Service 在所有身分識別和使用者集區上完成下列動作:

  • 動作:cognito-idp:DescribeUserPool

  • 動作:cognito-idp:CreateUserPoolClient

  • 動作:cognito-idp:DeleteUserPoolClient

  • 動作:cognito-idp:UpdateUserPoolClient

  • 動作:cognito-idp:DescribeUserPoolClient

  • 動作:cognito-idp:AdminInitiateAuth

  • 動作:cognito-idp:AdminUserGlobalSignOut

  • 動作:cognito-idp:ListUserPoolClients -

  • 動作:cognito-identity:DescribeIdentityPool

  • 動作:cognito-identity:SetIdentityPoolRoles

  • 動作:cognito-identity:GetIdentityPoolRoles

如果您使用 AWS CLI 或其中一個 AWS 開發套件,您必須建立自己的角色,連接政策,並在設定 OpenSearch Service 網域時為此角色指定 ARN。角色必須具有下列信任關係:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "es.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

如需說明,請參閱 IAM 使用者指南中的建立角色以委派許可給 AWS 服務連接及分開 IAM 政策

設定 OpenSearch Service 網域

在完成先決條件之後,您可以設定 OpenSearch Service 網域以使用適用於 Dashboards 的 Amazon Cognito。

注意

並非所有 AWS 區域 皆可使用 Amazon Cognito。如需支援區域的清單,請參閱 AWS 區域 和節點。您不需要對用於 OpenSearch Service 的 Amazon Cognito 使用相同區域。

設定 Amazon Cognito 身分驗證 (主控台)

由於主控台會為您建立 CognitoAccessForAmazonOpenSearch 角色,因此主控台可提供最簡單的組態體驗。除了標準 OpenSearch Service 許可外,您還需要以下一組許可,才能使用主控台來建立網域,該網域對 OpenSearch 儀表板使用 Amazon Cognito 身分驗證。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

如需有關將許可新增至身分 (使用者、使用者群組或角色) 的說明,請參閲新增 IAM 身分許可 (主控台)

如果 CognitoAccessForAmazonOpenSearch 已存在,您需要的許可便會更少:

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

若要設定 Dashboards 的 Amazon Cognito 身分驗證 (主控台)

  1. 前往 https://aws.amazon.com,然後選擇 Sign In to the Console (登入主控台)

  2. Analytics (分析) 下,選擇 Amazon OpenSearch Service

  3. Domains (網域) 下,選取您要設定的網域。

  4. 選擇 Actions (動作)、Edit security configuration (編輯安全組態)。

  5. 選擇 Enable Amazon Cognito authentication (啟用 Amazon Cognito 身分驗證)。

  6. 對於 Region (區域),選擇包含您的 Amazon Cognito 使用者集區與身分集區的區域。

  7. 對於 Cognito user pool (Cognito 使用者集區),選擇使用者集區或建立集區。如需準則,請參閱關於使用者集區

  8. 對於 Cognito identity pool (Cognito 身分集區),選擇身分集區或建立集區。如需準則,請參閱關於身分集區

    注意

    Create user pool (建立使用者集區) 和 Create identity pool (建立身分集區) 連結會將您導向到 Amazon Cognito 主控台,並要求您手動建立這些資源。此程序不是自動的。如需進一步了解,請參閱 先決條件

  9. 對於 IAM role name (IAM 角色名稱),使用 CognitoAccessForAmazonOpenSearch 的預設值 (建議) 或輸入新名稱。若要進一步了解此角色的目的,請參閱關於 CognitoAccessForAmazonOpenSearch 角色

  10. 選擇 Save changes (儲存變更)。

在您的網域完成處理之後,請參閱允許已經過身分驗證的角色設定身分供應商以取得其他設定步驟。

設定 Amazon Cognito 身分驗證 (AWS CLI)

使用 --cognito-options 參數來設定 OpenSearch Service 網域。由 create-domainupdate-domain-config 命令使用以下語法:

--cognito-options Enabled=true,UserPoolId="user-pool-id",IdentityPoolId="identity-pool-id",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonOpenSearch"

範例

以下範例在 us-east-1 區域建立網域,該區域使用 CognitoAccessForAmazonOpenSearch 角色來啟用 Dashboards 的 Amazon Cognito 身分驗證,並提供對 Cognito_Auth_Role 的網域存取:

aws opensearch create-domain --domain-name my-domain --region us-east-1 --access-policies '{ "Version":"2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"AWS": ["arn:aws:iam::123456789012:role/Cognito_Auth_Role"]},"Action":"es:ESHttp*","Resource":"arn:aws:es:us-east-1:123456789012:domain/*" }]}' --engine-version "OpenSearch_1.0" --cluster-config InstanceType=m4.xlarge.search,InstanceCount=1 --ebs-options EBSEnabled=true,VolumeSize=10 --cognito-options Enabled=true,UserPoolId="us-east-1_123456789",IdentityPoolId="us-east-1:12345678-1234-1234-1234-123456789012",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonOpenSearch"

在您的網域完成處理之後,請參閱允許已經過身分驗證的角色設定身分供應商以取得其他設定步驟。

設定 Amazon Cognito 身分驗證 (AWS 開發套件)

AWS 開發套件 (Android 和 iOS 開發套件除外) 支援所有在 Amazon OpenSearch Service 的組態 API 參考 中定義的操作,包括用於 CreateDomainUpdateDomainConfig 操作的 CognitoOptions 參數。如需安裝與使用 AWS 開發套件的詳細資訊,請參閱 AWS 軟體開發套件

在您的網域完成處理之後,請參閱允許已經過身分驗證的角色設定身分供應商以取得其他設定步驟。

允許已經過身分驗證的角色

在預設情況下,您遵照 關於身分集區 中的準則設定的已經過身分驗證的 IAM 角色並不具備存取 OpenSearch Dashboards 所必需的權限。您必須提供該角色額外的許可。

重要

如果您設定了精細存取控制,並使用「開放」或 IP 類型存取政策,您便可以跳過此步驟。

您可以將這些許可包含在身分型政策中,但除非您希望已經過身分驗證的使用者可存取所有 OpenSearch Service 網域,否則連接到單一網域的資源型政策會是更好的方法:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role" ] }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:region:123456789012:domain/domain-name/*" } ] }

如需有關將資源型政策新增到 OpenSearch Service 網域的說明,請參閱設定存取政策

設定身分供應商

當您設定網域以使用 Dashboards 的 Amazon Cognito 身分驗證時,OpenSearch Service 會將應用程式用戶端新增到使用者集區,並將使用者集區作為身分驗證供應商新增到身分集區。以下螢幕擷取畫面顯示 Amazon Cognito 主控台中的 App client settings (應用程式用戶端設定) 頁面。


                Amazon Cognito 主控台顯示應用程式用戶端設定
警告

不重新命名或刪除應用程式用戶端。

根據您設定使用者集區的方式而定,您可能需要手動建立使用者帳戶,或者使用者可以建立自己的帳戶。如果這些設定是可接受的,您便無需做進一步的動作。不過,許多人偏好使用外部身分供應商。

若要啟用 SAML 2.0 身分供應商,您必須提供 SAML 中繼資料文件。若要啟用社交身分供應商,例如,Login with Amazon、Facebook 和 Google,您必須擁有這些供應商提供的應用程式 ID 和應用程式密碼。您可以啟用任意組合的身分供應商。隨著您新增提供者,登入頁面也會新增選項,如以下螢幕擷取畫面所示。


                具備數個選項的登入頁面

設定使用者集區的最簡單方式就是使用 Amazon Cognito 主控台。使用 Identity Providers (身分供應商) 頁面新增外部身分供應商,以及使用 App client settings (應用程式用戶端設定) 頁面為 OpenSearch Service 網域的應用程式用戶端啟用和停用身分供應商。例如,您可能想要啟用您自己的 SAML 身分供應商以及停用 Cognito User Pool (Cognito 使用者集區) 做為身分供應商。

如需說明,請參閱 Amazon Cognito 開發人員指南中的使用來自使用者集區的聯合為您的使用者集區應用程式指定身分供應商設定

(選用) 設定精細分級的存取

您可能已經注意到預設的身分集區設定指派每位登入的使用者相同的 IAM 角色 (Cognito_identitypoolAuth_Role),這表示每位使用者可以存取相同的 AWS 資源。如果您想要搭配使用精細存取控制與 Amazon Cognito (例如,如果希望您組織的分析師擁有多個索引的唯讀存取權,而開發人員擁有所有索引的寫入存取權),您有兩個選擇:

  • 建立使用者群組並設定您的身分提供者,以根據使用者的身分驗證字符選擇 IAM 角色 (建議)。

  • 設定您的身分供應商,以根據一個或多個規則選擇 IAM 角色。

您使用 Amazon Cognito 主控台的 Edit identity pool (編輯身分集區) 頁面來設定這些選項,如以下螢幕擷取畫面所示。如需包含精細存取控制的演練,請參閱 教學課程:IAM 主要使用者和 Amazon Cognito


                驗證供應商的角色選項
重要

與預設角色相似,Amazon Cognito 必須是每個額外角色信任關係的一部分。如需詳細資訊,請參閱 Amazon Cognito 開發人員指南中的建立角色以進行角色映射

使用者群組和字符

當您建立使用者群組時,您為群組成員選擇 IAM 角色。如需有關建立群組的資訊,請參閱 Amazon Cognito 開發人員指南中的使用者群組

在您建立一或多個使用者群組後,您可以設定您的驗證供應商,以指派使用者其群組的角色,而不是身分集區的預設角色。選取 Choose role from token (從字符中選擇角色),然後選擇 Use default Authenticated role (使用預設已經過身分驗證的角色) 或 DENY (拒絕),以指定身分集區應該如何處理不屬於群組的使用者。

規則

規則本質上是 Amazon Cognito 依序評估的一系列 if 陳述式。例如,如果使用者的電子郵件地址包含 @corporate,Amazon Cognito 會為該使用者指派 Role_A。如果使用者的電子郵件地址包含 @subsidiary,它會指派該使用者 Role_B。否則,它會指派使用者預設驗證角色。

若要進一步了解,請參閱 Amazon Cognito 開發人員指南中的使用以規則為基礎的映射來指派角色給使用者

(選用) 自訂登入頁面

Amazon Cognito 主控台的 UI customization (UI 自訂) 頁面可讓您上傳自訂標誌,以及在登入頁面進行 CSS 變更。如需 CSS 屬性的說明和完整清單,請參閱 Amazon Cognito 開發人員指南中的為您的使用者集區指定應用程式 UI 自訂設定

(選用) 設定進階安全性

Amazon Cognito 使用者集區支援進階安全功能,例如多重驗證、遭盜用認證檢查和調整式驗證。如需進一步了解,請參閱 Amazon Cognito 開發人員指南中的管理安全性

測試

在您滿意您的設定之後,請驗證使用者體驗是否符合您的期望。

若要存取 OpenSearch Dashboards

  1. 在 Web 瀏覽器中導覽至 https://opensearch-domain/_dashboards/

  2. 使用您慣用的登入資料登入。

  3. 載入 OpenSearch Dashboards 之後,至少設定一個索引模式。Dashboards 使用這些模式來識別您要分析的索引。輸入 *,選擇 Next step (下一步),然後選擇 Create index pattern (建立索引模式)

  4. 若要搜尋或探索您的資料,請選擇 Discover (探索)

如果此程序中的任何步驟失敗,請參閱常見的設定問題以取得故障診斷資訊。

限制

Amazon Cognito 對於許多資源有軟性限制。如果您想要為大量的 OpenSearch Service 網域啟用 Dashboards 身分驗證,請視需要檢閱 Amazon Cognito 中的限制請求提高限制

每個 OpenSearch Service 網域會新增應用程式用戶端到使用者集區,這會新增身分驗證供應商到身分集區。如果您對 10 個以上的網域啟用 OpenSearch Dashboards 身分驗證,您可能會遇到「每個身分集區的 Amazon Cognito 使用者集區供應商上限」限制。如果超出限制,您嘗試設定以使用 Dashboards 的 Amazon Cognito 身分驗證的任何 OpenSearch Service 網域可能凍結在 Processing (處理) 的設定狀態中。

常見的設定問題

下表列出常見的設定問題和解決方案。

設定 OpenSearch Service
問題 解決方案

OpenSearch Service can't create the role (主控台)

您沒有正確的 IAM 許可。新增 設定 Amazon Cognito 身分驗證 (主控台) 中指定的許可。

User is not authorized to perform: iam:PassRole on resource CognitoAccessForAmazonOpenSearch (主控台)

您沒有 CognitoAccessForAmazonOpenSearch 角色的 iam:PassRole 許可。將下列政策連接至您的帳戶:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

或者,您可以連接 IAMFullAccess 政策。

User is not authorized to perform: cognito-identity:ListIdentityPools on resource

您沒有 Amazon Cognito 的讀取許可。將 AmazonCognitoReadOnly 政策連接至您的帳戶。

An error occurred (ValidationException) when calling the CreateDomain operation: OpenSearch Service must be allowed to use the passed role

並未在 CognitoAccessForAmazonOpenSearch 角色的信任關係中指定 OpenSearch Service。確認您的角色使用 關於 CognitoAccessForAmazonOpenSearch 角色 中指定的信任關係。或者,使用主控台來設定 Amazon Cognito 身分驗證。主控台會為您建立一個角色。

An error occurred (ValidationException) when calling the CreateDomain operation: User is not authorized to perform: cognito-idp:action on resource: user pool

--cognito-options 中指定的角色沒有存取 Amazon Cognito 的許可。確認角色已與 AWS 受管 AmazonOpenSearchServiceCognitoAccess 政策連接。或者,使用主控台來設定 Amazon Cognito 身分驗證。主控台會為您建立一個角色。
An error occurred (ValidationException) when calling the CreateDomain operation: User pool does not exist

OpenSearch Service 找不到使用者集區。確認您已建立一個且具有正確的 ID。若要尋找 ID,您可以使用 Amazon Cognito 主控台或以下 AWS CLI 命令:

aws cognito-idp list-user-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateDomain operation: IdentityPool not found

OpenSearch Service 找不到身分集區。確認您已建立一個且具有正確的 ID。若要尋找 ID,您可以使用 Amazon Cognito 主控台或以下 AWS CLI 命令:

aws cognito-identity list-identity-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateDomain operation: Domain needs to be specified for user pool

使用者集區沒有網域名稱。您可以使用 Amazon Cognito 主控台或以下 AWS CLI 命令來設定一個:
aws cognito-idp create-user-pool-domain --domain name --user-pool-id id
存取 OpenSearch Dashboards
問題 解決方案
登入頁面不會顯示我慣用的身分供應商。

確認您已為 OpenSearch Service 應用程式用戶端啟用 設定身分供應商 中指定的身分供應商。

登入頁面看起來不似與我的組織關聯。

請參閱(選用) 自訂登入頁面

我的登入資料無法運作。

確認您已如 設定身分供應商 中所指定,來設定身分供應商。

如果您使用者集區作為您的身分供應商,請確認帳戶是否存在且在 Amazon Cognito 主控台的 User and groups (使用者和群組) 頁面上進行確認。

OpenSearch Dashboards 完全不載入,或無法正常運作。

Amazon Cognito 經過身分驗證的角色需要網域 (/*) 的 es:ESHttp* 許可來存取和使用 Dashboards。如 允許已經過身分驗證的角色 中所指定,檢查您新增的存取政策。

Invalid identity pool configuration. Check assigned IAM roles for this pool. Amazon Cognito 無權代表已經過身分驗證的使用者擔任 IAM 角色。修改角色的信任關係,使其包含:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "identity-pool-id" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "authenticated" } } }] }
Token is not from a supported provider of this identity pool. 當您從使用者集區移除應用程式用戶端時,可能發生此少見的錯誤。嘗試在新的瀏覽器工作階段中開啟 Dashboards。

停用 OpenSearch Dashboards 的 Amazon Cognito 身分驗證

使用下列步驟來停用 Dashboards 的 Amazon Cognito 身分驗證。

若要停用 Dashboards 的 Amazon Cognito 身分驗證 (主控台)

  1. 前往 https://aws.amazon.com,然後選擇 Sign In to the Console (登入主控台)

  2. Analytics (分析) 下,選擇 Amazon OpenSearch Service

  3. 在導覽窗格中,在 Domains (網域) 下,選擇您想要設定的網域。

  4. 選擇 Actions (動作)、Edit security configuration (編輯安全組態)。

  5. 取消選擇 Enable Amazon Cognito authentication (啟用 Amazon Cognito 身分驗證)。

  6. 選擇 Save changes (儲存變更)。

重要

如果您不再需要 Amazon Cognito 使用者集區和身分集區,請刪除它們。否則,您可能要繼續負擔網域的費用。

刪除使用 OpenSearch Dashboards 的 Amazon Cognito 身分驗證的網域

為避免使用 Dashboards 的 Amazon Cognito 身分驗證的網域凍結在 Processing (處理) 的設定狀態,請在刪除其相關的 Amazon Cognito 使用者集區和身分集區之前,先刪除 OpenSearch Service 網域。