View a markdown version of this page

Accès aux données interrégionales aux domaines OpenSearch - Amazon OpenSearch Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Accès aux données interrégionales aux domaines OpenSearch

Vous pouvez configurer vos applications d' OpenSearch interface utilisateur en une seule Région AWS pour accéder à OpenSearch des domaines dans différents Région AWS s. Cela vous permet de créer des tableaux de bord unifiés qui regroupent les données provenant de OpenSearch domaines répartis sur plusieurs Région AWS domaines au sein d'une même partition. La prise en charge des sources de données entre régions nécessite l'activation d'un contrôle d'accès précis sur le domaine cible. Le contrôle d'accès précis fournit une couche d'autorisation supplémentaire au-delà de la politique d'accès au domaine, vous permettant de contrôler l'accès à des index, documents et champs individuels.

Concepts clés

Région d'application

L' Région AWS endroit où votre application d' OpenSearch interface utilisateur est hébergée.

Région cible

L' Région AWS endroit où réside le OpenSearch domaine. Il peut s'agir de n'importe quelle région de la même partition, que l' OpenSearch interface utilisateur soit disponible ou non dans cette région.

Rôle multicompte

Rôle IAM dans le compte cible utilisé uniquement lors de l'association de sources de données. OpenSearch L'interface utilisateur assume ce rôle lors de l'appeles:DescribeDomain, qui récupère le point de terminaison du domaine et vérifie que le contrôle d'accès détaillé est activé. Ce rôle n'est requis que lorsque le domaine se trouve dans un compte différent de celui de l'application. Pour de plus amples informations, veuillez consulter Accès aux données entre comptes aux domaines OpenSearch.

Rôle d'application IAM Identity Center

Rôle IAM dans le compte d'application utilisé pour accéder au plan de données utilisateur d'IAM Identity Center.

Régions prises en charge (pour les domaines VPC)

Pour les domaines VPC, vous devez autoriser l' Région AWS hébergement de vos applications d' OpenSearch interface utilisateur lorsque vous autorisez le point de terminaison VPC. Cette liste d'autorisation est requise pour que l' OpenSearch interface utilisateur puisse appeler le domaine VPC.

Conditions préalables

Avant de configurer l'accès aux données entre régions, assurez-vous de disposer des éléments suivants :

  • AWS CLI installé et configuré

  • Accès à la fois Compte AWS à la région de l'application et à la région cible

  • OpenSearch domaines pour lesquels le contrôle d'accès détaillé est activé. L'association de sources de données multirégionales n'est prise en charge que pour les domaines pour lesquels le contrôle d'accès détaillé est activé.

  • Pour les scénarios entre comptes : accès à la fois à la source et à la cible Compte AWS

  • Pour les flux IAM Identity Center : une instance d' AWS IAM Identity Center organisation. L'application d' OpenSearch interface utilisateur doit se trouver dans la même région que l'instance IAM Identity Center.

Scénarios

Choisissez le scénario qui correspond à votre méthode d'authentification et à la configuration de votre domaine :

Chaque scénario couvre l'accès interrégional pour un même compte. Pour un accès entre comptes et entre régions, combinez les étapes de ces scénarios avec la configuration des rôles entre comptes décrite dans. Accès aux données entre comptes aux domaines OpenSearch

Scénario 1 : accès d'un utilisateur IAM à un domaine public dans une autre région

Dans ce scénario, vous créez une application d' OpenSearch interface utilisateur dans une région et vous la connectez au OpenSearch domaine public d'une autre région au sein du même compte.

Étape 1 : Création du OpenSearch domaine (région cible)

Créez un OpenSearch domaine dans la région cible avec un contrôle d'accès détaillé activé. Élargissez la politique d'accès à la racine du compte ou à des principaux IAM spécifiques.

aws opensearch create-domain \ --domain-name domain-name \ --engine-version OpenSearch_2.19 \ --cluster-config InstanceType=m5.large.search,InstanceCount=1 \ --ebs-options "EBSEnabled=true,VolumeType=gp3,VolumeSize=100" \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"admin","MasterUserPassword":"master-password"}}' \ --node-to-node-encryption-options '{"Enabled":true}' \ --encryption-at-rest-options '{"Enabled":true}' \ --domain-endpoint-options '{"EnforceHTTPS":true,"TLSSecurityPolicy":"Policy-Min-TLS-1-2-2019-07"}' \ --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::account-id:root"},"Action":"es:ESHttp*","Resource":"arn:aws:es:target-region:account-id:domain/domain-name/*"}]}' \ --region target-region

