Implementaciones de IAM automatizadas mediante la ingesta de CFN o la actualización de pilas en AMS CTs - Guía para desarrolladores de aplicaciones avanzadas de AMS

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.

Implementaciones de IAM automatizadas mediante la ingesta de CFN o la actualización de pilas en AMS CTs

Puedes usar estos tipos de cambios de AMS para implementar funciones de IAM (el AWS::IAM::Role recurso) tanto en la zona de aterrizaje multicuenta (MALZ) como en la zona de aterrizaje de una sola cuenta (SALZ):

  • Despliegue | Ingestión | Apilación a partir de plantilla | Creación (ct-36cn2avfrrj9v CloudFormation )

  • Administración | Pila personalizada | Apilación a partir de plantilla | Actualización (ct-361tlo1k7339x) CloudFormation

  • Administración | Pila personalizada | Apilación a partir de plantilla | Aprobar y actualizar (ct-1404e21baa2ox) CloudFormation

Validaciones realizadas en las funciones de IAM de su plantilla CFN:

  • ManagedPolicyArns: El atributo no ManagedPolicyArnsdebe existir en. AWS::IAM::Role La validación no permite adjuntar políticas administradas al rol que se está aprovisionando. En su lugar, los permisos del rol se pueden administrar mediante la política en línea a través de las políticas de propiedad.

  • PermissionsBoundary: La política utilizada para establecer el límite de permisos para el rol solo puede ser la política gestionada por AMS:. AWSManagedServices_IAM_PermissionsBoundary Esta política actúa como una barrera que protege los recursos de la infraestructura de AMS para que no se modifiquen mediante el rol que se está aprovisionando. Con este límite de permisos predeterminado, se mantienen los beneficios de seguridad que proporciona AMS.

    El AWSManagedServices_IAM_PermissionsBoundary (predeterminado) es obligatorio; sin él, la solicitud se rechaza.

  • MaxSessionDuration: La duración máxima de sesión que se puede configurar para el rol de IAM es de 1 a 4 horas. El estándar técnico de AMS exige que el cliente asuma el riesgo de que la sesión dure más de 4 horas.

  • RoleName: AMS conserva los siguientes espacios de nombres y no se pueden usar como prefijos de nombres de funciones de IAM:

    AmazonSSMRole, AMS, Ams, ams, AWSManagedServices, customer_developer_role, customer-mc-, Managed_Services, MC, Mc, mc, SENTINEL, Sentinel, sentinel, StackSet-AMS, StackSet-Ams, StackSet-ams, StackSet-AWS, StackSet-MC, StackSet-Mc, StackSet-mc
  • Políticas: la política integrada en la función de IAM solo puede incluir un conjunto de acciones de IAM aprobadas previamente por AMS. Este es el límite superior de todas las acciones de IAM con las que se puede crear un rol de IAM (política de control). La política de control consiste en:

    • Todas las acciones de la política AWS gestionada ReadOnlyAccess que proporcionan acceso de solo lectura a todos los Servicios de AWS recursos y

    • Las siguientes acciones, con la restricción de las acciones de S3 entre cuentas, es decir, las acciones de S3 permitidas, solo se pueden realizar en los recursos presentes en la misma cuenta en la que se encuentra el rol que se está creando:

      amscm:*, amsskms:*, lambda:InvokeFunction, logs:CreateLogStream, logs:PutLogEvents, s3:AbortMultipartUpload, s3:DeleteObject, s3:DeleteObjectVersion, s3:ObjectOwnerOverrideToBucketOwner, s3:PutObject, s3:ReplicateTags, secretsmanager:GetRandomPassword, sns:Publish

      Cualquier función de IAM creada o actualizada mediante la ingesta de CFN puede permitir las acciones enumeradas en esta política de control o acciones que tengan un alcance inferior (menos permisivo que) las acciones enumeradas en la política de control. Actualmente, permitimos estas acciones de IAM seguras, que pueden clasificarse como acciones de solo lectura, además de las acciones que no son de solo lectura mencionadas anteriormente, que no se pueden llevar a cabo y que están aprobadas previamente según la norma técnica de AMS. CTs

  • AssumeRolePolicyDocument: Las siguientes entidades están preaprobadas y se pueden incluir en la política de confianza para que asuman la función que se va a crear:

    • Cualquier entidad de IAM (rol, usuario, usuario raíz, sesión con el rol asumido por STS) de la misma cuenta puede asumir el rol.

    • Las siguientes personas Servicios de AWS pueden asumir la función:

      apigateway.amazonaws.com, autoscaling.amazonaws.com, cloudformation.amazonaws.com, codebuild.amazonaws.com, codedeploy.amazonaws.com, codepipeline.amazonaws.com, datapipeline.amazonaws.com, datasync.amazonaws.com, dax.amazonaws.com, dms.amazonaws.com, ec2.amazonaws.com, ecs-tasks.amazonaws.com, ecs.application-autoscaling.amazonaws.com, elasticmapreduce.amazonaws.com, es.amazonaws.com, events.amazonaws.com, firehose.amazonaws.com, glue.amazonaws.com, lambda.amazonaws.com, monitoring.rds.amazonaws.com, pinpoint.amazonaws.com, rds.amazonaws.com, redshift.amazonaws.com, s3.amazonaws.com, sagemaker.amazonaws.com, servicecatalog.amazonaws.com, sns.amazonaws.com, ssm.amazonaws.com, states.amazonaws.com, storagegateway.amazonaws.com, transfer.amazonaws.com, vmie.amazonaws.com
    • El proveedor de SAML de la misma cuenta puede asumir la función. Actualmente, el único nombre de proveedor de SAML compatible es. customer-saml

