AWS ejemplos de políticas del servicio de inyección de errores - AWS Servicio de inyección de averías

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.

AWS ejemplos de políticas del servicio de inyección de errores

De forma predeterminada, los usuarios y los roles no tienen permiso para crear o modificar AWS FISrecursos. Tampoco pueden realizar tareas mediante el AWS Management Console, AWS Command Line Interface (AWS CLI), o AWS API. Para conceder a los usuarios permiso para realizar acciones en los recursos que necesitan, un IAM administrador puede crear IAM políticas. A continuación, el administrador puede añadir las IAM políticas a las funciones y los usuarios pueden asumir las funciones.

Para obtener información sobre cómo crear una política IAM basada en la identidad mediante estos documentos de JSON política de ejemplo, consulte Creación de IAM políticas en la Guía del IAMusuario.

Para obtener información detallada sobre las acciones y los tipos de recursos definidos por AWS FIS, incluido el formato de cada uno ARNs de los tipos de recursos, consulte Acciones, recursos y claves de condición para AWS El servicio de inyección de errores en la referencia de autorización del servicio.

Prácticas recomendadas sobre las políticas

Las políticas basadas en la identidad determinan si alguien puede crear, acceder o eliminar AWS FISrecursos de su cuenta. Estas acciones pueden suponer costes para su Cuenta de AWS. Al crear o editar políticas basadas en la identidad, siga estas directrices y recomendaciones:

  • Comience con AWS políticas gestionadas y avance hacia los permisos con los privilegios mínimos: para empezar a conceder permisos a sus usuarios y cargas de trabajo, utilice la AWS políticas gestionadas que conceden permisos para muchos casos de uso habituales. Están disponibles en su Cuenta de AWS. Le recomendamos que reduzca aún más los permisos definiendo AWS políticas gestionadas por el cliente que sean específicas para sus casos de uso. Para obtener más información, consulte AWS políticas gestionadas o AWS políticas gestionadas para las funciones laborales en la Guía IAM del usuario.

  • Aplique permisos con privilegios mínimos: cuando establezca permisos con IAM políticas, conceda solo los permisos necesarios para realizar una tarea. Para ello, debe definir las acciones que se pueden llevar a cabo en determinados recursos en condiciones específicas, también conocidos como permisos de privilegios mínimos. Para obtener más información sobre cómo IAM aplicar permisos, consulte Políticas y permisos IAM en la IAM Guía del usuario.

  • Utilice las condiciones en IAM las políticas para restringir aún más el acceso: puede añadir una condición a sus políticas para limitar el acceso a las acciones y los recursos. Por ejemplo, puede escribir una condición de política para especificar que todas las solicitudes deben enviarse medianteSSL. También puede utilizar condiciones para conceder el acceso a las acciones del servicio si se utilizan a través de un procedimiento específico Servicio de AWS, como, por ejemplo, AWS CloudFormation. Para obtener más información, consulte los elementos IAM JSON de la política: Condición en la Guía del IAM usuario.

  • Utilice IAM Access Analyzer para validar sus IAM políticas y garantizar permisos seguros y funcionales: IAM Access Analyzer valida las políticas nuevas y existentes para que se ajusten al lenguaje de las políticas (JSON) y IAM a las IAM mejores prácticas. IAMAccess Analyzer proporciona más de 100 comprobaciones de políticas y recomendaciones prácticas para ayudarle a crear políticas seguras y funcionales. Para obtener más información, consulte la validación de políticas de IAM Access Analyzer en la Guía del IAM usuario.

  • Requerir autenticación multifactorial (MFA): si tiene un escenario que requiere IAM usuarios o un usuario raíz en su Cuenta de AWS, actívala MFA para mayor seguridad. Para solicitarlo MFA cuando se cancelen API las operaciones, añada MFA condiciones a sus políticas. Para obtener más información, consulte Configuración del API acceso MFA protegido en la Guía del IAM usuario.

Para obtener más información sobre las prácticas recomendadasIAM, consulte las prácticas recomendadas de seguridad IAM en la Guía del IAM usuario.

Ejemplo: utilice el AWS FISconsola

Para acceder a la AWS En la consola del Servicio de Inyección de Fallos, debe tener un conjunto mínimo de permisos. Estos permisos deben permitirle enumerar y ver detalles sobre AWS FISrecursos en su Cuenta de AWS. Si creas una política basada en la identidad que sea más restrictiva que los permisos mínimos requeridos, la consola no funcionará según lo previsto para las entidades (usuarios o roles) que cuenten con esa política.

No es necesario que concedas permisos mínimos de consola a los usuarios que solo realizan llamadas al AWS CLI o el AWS API. En su lugar, permita el acceso únicamente a las acciones que coincidan con la API operación que están intentando realizar.