Attendez que le statut du domaine change Active avant de continuer.

Étape 2 : Création de l'application d' OpenSearch interface utilisateur (région de l'application)

Créez l'application dans la région d'application avec la source de données inter-régions. La région est automatiquement extraite de l'ARN de la source de données.

aws opensearch create-application \ --region application-region \ --name "cross-region-iam-app" \ --data-sources '[{ "dataSourceArn":"arn:aws:es:target-region:account-id:domain/domain-name", "dataSourceDescription":"Cross-region domain" }]' \ --app-configs '[{"key":"opensearchDashboards.dashboardAdmin.users","value":"[\"test-user\"]"}]'

Étape 3 : vérification et accès

Récupérez les détails de l'application pour obtenir l'URL du point de terminaison :

aws opensearch get-application \ --region application-region \ --id application-id
  • Accédez à l'URL du point de terminaison de l'application depuis la réponse.

  • Connectez-vous à l'aide des informations d'identification IAM.

  • L'utilisateur IAM signe les demandes de plan de données avec ses propres informations d'identification.

  • La politique d'accès du domaine cible et les mappages des rôles principaux contrôlent les données auxquelles l'utilisateur peut accéder.

Scénario 2 : accès d'un utilisateur du centre d'identité IAM à un domaine public dans une autre région

Dans ce scénario, vous créez une application d' OpenSearch interface utilisateur avec l'authentification IAM Identity Center dans une région et vous la connectez à un OpenSearch domaine public dans une autre région au sein du même compte.

Étape 1 : créer le OpenSearch domaine avec le centre d'identité IAM activé (région cible)

Créez un OpenSearch domaine dans la région cible en activant le contrôle d'accès précis et l'intégration du centre d'identité IAM. Utilisez le --identity-center-options paramètre with IdentityCenterInstanceRegion pour spécifier la région dans laquelle se trouve votre instance IAM Identity Center. Cette région doit être la même que celle où l'application d' OpenSearch interface utilisateur est hébergée.

aws opensearch create-domain \ --domain-name domain-name \ --engine-version OpenSearch_2.19 \ --cluster-config InstanceType=m5.large.search,InstanceCount=1 \ --ebs-options "EBSEnabled=true,VolumeType=gp3,VolumeSize=100" \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"admin","MasterUserPassword":"master-password"}}' \ --node-to-node-encryption-options '{"Enabled":true}' \ --encryption-at-rest-options '{"Enabled":true}' \ --domain-endpoint-options '{"EnforceHTTPS":true,"TLSSecurityPolicy":"Policy-Min-TLS-1-2-2019-07"}' \ --identity-center-options '{"EnabledAPIAccess":true,"IdentityCenterInstanceARN":"arn:aws:sso:::instance/ssoins-instance-id","IdentityCenterInstanceRegion":"idc-region","RolesKey":"GroupId","SubjectKey":"UserId"}' \ --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::account-id:role/NeoIdCAppRole"},"Action":"es:ESHttp*","Resource":"arn:aws:es:target-region:account-id:domain/domain-name/*"}]}' \ --region target-region

Attendez que le statut du domaine change Active avant de continuer.

Étape 2 : Création du rôle IAM pour l'application IAM Identity Center

Créez un rôle IAM que l' OpenSearch interface utilisateur utilise pour accéder au plan de données utilisateur d'IAM Identity Center.

Pour créer le rôle d'application IAM Identity Center
  1. Créez une politique de confiance avec uniquement la sts:AssumeRole déclaration. Vous mettrez à jour cette politique pour ajouter la sts:SetContext déclaration après avoir créé l'application à l'étape suivante.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Créez une politique d'autorisation :

    { "Version": "2012-10-17", "Statement": [{ "Sid": "OpenSearchDomain", "Effect": "Allow", "Action": ["es:ESHttp*"], "Resource": "arn:aws:es:target-region:account-id:domain/domain-name/*" }] }
  3. Créez le rôle et associez les politiques :

    aws iam create-role \ --role-name NeoIdCAppRole \ --assume-role-policy-document file://neoidc-trust-policy.json aws iam put-role-policy \ --role-name NeoIdCAppRole \ --policy-name NeoIdCAppPermissions \ --policy-document file://neoidc-permissions-policy.json

