Funciones en AWS cuentas diferentes para el acceso entre cuentas (opcional) - AWS Centro de resiliencia

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.

Funciones en AWS cuentas diferentes para el acceso entre cuentas (opcional)

Si sus recursos se encuentran en cuentas secundarias o de recursos, debe crear funciones en cada una de estas cuentas AWS Resilience Hub para poder evaluar correctamente su solicitud. El procedimiento de creación de roles es similar al proceso de creación de roles del invocador, excepto en lo que respecta a la configuración de la política de confianza.

nota

Debe crear los roles en las cuentas secundarias donde se encuentran los recursos.

Temas

Crear un rol en la consola de IAM para cuentas secundarias o de recursos

Para poder acceder AWS Resilience Hub a AWS los servicios y recursos de otras AWS cuentas, debe crear funciones en cada una de estas cuentas.

Para crear un rol en la consola de IAM para las cuentas secundarias o de recursos mediante la consola de IAM
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. En el panel de navegación, seleccione Roles y, a continuación, seleccione Crear rol.

  3. Seleccione Política de confianza personalizada, copie la siguiente política en la ventana Política de confianza personalizada y, a continuación, seleccione Siguiente.

    nota

    Si sus recursos están en cuentas diferentes, debe crear un rol en cada una de esas cuentas y usar la política de confianza de la cuenta secundaria para las demás cuentas.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::primary_account_id:role/InvokerRoleName" ] }, "Action": "sts:AssumeRole" } ] }
  4. En la sección Políticas de permisos de la página Añadir permisos, introduzca AWSResilienceHubAsssessmentExecutionPolicy en el cuadro Filtre las políticas por propiedad o nombre de política y pulse Entrar.

  5. Seleccione la política y elija Siguiente.

  6. En la sección Información del rol, introduzca un nombre de rol único (por ejemplo, AWSResilienceHubAssessmentRole) en el cuadro Nombre del rol.

  7. (Opcional) Introduzca una descripción sobre el rol en el cuadro Descripción.

  8. Elija Crear rol.

    Para editar los casos de uso y los permisos, en el paso 6, elija el botón Editar que se encuentra a la derecha de las secciones Paso 1: seleccionar entidades de confianza o Paso 2: agregar permisos.

Además, también debe añadir el permiso de sts:assumeRole al rol de invocador para que pueda asumir los roles de sus cuentas secundarias.

Añada la siguiente política a su rol de invocador para cada uno de los roles secundarios que haya creado:

{ "Effect": "Allow", "Resource": [ "arn:aws:iam::secondary_account_id_1:role/RoleInSecondaryAccount_1", "arn:aws:iam::secondary_account_id_2:role/RoleInSecondaryAccount_2", ... ], "Action": [ "sts:AssumeRole" ] }

Administración de roles con la API de IAM

La política de confianza de un rol otorga a la entidad principal especificada permiso para asumir el rol. Para crear los roles mediante AWS Command Line Interface (AWS CLI), utilice el create-role comando. Al usar este comando, puede especificar las políticas de confianza en línea. En el siguiente ejemplo, se muestra cómo conceder al director del AWS Resilience Hub servicio el permiso para que asuma su función.

nota

El requisito de estar por fuera de las comillas (' ') en la cadena JSON puede variar en función de la versión de intérprete de comandos.

Ejemplo de create-role

aws iam create-role --role-name AWSResilienceHubAssessmentRole --assume-role-policy-document '{"Version": "2012-10-17","Statement": [{"Effect": "Allow","Principal": {"AWS": ["arn:aws:iam::primary_account_id:role/InvokerRoleName"]},"Action": "sts:AssumeRole"}]}'

También puede definir la política de confianza para el rol con un archivo JSON aparte. En el siguiente ejemplo, trust-policy.json es un archivo que se encuentra en el directorio actual.

Definir la política de confianza mediante un archivo JSON

Puede definir la política de confianza para el rol utilizando un archivo JSON independiente y luego ejecutar el comando create-role. En el siguiente ejemplo, se muestra un archivo trust-policy.json que contiene la política de confianza en el directorio actual. Esta política se asocia a un rol mediante la ejecución del comando create-role. El resultado del comando create-role se muestra en el Ejemplo de salida. Para añadir permisos a un rol, utilice el attach-policy-to-rolecomando y podrá empezar por añadir la política AWSResilienceHubAsssessmentExecutionPolicy gestionada. Para obtener más información sobre esta política administrada, consulte AWSResilienceHubAsssessmentExecutionPolicy.

Ejemplo de trust-policy.json

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::primary_account_id:role/InvokerRoleName" ] }, "Action": "sts:AssumeRole" } ] }

Ejemplo de create-role

aws iam create-role --role-name AWSResilienceHubAssessmentRole --assume-role-policy-document file://trust-policy.json

Resultados de ejemplo

{ "Role": { "Path": "/", "RoleName": "AWSResilienceHubAssessmentRole2", "RoleId": "AROAT2GICMEDJML6EVQRG", "Arn": "arn:aws:iam::262412591366:role/AWSResilienceHubAssessmentRole2", "CreateDate": "2023-08-02T07:49:23+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::262412591366:role/AWSResilienceHubAssessmentRole" ] }, "Action": "sts:AssumeRole" } ] } } }

Ejemplo de attach-policy-to-role

aws iam attach-role-policy --role-name AWSResilienceHubAssessmentRole --policy-arn arn:aws:iam::aws:policy/AWSResilienceHubAsssessmentExecutionPolicy.