El siguiente ejemplo de política otorga permiso para enumerar y ver todas AWS FISrecursos mediante AWS FISconsola, pero no para crearlos, actualizarlos o eliminarlos. También otorga permisos para ver los recursos disponibles que utilizan todos AWS FISacciones que puede especificar en una plantilla de experimento.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FISReadOnlyActions", "Effect": "Allow", "Action": [ "fis:List*", "fis:Get*" ], "Resource": "*" }, { "Sid": "AdditionalReadOnlyActions", "Effect": "Allow", "Action": [ "ssm:Describe*", "ssm:Get*", "ssm:List*", "ec2:DescribeInstances", "rds:DescribeDBClusters", "ecs:DescribeClusters", "ecs:ListContainerInstances", "eks:DescribeNodegroup", "cloudwatch:DescribeAlarms", "iam:ListRoles" ], "Resource": "*" }, { "Sid": "PermissionsToCreateServiceLinkedRole", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "fis.amazonaws.com" } } } ] }

Ejemplo: lista disponible AWS FISacciones

La siguiente política otorga permiso para enumerar las disponibles AWS FISacciones.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "fis:ListActions" ], "Resource": "arn:aws:fis:*:*:action/*" } ] }

Ejemplo: Creación de una plantilla de experimento para una acción específica

La siguiente política concede permiso para crear una plantilla de experimento para la acción aws:ec2:stop-instances.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PolicyExample", "Effect": "Allow", "Action": [ "fis:CreateExperimentTemplate" ], "Resource": [ "arn:aws:fis:*:*:action/aws:ec2:stop-instances", "arn:aws:fis:*:*:experiment-template/*" ] }, { "Sid": "PolicyPassRoleExample", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::account-id:role/role-name" ] } ] }

Ejemplo: Inicio de un experimento

La siguiente política concede permiso para iniciar un experimento con el IAM rol y la plantilla de experimento especificados. También permite AWS FIScrear un rol vinculado a un servicio en nombre del usuario. Para obtener más información, consulte Utilice funciones vinculadas al servicio para AWS Servicio de inyección de errores.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PolicyExample", "Effect": "Allow", "Action": [ "fis:StartExperiment" ], "Resource": [ "arn:aws:fis:*:*:experiment-template/experiment-template-id", "arn:aws:fis:*:*:experiment/*" ] }, { "Sid": "PolicyExampleforServiceLinkedRole", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "fis.amazonaws.com" } } } ] }

Ejemplo: Uso de etiquetas para controlar el uso de recursos

La siguiente política concede permiso para ejecutar experimentos a partir de plantillas de experimentos que tengan la etiqueta Purpose=Test. No concede permiso para crear o modificar plantillas de experimentos, ni para ejecutar experimentos con plantillas que no tengan la etiqueta especificada.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment-template/*", "Condition": { "StringEquals": { "aws:ResourceTag/Purpose": "Test" } } } ] }

Ejemplo: Eliminación de una plantilla de experimento con una etiqueta específica

La siguiente política concede permiso para eliminar una plantilla de experimento con la etiqueta Purpose=Test.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "fis:DeleteExperimentTemplate" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Purpose": "Test" } } } ] }

Ejemplo: Permitir que los usuarios vean sus propios permisos

En este ejemplo se muestra cómo se puede crear una política que permita a IAM los usuarios ver las políticas integradas y administradas asociadas a su identidad de usuario. Esta política incluye permisos para completar esta acción en la consola o mediante programación mediante el AWS CLI o AWS API.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Ejemplo: utilice claves de condición para ec2:InjectApiError

La siguiente política de ejemplo utiliza la clave de condición ec2:FisTargetArns para determinar el alcance de los recursos de destino. Esta política permite AWS FISacciones aws:ec2:api-insufficient-instance-capacity-error yaws:ec2:asg-insufficient-instance-capacity-error.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:InjectApiError", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "ec2:FisActionId": [ "aws:ec2:api-insufficient-instance-capacity-error", ], "ec2:FisTargetArns": [ "arn:aws:iam:*:*:role:role-name" ] } } }, { "Effect": "Allow", "Action": "ec2:InjectApiError", "Resource": "*", "Condition": { "ForAllValues:StringEquals": { "ec2:FisActionId": [ "aws:ec2:asg-insufficient-instance-capacity-error" ], "ec2:FisTargetArns": [ "arn:aws:autoscaling:*:*:autoScalingGroup:uuid:autoScalingGroupName/asg-name" ] } } }, { "Effect": "Allow", "Action": "autoscaling:DescribeAutoScalingGroups", "Resource": "*" } ] }

Ejemplo: utilizar claves de condición para aws:s3:bucket-pause-replication

El siguiente ejemplo de política usa la clave de S3:IsReplicationPauseRequest condición para permitir PutReplicationConfiguration y GetReplicationConfiguration solo cuando la usa AWS FISen el contexto de AWS FISacciónaws:s3:bucket-pause-replication.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "S3:PauseReplication" ], "Resource": "arn:aws:s3:::mybucket", "Condition": { "StringEquals": { "s3:DestinationRegion": "region" } } }, { "Effect": "Allow", "Action": [ "S3:PutReplicationConfiguration", "S3:GetReplicationConfiguration" ], "Resource": "arn:aws:s3:::mybucket", "Condition": { "BoolIfExists": { "s3:IsReplicationPauseRequest": "true" } } }, { "Effect": "Allow", "Action": [ "S3:ListBucket" ], "Resource": "arn:aws:s3:::*" }, { "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": "*" } ] }