Étape 3 : Création de l'application d' OpenSearch interface utilisateur avec IAM Identity Center (région de l'application)

Note

Assurez-vous que l'instance IAM Identity Center est située dans la même région que la région de l'application d' OpenSearch interface utilisateur.

aws opensearch create-application \ --region application-region \ --name "cross-region-idc-app" \ --iam-identity-center-options '{ "enabled":true, "iamIdentityCenterInstanceArn":"arn:aws:sso:::instance/ssoins-instance-id", "iamRoleForIdentityCenterApplicationArn":"arn:aws:iam::account-id:role/NeoIdCAppRole" }' \ --data-sources '[{ "dataSourceArn":"arn:aws:es:target-region:account-id:domain/domain-name", "dataSourceDescription":"Cross-region domain" }]' \ --app-configs '[{"key":"opensearchDashboards.dashboardAdmin.users","value":"[\"test-user\"]"}]'

Une fois l'application créée, notez l'ID de l'application SSO indiqué dans la réponse. Mettez ensuite à jour la politique de confiance sur le rôle d'application IAM Identity Center pour ajouter la sts:SetContext déclaration suivante :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:SetContext", "Condition": { "ForAllValues:ArnEquals": { "sts:RequestContextProviders": "arn:aws:iam::account-id:oidc-provider/portal.sso.idc-region.amazonaws.com/apl/application-id" } } } ] }
aws iam update-assume-role-policy \ --role-name NeoIdCAppRole \ --policy-document file://updated-trust-policy.json

Étape 4 : créer et attribuer des utilisateurs et des groupes IAM Identity Center

Création d'un utilisateur IAM Identity Center

Exécutez la commande suivante. Remplacez les placeholder values par vos propres informations.

aws identitystore create-user \ --identity-store-id d-directory-id \ --user-name user-email \ --display-name "display-name" \ --name Formatted=string,FamilyName=last-name,GivenName=first-name \ --emails Value=user-email,Type=work,Primary=true
Créez un groupe IAM Identity Center et ajoutez l'utilisateur

Exécutez les commandes suivantes :

aws identitystore create-group \ --identity-store-id d-directory-id \ --display-name "OpenSearchUsers" \ --description "Users with OpenSearch access" aws identitystore create-group-membership \ --identity-store-id d-directory-id \ --group-id group-id \ --member-id UserId=user-id
Affecter l'utilisateur ou le groupe à l'application

Exécutez la commande suivante :

aws sso-admin create-application-assignment \ --application-arn "arn:aws:sso::account-id:application/ssoins-instance-id/apl-application-id" \ --principal-id user-id-or-group-id \ --principal-type USER
Configurer le mappage des rôles principaux sur le domaine cible

Associez le groupe IAM Identity Center à un rôle OpenSearch de sécurité sur le domaine cible :

curl -XPATCH "https://domain-endpoint/_plugins/_security/api/rolesmapping/all_access" \ -u admin:master-password \ -H 'Content-Type: application/json' \ -d '[{"op": "add", "path": "/backend_roles", "value": ["group-id"]}]'

Étape 5 : vérification et accès

Récupérez les détails de l'application pour obtenir l'URL du point de terminaison :

aws opensearch get-application \ --region application-region \ --id application-id
  • Accédez à l'URL du point de terminaison de l'application.

  • Connectez-vous à l'aide des informations d'identification utilisateur d'IAM Identity Center.

  • Les demandes de données des utilisateurs d'IAM Identity Center sont signées avec le rôle d'application IAM Identity Center.

  • Mappages des rôles principaux sur les autorisations d'accès aux données de contrôle de domaine.

Scénario 3 : utilisateur IAM accédant à un domaine VPC dans une autre région

Dans ce scénario, vous créez une application d' OpenSearch interface utilisateur dans une région et vous la connectez à un OpenSearch domaine VPC dans une autre région au sein du même compte. Les domaines VPC nécessitent une configuration réseau supplémentaire et une autorisation explicite des points de terminaison VPC avec une prise en charge interrégionale.

Étape 1 : configurer le VPC (région cible)

Ignorez cette étape si un VPC existe déjà dans la région cible.

# Create VPC aws ec2 create-vpc \ --cidr-block 10.0.0.0/16 \ --region target-region # Create subnet aws ec2 create-subnet \ --vpc-id vpc-id \ --cidr-block 10.0.1.0/24 \ --availability-zone target-regiona \ --region target-region # Create security group aws ec2 create-security-group \ --group-name opensearch-vpc-sg \ --description "Security group for OpenSearch VPC domain" \ --vpc-id vpc-id \ --region target-region # Allow inbound HTTPS aws ec2 authorize-security-group-ingress \ --group-id security-group-id \ --protocol tcp \ --port 443 \ --cidr 10.0.0.0/16 \ --region target-region

En savoir plus sur la création de domaines VPC.

Étape 2 : Création du domaine VPC (région cible)

aws opensearch create-domain \ --domain-name vpc-domain-name \ --engine-version OpenSearch_2.19 \ --cluster-config InstanceType=m5.large.search,InstanceCount=1 \ --ebs-options "EBSEnabled=true,VolumeType=gp3,VolumeSize=100" \ --vpc-options "SubnetIds=subnet-id,SecurityGroupIds=security-group-id" \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"admin","MasterUserPassword":"master-password"}}' \ --node-to-node-encryption-options '{"Enabled":true}' \ --encryption-at-rest-options '{"Enabled":true}' \ --domain-endpoint-options '{"EnforceHTTPS":true,"TLSSecurityPolicy":"Policy-Min-TLS-1-2-2019-07"}' \ --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::account-id:root"},"Action":"es:ESHttp*","Resource":"arn:aws:es:target-region:account-id:domain/vpc-domain-name/*"}]}' \ --region target-region

