Configuración del acceso entre cuentas a Amazon Keyspaces sin una VPC compartida - Amazon Keyspaces (para Apache Cassandra)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configuración del acceso entre cuentas a Amazon Keyspaces sin una VPC compartida

Si la tabla de Amazon Keyspaces y el punto de conexión de VPC privado pertenecen a cuentas diferentes pero no comparten una VPC, las aplicaciones podrán seguir conectándose entre cuentas mediante puntos de conexión de VPC. Dado que las cuentas no comparten los puntos de conexión de VPC, Account A, Account B y Account C requieren sus propios puntos de conexión de VPC. Para el controlador de cliente de Cassandra, Amazon Keyspaces aparece como un único nodo en lugar de un clúster multinodo. Al conectarse, el controlador de cliente llega al servidor DNS que devuelve uno de los puntos de conexión disponibles en la VPC de la cuenta.

También puede acceder a las tablas de Amazon Keyspaces en diferentes cuentas sin un punto de enlace de VPC compartido mediante los puntos de enlace públicos o mediante la implementación de un punto de enlace de VPC privado en cada cuenta. Cuando no se utiliza una VPC compartida, cada cuenta requiere su propio punto de conexión de VPC. En este ejemplo, Account A, Account B y Account C requieren sus propios puntos de conexión de VPC para acceder a la tabla de Account A. Cuando se utilizan puntos de conexión de VPC en esta configuración, Amazon Keyspaces aparece como un clúster de nodo único para el controlador de cliente de Cassandra en lugar de un clúster multinodo. Al conectarse, el controlador de cliente llega al servidor DNS que devuelve uno de los puntos de conexión disponibles en la VPC de la cuenta. Sin embargo, el controlador de cliente no puede acceder a la tabla de system.peers para descubrir puntos de conexión adicionales. Dado que hay menos hosts disponibles, el controlador realiza menos conexiones. Para ajustar esto, aumente la configuración del grupo de conexiones del controlador en un factor de tres.

Diagrama que muestra tres cuentas diferentes propiedad de la misma organización en la misma Región de AWS sin una VPC compartida.

Account Aes la cuenta que contiene los recursos (una tabla de Amazon Keyspaces) a los que Account C hay que Account B acceder, al igual que Account A la cuenta de confianza. Account By Account C son las cuentas con los principales las que necesitan acceso a los recursos (una tabla de Amazon Keyspaces)Account A, Account B también lo son Account C las cuentas de confianza. La cuenta de confianza concede los permisos a las cuentas confiadas compartiendo un rol de IAM. El siguiente procedimiento describe los pasos de configuración necesarios en Account A.

Configuración de Account A
  1. Crea un espacio de claves y una tabla en Amazon Keyspaces. Account A

  2. Cree un rol de IAM Account A que tenga acceso total a la tabla Amazon Keyspaces y acceso de lectura a las tablas del sistema Amazon Keyspaces.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select", "cassandra:Modify" ], "Resource":[ "arn:aws:cassandra:region:Account-A:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:region:Account-A:/keyspace/system*" ] } ] }
  3. Configure una política de confianza para la función de IAM de Account A forma que los directores puedan entrar en cuentas de confianza Account B y Account C puedan asumirla como cuentas de confianza. Esto se muestra en el siguiente ejemplo.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::AccountB:role/Cross-Account-Role-B", "AWS": "arn:aws:iam::AccountC:role/Cross-Account-Role-C" }, "Action": "sts:AssumeRole", "Condition": {} } ] }

    Para obtener más información sobre las políticas de IAM entre cuentas, consulte Políticas entre cuentas en la Guía del usuario de IAM.

  4. Configure el punto de enlace de la VPC Account A y adjunte permisos al punto de enlace que permitan que las funciones se envíen Account B y Account C asuman la función de Account A uso del punto de enlace de la VPC. Estos permisos son válidos para el punto final de la VPC al que están conectados. Para obtener más información sobre las políticas de punto de conexión de VPC, consulte Control de acceso a puntos de conexión de VPC de interfaz para Amazon Keyspaces.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "Allow-access-from-specific-IAM-roles", "Effect": "Allow", "Principal": "*", "Action": "cassandra:*", "Resource": "*", "Condition": { "ArnEquals": { "aws:PrincipalArn": "arn:aws:iam::AccountB:role/Cross-Account-Role-B", "aws:PrincipalArn": "arn:aws:iam::AccountC:role/Cross-Account-Role-C" } } } ] }
Configuración de Account B y Account C
  1. En Account B y Account C, cree nuevos roles y vincule la siguiente política que permite a la entidad principal asumir el rol compartido creado en Account A.

    { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::Account-A:role/keyspaces_access" } }

    Permitir que el director asuma la función compartida se implementa mediante la AssumeRole API de AWS Security Token Service (AWS STS). Para obtener más información, consulte Proporcionar acceso a un usuario de IAM a otro de su Cuenta de AWS propiedad en la Guía del usuario de IAM.

  2. En Account B yAccount C, puede crear aplicaciones que utilicen el complemento de SIGV4 autenticación, que permite que una aplicación asuma el rol compartido para conectarse a la tabla Amazon Keyspaces ubicada en. Account A Para obtener más información sobre el complemento SIGV4 de autenticación, consulteCreación de credenciales para el acceso programático a Amazon Keyspaces . Para obtener más información sobre cómo configurar una aplicación para que asuma un rol en otra AWS cuenta, consulta Autenticación y acceso en la Guía de referencia de herramientas AWS SDKs y herramientas.