Si una o más de las validaciones fallan, se rechaza la RFC. Un ejemplo de motivo de rechazo de un RFC es el siguiente:

{"errorMessage":"[ 'LambdaRole: The maximum session duration (in seconds) should be a numeric value in the range 3600 to 14400 (i.e. 1 to 4 hours).', 'lambda-policy: Policy document is too permissive.']","errorType":"ClientError"}

Si necesita ayuda con una validación o ejecución fallida de la RFC, utilice la correspondencia de la RFC para ponerse en contacto con AMS. Para obtener instrucciones, consulte la correspondencia y el archivo adjunto de la RFC (consola). Para cualquier otra pregunta, envíe una solicitud de servicio. Para obtener información sobre cómo hacerlo, consulte Creación de una solicitud de servicio.

nota

Actualmente, no aplicamos ninguna de las mejores prácticas de IAM como parte de nuestras validaciones de IAM. Para conocer las prácticas recomendadas de IAM, consulte Prácticas recomendadas de seguridad en IAM.

Crear funciones de IAM con acciones más permisivas o aplicar las mejores prácticas de IAM

Cree sus entidades de IAM con los siguientes tipos de cambios manuales:

  • Implementación | Componentes de pila avanzados | Identity and Access Management (IAM) | Crear entidad o política (ct-3dpd8mdd9jn1r)

  • Administración | Componentes de pila avanzados | Identity and Access Management (IAM) | Actualizar entidad o política (ct-27tuth19k52b4)

Le recomendamos que lea y comprenda nuestras normas técnicas antes de archivar este manual. RFCs Para acceder a ellas, consulte Cómo acceder a las normas técnicas.

nota

Cada función de IAM creada directamente con estos tipos de cambios manuales pertenece a su propia pila individual y no reside en la misma pila en la que se crean los demás recursos de infraestructura mediante CFN Ingest CT.

La actualización de las funciones de IAM creadas con CFN se realiza mediante cambios manuales cuando las actualizaciones no se pueden realizar mediante tipos de cambios automatizados

Utilice el tipo de cambio Management | Advanced stack components | Identity and Access Management (IAM) | Actualizar entidad o política (ct-27tuth19k52b4).

importante

Las actualizaciones de las funciones de IAM realizadas mediante el CT manual no se reflejan en las plantillas de la pila de CFN y provocan una desviación de la pila. Una vez que el rol se haya actualizado mediante una solicitud manual a un estado que no supere nuestras validaciones, no se podrá volver a actualizar con el Stack Update CT (ct-361tlo1k7339x) mientras siga sin cumplir con nuestras validaciones. El CT de actualización solo se puede usar si la plantilla de pila CFN cumple con nuestras validaciones. Sin embargo, la pila se puede seguir actualizando mediante el Stack Update CT (ct-361tlo1k7339x), siempre y cuando el recurso de IAM que no cumpla con nuestras validaciones no se actualice y la plantilla CFN las supere.

Eliminar las funciones de IAM creadas mediante la ingesta AWS CloudFormation

Si desea eliminar toda la pila, utilice el siguiente tipo de cambio automático de eliminación de la pila. Para obtener instrucciones, consulta Eliminar pila:

  • ID de tipo de cambio: ct-0q0bic0ywqk6c

  • Clasificación: Administración | Pilas estándar | Apilación | Eliminación y administración | Componentes de pila avanzados | Apilación | Eliminar

Si desea eliminar un rol de IAM sin eliminar toda la pila, puede eliminar el rol de IAM de la CloudFormation plantilla y utilizar la plantilla actualizada como entrada para el tipo de cambio de actualización automática de la pila:

  • ID de tipo de cambio: ct-361tlo1k7339x

  • Clasificación: Gestión | Pila personalizada | Apilación a partir de plantilla | Actualización CloudFormation

Para obtener instrucciones, consulte Actualizar la pila AWS CloudFormation de ingesta.