Attendez que le statut du domaine change Active avant de continuer.

Étape 3 : Autoriser le point de terminaison VPC pour le principal du service d' OpenSearch interface utilisateur avec support interrégional (région cible)

# Authorize the service principal with cross-region support aws opensearch authorize-vpc-endpoint-access \ --domain-name vpc-domain-name \ --service "application.opensearchservice.amazonaws.com" \ --service-options '{"SupportedRegions":["target-region","application-region"]}' \ --region target-region # Verify authorization aws opensearch list-vpc-endpoint-access \ --domain-name vpc-domain-name \ --region target-region

Réponse attendue :

{ "AuthorizedPrincipalList": [ { "PrincipalType": "AWS_SERVICE", "Principal": "application.opensearchservice.amazonaws.com", "ServiceOptions": { "SupportedRegions": ["target-region", "application-region"] } } ] }

Étape 4 : Création de l'application d' OpenSearch interface utilisateur (région de l'application)

aws opensearch create-application \ --region application-region \ --name "cross-region-vpc-iam-app" \ --data-sources '[{ "dataSourceArn":"arn:aws:es:target-region:account-id:domain/vpc-domain-name", "dataSourceDescription":"Cross-region VPC domain" }]' \ --app-configs '[{"key":"opensearchDashboards.dashboardAdmin.users","value":"[\"test-user\"]"}]'

Étape 5 : vérification et accès

Récupérez les détails de l'application pour obtenir l'URL du point de terminaison :

aws opensearch get-application \ --region application-region \ --id application-id
  • Accédez à l'URL du point de terminaison de l'application depuis la réponse.

  • Connectez-vous à l'aide des informations d'identification IAM.

  • L'utilisateur IAM signe les demandes de plan de données avec ses propres informations d'identification.

  • La politique d'accès du domaine cible et les mappages des rôles principaux contrôlent les données auxquelles l'utilisateur peut accéder.

Scénario 4 : un utilisateur du centre d'identité IAM accède à un domaine VPC dans une autre région

Dans ce scénario, vous créez une application d' OpenSearch interface utilisateur avec authentification IAM Identity Center dans une région et vous la connectez à un domaine OpenSearch VPC d'une autre région au sein du même compte.

Étape 1 : configurer le VPC (région cible)

Ignorez cette étape si un VPC existe déjà dans la région cible.

# Create VPC aws ec2 create-vpc \ --cidr-block 10.0.0.0/16 \ --region target-region # Create subnet aws ec2 create-subnet \ --vpc-id vpc-id \ --cidr-block 10.0.1.0/24 \ --availability-zone target-regiona \ --region target-region # Create security group aws ec2 create-security-group \ --group-name opensearch-vpc-sg \ --description "Security group for OpenSearch VPC domain" \ --vpc-id vpc-id \ --region target-region # Allow inbound HTTPS aws ec2 authorize-security-group-ingress \ --group-id security-group-id \ --protocol tcp \ --port 443 \ --cidr 10.0.0.0/16 \ --region target-region

En savoir plus sur la création de domaines VPC.

Étape 2 : créer le domaine VPC avec IAM Identity Center activé (région cible)

Créez un OpenSearch domaine dans la région cible avec un contrôle d'accès précis, l'intégration du centre d'identité IAM et la configuration VPC activés. Mettez à jour la politique d'accès pour autoriser le rôle d'application IAM Identity Center et ajoutez le --identity-center-options paramètre :

aws opensearch create-domain \ --domain-name vpc-domain-name \ --engine-version OpenSearch_2.19 \ --cluster-config InstanceType=m5.large.search,InstanceCount=1 \ --ebs-options "EBSEnabled=true,VolumeType=gp3,VolumeSize=100" \ --vpc-options "SubnetIds=subnet-id,SecurityGroupIds=security-group-id" \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"admin","MasterUserPassword":"master-password"}}' \ --node-to-node-encryption-options '{"Enabled":true}' \ --encryption-at-rest-options '{"Enabled":true}' \ --domain-endpoint-options '{"EnforceHTTPS":true,"TLSSecurityPolicy":"Policy-Min-TLS-1-2-2019-07"}' \ --identity-center-options '{"EnabledAPIAccess":true,"IdentityCenterInstanceARN":"arn:aws:sso:::instance/ssoins-instance-id","IdentityCenterInstanceRegion":"idc-region","RolesKey":"GroupId","SubjectKey":"UserId"}' \ --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::account-id:role/NeoIdCAppRole"},"Action":"es:ESHttp*","Resource":"arn:aws:es:target-region:account-id:domain/vpc-domain-name/*"}]}' \ --region target-region

Attendez que le statut du domaine change Active avant de continuer.

Étape 3 : Autoriser le point de terminaison VPC pour le principal du service d' OpenSearch interface utilisateur avec support interrégional (région cible)

Important

Il s'agit d'une étape critique propre aux domaines VPC dotés d'un accès interrégional. Le service d' OpenSearch interface utilisateur doit être explicitement autorisé à accéder au point de terminaison VPC, et vous devez inclure la région de l'application dans la SupportedRegions liste.

# Authorize the service principal with cross-region support aws opensearch authorize-vpc-endpoint-access \ --domain-name vpc-domain-name \ --service "application.opensearchservice.amazonaws.com" \ --service-options '{"SupportedRegions":["target-region","application-region"]}' \ --region target-region # Verify authorization aws opensearch list-vpc-endpoint-access \ --domain-name vpc-domain-name \ --region target-region

Réponse attendue :

{ "AuthorizedPrincipalList": [ { "PrincipalType": "AWS_SERVICE", "Principal": "application.opensearchservice.amazonaws.com", "ServiceOptions": { "SupportedRegions": ["target-region", "application-region"] } } ] }

Étape 4 : Création du rôle IAM pour l'application IAM Identity Center

Créez un rôle IAM que l' OpenSearch interface utilisateur utilise pour accéder au plan de données utilisateur d'IAM Identity Center.

Pour créer le rôle d'application IAM Identity Center
  1. Créez une politique de confiance avec uniquement la sts:AssumeRole déclaration. Vous mettrez à jour cette politique pour ajouter la sts:SetContext déclaration après avoir créé l'application à l'étape suivante.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Créez une politique d'autorisation :

    { "Version": "2012-10-17", "Statement": [{ "Sid": "OpenSearchDomain", "Effect": "Allow", "Action": ["es:ESHttp*"], "Resource": "arn:aws:es:target-region:account-id:domain/vpc-domain-name/*" }] }
  3. Créez le rôle et associez les politiques :

    aws iam create-role \ --role-name NeoIdCAppRole \ --assume-role-policy-document file://neoidc-trust-policy.json aws iam put-role-policy \ --role-name NeoIdCAppRole \ --policy-name NeoIdCAppPermissions \ --policy-document file://neoidc-permissions-policy.json

Étape 5 : Création de l'application d' OpenSearch interface utilisateur avec IAM Identity Center (région de l'application)

aws opensearch create-application \ --region application-region \ --name "cross-region-vpc-idc-app" \ --iam-identity-center-options '{ "enabled":true, "iamIdentityCenterInstanceArn":"arn:aws:sso:::instance/ssoins-instance-id", "iamRoleForIdentityCenterApplicationArn":"arn:aws:iam::account-id:role/NeoIdCAppRole" }' \ --data-sources '[{ "dataSourceArn":"arn:aws:es:target-region:account-id:domain/vpc-domain-name", "dataSourceDescription":"Cross-region VPC domain" }]' \ --app-configs '[{"key":"opensearchDashboards.dashboardAdmin.users","value":"[\"test-user\"]"}]'

Une fois l'application créée, notez l'ID de l'application SSO indiqué dans la réponse. Mettez ensuite à jour la politique de confiance sur le rôle d'application IAM Identity Center pour ajouter la sts:SetContext déclaration suivante :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": "application.opensearchservice.amazonaws.com" }, "Action": "sts:SetContext", "Condition": { "ForAllValues:ArnEquals": { "sts:RequestContextProviders": "arn:aws:iam::account-id:oidc-provider/portal.sso.idc-region.amazonaws.com/apl/application-id" } } } ] }
aws iam update-assume-role-policy \ --role-name NeoIdCAppRole \ --policy-document file://updated-trust-policy.json

Étape 6 : créer et attribuer des utilisateurs et des groupes IAM Identity Center

Suivez les mêmes étapes que Étape 4 : créer et attribuer des utilisateurs et des groupes IAM Identity Center pour créer des utilisateurs et des groupes, les affecter à l'application et configurer le mappage des rôles principaux sur le domaine cible.

Étape 7 : Vérification et accès

Récupérez les détails de l'application pour obtenir l'URL du point de terminaison :

aws opensearch get-application \ --region application-region \ --id application-id
  • Accédez à l'URL du point de terminaison de l'application.

  • Connectez-vous à l'aide des informations d'identification utilisateur d'IAM Identity Center.

  • Les demandes de données des utilisateurs d'IAM Identity Center sont signées avec le rôle d'application IAM Identity Center.

  • Mappages des rôles principaux sur les autorisations d'accès aux données de contrôle de domaine.

Gestion des applications

Mettre à jour une application avec des sources de données interrégionales

Exécutez la commande suivante. Remplacez les placeholder values par vos propres informations.

aws opensearch update-application \ --region application-region \ --id application-id \ --data-sources '[{ "dataSourceArn":"arn:aws:es:target-region-1:account-id:domain/domain-1", "dataSourceDescription":"Domain in target Region 1" },{ "dataSourceArn":"arn:aws:es:target-region-2:account-id:domain/domain-2", "dataSourceDescription":"Domain in target Region 2" }]'
Important

L'opération de mise à jour remplace l'ensemble du tableau de sources de données. Incluez toutes les sources de données que vous souhaitez conserver.

Lister les applications

Exécutez la commande suivante :

aws opensearch list-applications \ --region application-region
Supprimer une application

Exécutez la commande suivante :

aws opensearch delete-application \ --region application-region \ --id application-id
Révoquer l'accès aux points de terminaison VPC pour des régions spécifiques

Pour révoquer l'accès entre régions pour des zones spécifiques Région AWS tout en conservant d'autres, utilisez le --service-options paramètre avec les régions pour révoquer :

aws opensearch revoke-vpc-endpoint-access \ --domain-name vpc-domain-name \ --service "application.opensearchservice.amazonaws.com" \ --service-options '{"SupportedRegions":["region-to-revoke"]}' \ --region target-region

Référence rapide

Les tableaux suivants résument les principales différences entre les types de domaines, les méthodes d'authentification et l'accès entre régions et entre régions.

Comparaison entre le domaine public et le domaine VPC
Aspect Domaine public Domaine VPC
Autorisation du point de terminaison VPC Facultatif Obligatoire — doit être autorisé application.opensearchservice.amazonaws.com avec SupportedRegions
Configuration du réseau Aucune VPC, sous-réseau, groupe de sécurité avec HTTPS (443) entrant
Politique d'accès IAM Obligatoire Obligatoire
Comparaison entre un utilisateur IAM et un utilisateur IAM Identity Center
Aspect Utilisateur IAM Utilisateur du centre d'identité IAM
Informations d'identification du plan de données Informations d'identification IAM propres à l'utilisateur Rôle d'application IAM Identity Center
Contrôle d’accès Politique d'accès au domaine et mappage des rôles principaux Politique d'accès au domaine et mappage des rôles principaux
Contrainte de région d'application N'importe quelle région Doit se trouver dans la même région que l'instance IAM Identity Center
Configuration de domaine Standard Nécessite --identity-center-options avec IdentityCenterInstanceRegion
Configuration supplémentaire Aucune Rôle de l'application IAM Identity Center, user/group création, attribution des applications, mappage des rôles principaux
Même région par rapport à une région interrégionale
Aspect Même région Interrégional
ARN de la source de données Même région que l'application Région différente de celle de l'application (même partition)
Autorisation du point de terminaison VPC Omettre --service-options Inclure --service-options avec SupportedRegions
Configuration du domaine IAM Identity Center IdentityCenterInstanceRegion facultatif IdentityCenterInstanceRegion obligatoire
Support pour cloisons croisées N/A Non pris en charge : les sources de données doivent se trouver dans la même partition

Remarques importantes

  • L'association de sources de données entre régions nécessite l'activation d'un contrôle d'accès précis sur le domaine cible.

  • Les sources de données interrégionales doivent se trouver dans la même partition. L'accès entre partitions (par exemple, de aws àaws-cn) n'est pas pris en charge.

  • La région de la source de données est automatiquement extraite de l'ARN de la source de données. Aucun paramètre de région supplémentaire n'est nécessaire dans le CreateApplication ou UpdateApplication APIs.

  • Pour les sources de données interrégionales portant sur le même compte, ce iamRoleForDataSourceArn n'est pas obligatoire. Il n'est nécessaire que pour les sources de données entre comptes.

  • Pour les domaines VPC, vous devez inclure la région de l'application dans le SupportedRegions paramètre lors de l'appel. AuthorizeVpcEndpointAccess L'omission --service-options autorise uniquement l'accès à la même région.

  • Pour les flux IAM Identity Center, l'application d' OpenSearch interface utilisateur doit se trouver dans la même région que l'instance IAM Identity Center.

  • Pour les flux IAM Identity Center comportant des domaines interrégionaux, le domaine cible doit être inclus --identity-center-options pour permettre l'IdentityCenterInstanceRegionintrospection des jetons entre régions.

  • Versions du moteur prises en charge : OpenSearch 1.3 et versions ultérieures.

Résolution des problèmes

Problème Résolution
La création de l'application échoue avec le message « Impossible d'accéder au domaine » Vérifiez que le domaine existe dans la région cible et que le contrôle d'accès détaillé est activé. Pour les scénarios multi-comptes, vérifiez que le rôle multi-comptes est es:DescribeDomain autorisé et que la politique de confiance autorise le compte source.
L'accès au domaine VPC échoue pour plusieurs régions Assurez-vous que le point de terminaison VPC est autorisé application.opensearchservice.amazonaws.com avec la région de l'application incluse. SupportedRegions
Accès au plan de données refusé à l'utilisateur IAM Vérifiez que la politique d'accès au domaine cible autorise l'utilisateur IAM ou le principal du rôle, et que les mappages précis des rôles du backend de contrôle d'accès accordent les autorisations appropriées.
Accès au plan de données refusé à l'utilisateur d'IAM Identity Center Vérifiez que le mappage des rôles principaux inclut l'ID de groupe IAM Identity Center, que la politique de domaine autorise le rôle d'application IAM Identity Center et qu'IdentityCenterInstanceRegionil est correctement défini sur la même région que l'application d' OpenSearch interface utilisateur du domaine.
Source de données entre partitions rejetée L'accès entre partitions n'est pas pris en charge. Assurez-vous que l'ARN de la source de données se trouve dans la même partition que l'application.
L'authentification IAM Identity Center échoue pour un domaine interrégional Vérifiez qu'elle IdentityCenterInstanceRegion est définie sur la bonne région dans laquelle votre instance IAM Identity Center est activée. L'application d' OpenSearch interface utilisateur doit également se trouver dans cette même région.