

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 Identity and Access Management permisos en AWS ParallelCluster
<a name="iam-roles-in-parallelcluster-v3"></a>

AWS ParallelCluster utiliza los permisos de IAM para controlar el acceso a los recursos al crear y gestionar clústeres.

**Para crear y administrar clústeres en una AWS cuenta, se AWS ParallelCluster requieren permisos en dos niveles:**
+ Permisos que el usuario de `pcluster` necesita a la hora de invocar los comandos CLI de `pcluster` para crear y administrar clústeres.
+ Permisos que los recursos del clúster requieren para realizar las acciones del clúster.

**AWS ParallelCluster utiliza** un [perfil y un rol de instancia de Amazon EC2](#iam-ec2-instance-role) para proporcionar permisos de recursos de clúster. Para administrar los permisos de los recursos del clúster, AWS ParallelCluster también necesita permisos para los recursos de IAM. Para obtener más información, consulte [AWS ParallelCluster ejemplos de políticas de usuario para administrar los recursos de IAM](#iam-roles-in-parallelcluster-v3-user-policy-manage-iam).

**Los usuarios de `pcluster` necesitan** permisos de IAM para usar la CLI [`pcluster`](pcluster-v3.md) con el fin de crear y administrar un clúster y sus recursos. Estos permisos se incluyen en las políticas de IAM que se pueden añadir a un usuario o rol. Para obtener más información sobre los roles de IAM, consulte [Creación de un rol de usuario](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) en la *Guía del usuario de IAM de AWS Identity and Access Management *.

También puede utilizar [AWS ParallelCluster parámetros de configuración para gestionar los permisos de IAM](#iam-roles-in-parallelcluster-v3-params-for-iam).

Las siguientes secciones contienen los permisos necesarios con ejemplos.

Para usar las políticas de ejemplo sustituya `<REGION>`, `<AWS ACCOUNT ID>` y las cadenas similares por los valores adecuados.

Las siguientes políticas de ejemplo incluyen Amazon Resource Names (ARNs) para los recursos. Si está trabajando en las particiones AWS GovCloud (US) o en AWS China, ARNs debe cambiarlas. En concreto, deben cambiarse de «arn:aws» a «arn:aws-us-gov» para la AWS GovCloud (US) partición o «arn:aws-cn» para la partición de China. AWS Para obtener más información, consulte [Nombres de recursos de Amazon (ARNs) en AWS GovCloud (US) las regiones](https://docs.aws.amazon.com/govcloud-us/latest/UserGuide/using-govcloud-arns.html) en la *Guía del AWS GovCloud (US) usuario* y [ARNs para obtener información sobre AWS los servicios en China](https://docs.amazonaws.cn/aws/latest/userguide/ARNs.html) en *Introducción a AWS los servicios en China*.

Puede realizar un seguimiento de los cambios en las políticas de ejemplo que aparecen en [AWS ParallelCluster la documentación sobre GitHub](https://github.com/awsdocs/aws-parallelcluster-user-guide/blame/main/doc_source/iam-roles-in-parallelcluster-v3.md).

**Topics**
+ [AWS ParallelCluster Funciones de instancia de Amazon EC2](#iam-ec2-instance-role)
+ [AWS ParallelCluster ejemplos `pcluster` de políticas de usuario](#iam-roles-in-parallelcluster-v3-example-user-policies)
+ [AWS ParallelCluster ejemplos de políticas de usuario para administrar los recursos de IAM](#iam-roles-in-parallelcluster-v3-user-policy-manage-iam)
+ [AWS ParallelCluster parámetros de configuración para gestionar los permisos de IAM](#iam-roles-in-parallelcluster-v3-params-for-iam)

## AWS ParallelCluster Funciones de instancia de Amazon EC2
<a name="iam-ec2-instance-role"></a>

Cuando crea un clúster con los ajustes de configuración predeterminados, AWS ParallelCluster utiliza los [perfiles de instancia](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) de Amazon EC2 para crear automáticamente un clúster predeterminado (rol de [instancia de Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html) que proporciona los permisos necesarios para crear y administrar el clúster y sus recursos.

### Alternativas al uso del rol de instancia predeterminado AWS ParallelCluster
<a name="iam-roles-in-parallelcluster-v3-existing-roles"></a>

En lugar del rol de AWS ParallelCluster instancia predeterminado, puede usar la configuración del `InstanceRole` clúster para especificar su propio rol de IAM existente para EC2. Para obtener más información, consulte [AWS ParallelCluster parámetros de configuración para gestionar los permisos de IAM](#iam-roles-in-parallelcluster-v3-params-for-iam). Por lo general, debe especificar los roles de IAM existentes para controlar completamente los permisos concedidos a EC2.

Si su intención es añadir políticas adicionales al rol de instancia predeterminado, le recomendamos que apruebe las políticas de IAM adicionales utilizando la configuración de [`AdditionalIamPolicies`](#iam-roles-in-parallelcluster-v3-cluster-config-additionaliampolicies) en lugar de la de [`InstanceProfile` o `InstanceRole`](#iam-roles-in-parallelcluster-v3-cluster-config-headnode-instanceprofile). Cuando actualice el clúster, puede actualizar las `AdditionalIamPolicies`, pero no el `InstanceRole`.

## AWS ParallelCluster ejemplos `pcluster` de políticas de usuario
<a name="iam-roles-in-parallelcluster-v3-example-user-policies"></a>

Los siguientes ejemplos muestran las políticas de usuario necesarias para crear AWS ParallelCluster y administrar sus recursos mediante la `pcluster` CLI. Ahora puede asociar políticas a un usuario o rol.

**Topics**
+ [Política de usuario básica `pcluster` de AWS ParallelCluster](#iam-roles-in-parallelcluster-v3-base-user-policy)
+ [Política AWS ParallelCluster `pcluster` de usuario adicional cuando se utiliza el AWS Batch programador](#iam-roles-in-parallelcluster-v3-user-policy-batch)
+ [Política AWS ParallelCluster `pcluster` de usuario adicional al utilizar Amazon FSx for Lustre](#iam-roles-in-parallelcluster-v3-user-policy-fsxlustre)
+ [AWS ParallelCluster política de `pcluster` usuario: creación de imágenes](#iam-roles-in-parallelcluster-v3-user-policy-build-image)

### Política de usuario básica `pcluster` de AWS ParallelCluster
<a name="iam-roles-in-parallelcluster-v3-base-user-policy"></a>

La siguiente política muestra los permisos necesarios para ejecutar AWS ParallelCluster `pcluster` comandos.

La última acción de la política se incluye para validar cualquier secreto especificado en la configuración del clúster. Por ejemplo, se utiliza un AWS Secrets Manager secreto para configurar la [`DirectoryService`](DirectoryService-v3.md)integración. En este caso, se crea un clúster solo si existe un secreto válido en [`PasswordSecretArn`](DirectoryService-v3.md#yaml-DirectoryService-PasswordSecretArn). Si se omite esta acción, se omite la validación del secreto. Para mejorar su postura de seguridad, le recomendamos que amplíe el alcance de esta declaración de política añadiendo únicamente los secretos especificados en la configuración del clúster.

**nota**  
Si los sistemas de archivos de Amazon EFS existentes son los únicos sistemas de archivos que se utilizan en su clúster, puede limitar las declaraciones de política de Amazon EFS de ejemplo a los sistemas de archivos específicos a los que se hace referencia en la [Sección de `SharedStorage`](SharedStorage-v3.md) del archivo de configuración del clúster.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ec2:Describe*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "EC2Read"
        },
        {
            "Action": [
                "ec2:AllocateAddress",
                "ec2:AssociateAddress",
                "ec2:AttachNetworkInterface",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateFleet",
                "ec2:CreateLaunchTemplate",
                "ec2:CreateLaunchTemplateVersion",
                "ec2:CreateNetworkInterface",
                "ec2:CreatePlacementGroup",
                "ec2:CreateSecurityGroup",
                "ec2:CreateSnapshot",
                "ec2:CreateTags",
                "ec2:DeleteTags",
                "ec2:CreateVolume",
                "ec2:DeleteLaunchTemplate",
                "ec2:DeleteNetworkInterface",
                "ec2:DeletePlacementGroup",
                "ec2:DeleteSecurityGroup",
                "ec2:DeleteVolume",
                "ec2:DisassociateAddress",
                "ec2:ModifyLaunchTemplate",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:ModifyVolume",
                "ec2:ModifyVolumeAttribute",
                "ec2:ReleaseAddress",
                "ec2:RevokeSecurityGroupEgress",
                "ec2:RevokeSecurityGroupIngress",
                "ec2:RunInstances",
                "ec2:TerminateInstances"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "EC2Write"
        },
        {
            "Action": [
                "dynamodb:DescribeTable",
                "dynamodb:ListTagsOfResource",
                "dynamodb:CreateTable",
                "dynamodb:DeleteTable",
                "dynamodb:GetItem",
                "dynamodb:PutItem",
                "dynamodb:UpdateItem",
                "dynamodb:Query",
                "dynamodb:TagResource",
                "dynamodb:UntagResource"
            ],
            "Resource": "arn:aws:dynamodb:*:111122223333:table/parallelcluster-*",
            "Effect": "Allow",
            "Sid": "DynamoDB"
        },
        {
            "Action": [
                "route53:ChangeResourceRecordSets",
                "route53:ChangeTagsForResource",
                "route53:CreateHostedZone",
                "route53:DeleteHostedZone",
                "route53:GetChange",
                "route53:GetHostedZone",
                "route53:ListResourceRecordSets",
                "route53:ListQueryLoggingConfigs"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "Route53HostedZones"
        },
        {
            "Action": [
                "cloudformation:*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "CloudFormation"
        },
        {
            "Action": [
                "cloudwatch:PutDashboard",
                "cloudwatch:ListDashboards",
                "cloudwatch:DeleteDashboards",
                "cloudwatch:GetDashboard",
                "cloudwatch:PutMetricAlarm",
                "cloudwatch:DeleteAlarms",
                "cloudwatch:DescribeAlarms",
                "cloudwatch:PutCompositeAlarm",
                "cloudwatch:TagResource",
                "cloudwatch:UntagResource"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "CloudWatch"
        },
        {
            "Action": [
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:GetPolicy",
                "iam:SimulatePrincipalPolicy",
                "iam:GetInstanceProfile"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/*",
                "arn:aws:iam::111122223333:policy/*",
                "arn:aws:iam::aws:policy/*",
                "arn:aws:iam::111122223333:instance-profile/*"
            ],
            "Effect": "Allow",
            "Sid": "IamRead"
        },
        {
            "Action": [
                "iam:CreateInstanceProfile",
                "iam:DeleteInstanceProfile",
                "iam:AddRoleToInstanceProfile",
                "iam:RemoveRoleFromInstanceProfile"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:instance-profile/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamInstanceProfile"
        },
        {
            "Condition": {
                "StringEqualsIfExists": {
                    "iam:PassedToService": [
                        "lambda.amazonaws.com",
                        "ec2.amazonaws.com",
                        "spotfleet.amazonaws.com"
                    ]
                }
            },
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamPassRole"
        },
        {
            "Action": [
                "lambda:CreateFunction",
                "lambda:DeleteFunction",
                "lambda:GetFunctionConfiguration",
                "lambda:GetFunction",
                "lambda:InvokeFunction",
                "lambda:AddPermission",
                "lambda:RemovePermission",
                "lambda:UpdateFunctionConfiguration",
                "lambda:TagResource",
                "lambda:ListTags",
                "lambda:UntagResource"
            ],
            "Resource": [
                "arn:aws:lambda:*:111122223333:function:parallelcluster-*",
                "arn:aws:lambda:*:111122223333:function:pcluster-*"
            ],
            "Effect": "Allow",
            "Sid": "Lambda"
        },
        {
            "Action": [
                "s3:*"
            ],
            "Resource": [
                "arn:aws:s3:::parallelcluster-*",
                "arn:aws:s3:::aws-parallelcluster-*"
            ],
            "Effect": "Allow",
            "Sid": "S3ResourcesBucket"
        },
        {
            "Action": [
                "s3:Get*",
                "s3:List*"
            ],
            "Resource": "arn:aws:s3:::*-aws-parallelcluster*",
            "Effect": "Allow",
            "Sid": "S3ParallelClusterReadOnly"
        },
        {
            "Action": [
                "elasticfilesystem:*"
            ],
            "Resource": [
                "arn:aws:elasticfilesystem:*:111122223333:*"
            ],
            "Effect": "Allow",
            "Sid": "EFS"
        },
        {
            "Action": [
                "logs:DeleteLogGroup",
                "logs:PutRetentionPolicy",
                "logs:DescribeLogGroups",
                "logs:CreateLogGroup",
                "logs:TagResource",
                "logs:UntagResource",
                "logs:FilterLogEvents",
                "logs:GetLogEvents",
                "logs:CreateExportTask",
                "logs:DescribeLogStreams",
                "logs:DescribeExportTasks",
                "logs:DescribeMetricFilters",
                "logs:PutMetricFilter",
                "logs:DeleteMetricFilter",
                "logs:ListTagsForResource"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "CloudWatchLogs"
        },
        {
            "Action": [
                "resource-groups:ListGroupResources"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "ResourceGroupRead"
        },
        {
            "Sid": "AllowDescribingFileCache",
            "Effect": "Allow",
            "Action": [
                "fsx:DescribeFileCaches"
            ],
            "Resource": "*"
        },
        {
            "Action": "secretsmanager:DescribeSecret",
            "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:<SECRET NAME>",
            "Effect": "Allow"
        }
    ]
}
```

------

### Política AWS ParallelCluster `pcluster` de usuario adicional cuando se utiliza el AWS Batch programador
<a name="iam-roles-in-parallelcluster-v3-user-policy-batch"></a>

En caso de que necesite crear y administrar un clúster con el AWS Batch programador, se requiere la siguiente política adicional.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Condition": {
                "StringEqualsIfExists": {
                    "iam:PassedToService": [
                        "ecs-tasks.amazonaws.com",
                        "batch.amazonaws.com",
                        "codebuild.amazonaws.com"
                    ]
                }
            },
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamPassRole"
        },
        {
            "Condition": {
                "StringEquals": {
                    "iam:AWSServiceName": [
                        "batch.amazonaws.com"
                    ]
                }
            },
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:DeleteServiceLinkedRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/aws-service-role/batch.amazonaws.com/*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "codebuild:*"
            ],
            "Resource": "arn:aws:codebuild:*:111122223333:project/pcluster-*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ecr:*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "ECR"
        },
        {
            "Action": [
                "batch:*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "Batch"
        },
        {
            "Action": [
                "events:*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "AmazonCloudWatchEvents"
        },
        {
            "Action": [
                "ecs:DescribeContainerInstances",
                "ecs:ListContainerInstances"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "ECS"
        }
    ]
}
```

------

### Política AWS ParallelCluster `pcluster` de usuario adicional al utilizar Amazon FSx for Lustre
<a name="iam-roles-in-parallelcluster-v3-user-policy-fsxlustre"></a>

En caso de que necesites crear y gestionar un clúster con Amazon FSx for Lustre, necesitarás la siguiente política adicional.

**nota**  
Si los sistemas de FSx archivos de Amazon existentes son los únicos sistemas de archivos que se utilizan en su clúster, puede reducir las declaraciones de FSx política de Amazon de ejemplo a los sistemas de archivos específicos a los que se hace referencia en el archivo [Sección de `SharedStorage`](SharedStorage-v3.md) de configuración del clúster.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Condition": {
                "StringEquals": {
                    "iam:AWSServiceName": [
                        "fsx.amazonaws.com",
                        "s3.data-source.lustre.fsx.amazonaws.com"
                    ]
                }
            },
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:DeleteServiceLinkedRole"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "fsx:*"
            ],
            "Resource": [
                "arn:aws:fsx:*:111122223333:*"
            ],
            "Effect": "Allow",
            "Sid": "FSx"
        },
        {
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:AttachRolePolicy",
                "iam:PutRolePolicy"
            ],
            "Resource": "arn:aws:iam::111122223333:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "s3:Get*",
                "s3:List*",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
            "Effect": "Allow"
        }
    ]
}
```

------

### AWS ParallelCluster política de `pcluster` usuario: creación de imágenes
<a name="iam-roles-in-parallelcluster-v3-user-policy-build-image"></a>

Los usuarios que pretendan crear imágenes de Amazon EC2 personalizadas AWS ParallelCluster deben tener el siguiente conjunto de permisos.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeImages",
                "ec2:DescribeInstanceTypeOfferings",
                "ec2:DescribeInstanceTypes",
                "ec2:DeregisterImage",
                "ec2:DeleteSnapshot"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "EC2"
        },
        {
            "Action": [
                "iam:CreateInstanceProfile",
                "iam:AddRoleToInstanceProfile",
                "iam:CreateRole",
                "iam:TagRole",
                "iam:GetRole",
                "iam:PutRolePolicy",
                "iam:GetRolePolicy",
                "iam:GetInstanceProfile",
                "iam:RemoveRoleFromInstanceProfile"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:instance-profile/parallelcluster/*",
                "arn:aws:iam::111122223333:instance-profile/ParallelClusterImage*",
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IAM"
        },
        {
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "lambda.amazonaws.com",
                        "ec2.amazonaws.com"
                    ]
                }
            },
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:instance-profile/parallelcluster/*",
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IAMPassRole"
        },
        {
            "Action": [
                "logs:GetLogEvents",
                "logs:CreateLogGroup",
                "logs:TagResource",
                "logs:UntagResource",
                "logs:DeleteLogGroup"
            ],
            "Resource": [
                "arn:aws:logs:*:111122223333:log-group:/aws/imagebuilder/ParallelClusterImage-*",
                "arn:aws:logs:*:111122223333:log-group:/aws/lambda/ParallelClusterImage-*"
            ],
            "Effect": "Allow",
            "Sid": "CloudWatch"
        },
        {
            "Action": [
                "cloudformation:DescribeStacks",
                "cloudformation:CreateStack",
                "cloudformation:DeleteStack"
            ],
            "Resource": [
                "arn:aws:cloudformation:*:111122223333:stack/*"
            ],
            "Effect": "Allow",
            "Sid": "CloudFormation"
        },
        {
            "Action": [
                "lambda:CreateFunction",
                "lambda:GetFunction",
                "lambda:AddPermission",
                "lambda:RemovePermission",
                "lambda:DeleteFunction",
                "lambda:TagResource",
                "lambda:ListTags",
                "lambda:UntagResource"
            ],
            "Resource": [
                "arn:aws:lambda:*:111122223333:function:ParallelClusterImage-*"
            ],
            "Effect": "Allow",
            "Sid": "Lambda"
        },
        {
            "Action": [
                "imagebuilder:Get*"
            ],
            "Resource": "*",
            "Effect": "Allow",
            "Sid": "ImageBuilderGet"
        },
        {
            "Action": [
                "imagebuilder:CreateImage",
                "imagebuilder:TagResource",
                "imagebuilder:CreateImageRecipe",
                "imagebuilder:CreateComponent",
                "imagebuilder:CreateDistributionConfiguration",
                "imagebuilder:CreateInfrastructureConfiguration",
                "imagebuilder:DeleteImage",
                "imagebuilder:DeleteComponent",
                "imagebuilder:DeleteImageRecipe",
                "imagebuilder:DeleteInfrastructureConfiguration",
                "imagebuilder:DeleteDistributionConfiguration"
            ],
            "Resource": [
                "arn:aws:imagebuilder:*:111122223333:image/parallelclusterimage-*",
                "arn:aws:imagebuilder:*:111122223333:image-recipe/parallelclusterimage-*",
                "arn:aws:imagebuilder:*:111122223333:component/parallelclusterimage-*",
                "arn:aws:imagebuilder:*:111122223333:distribution-configuration/parallelclusterimage-*",
                "arn:aws:imagebuilder:*:111122223333:infrastructure-configuration/parallelclusterimage-*"
            ],
            "Effect": "Allow",
            "Sid": "ImageBuilder"
        },
        {
            "Action": [
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:ListBucketVersions"
            ],
            "Resource": [
                "arn:aws:s3:::parallelcluster-*"
            ],
            "Effect": "Allow",
            "Sid": "S3Bucket"
        },
        {
            "Action": [
                "sns:GetTopicAttributes",
                "sns:TagResource",
                "sns:CreateTopic",
                "sns:Subscribe",
                "sns:Publish",
                "SNS:DeleteTopic",
                "SNS:Unsubscribe"
            ],
            "Resource": [
                "arn:aws:sns:*:111122223333:ParallelClusterImage-*"
            ],
            "Effect": "Allow",
            "Sid": "SNS"
        },
        {
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:GetObjectVersion",
                "s3:DeleteObject",
                "s3:DeleteObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::parallelcluster-*/*"
            ],
            "Effect": "Allow",
            "Sid": "S3Objects"
        },
        {
            "Action": "iam:CreateServiceLinkedRole",
            "Effect": "Allow",
            "Resource": "arn:aws:iam::*:role/aws-service-role/imagebuilder.amazonaws.com/AWSServiceRoleForImageBuilder",
            "Condition": {
                "StringLike": {
                    "iam:AWSServiceName": "imagebuilder.amazonaws.com"
                }
            }
        }
    ]
}
```

------

## AWS ParallelCluster ejemplos de políticas de usuario para administrar los recursos de IAM
<a name="iam-roles-in-parallelcluster-v3-user-policy-manage-iam"></a>

Cuando se utilizan AWS ParallelCluster para crear clústeres o personalizar AMIs, se deben proporcionar políticas de IAM que contengan permisos para conceder el conjunto de permisos necesario a AWS ParallelCluster los componentes. Estos recursos de IAM pueden crearse automáticamente AWS ParallelCluster o proporcionarse como entrada al crear un clúster o una imagen personalizada.

Puede utilizar los siguientes modos para proporcionar al AWS ParallelCluster usuario los permisos necesarios para acceder a los recursos de IAM mediante el uso de políticas de IAM adicionales en la configuración.

**Topics**
+ [Modo de acceso de IAM con privilegios](#iam-roles-in-parallelcluster-v3-privileged-iam-access)
+ [Modo de acceso de IAM restringido](#iam-roles-in-parallelcluster-v3-restricted-iam-access)
+ [Modo `PermissionsBoundary`](#iam-roles-in-parallelcluster-v3-permissionsboundary-mode)

### Modo de acceso de IAM con privilegios
<a name="iam-roles-in-parallelcluster-v3-privileged-iam-access"></a>

Con este modo, crea AWS ParallelCluster automáticamente todos los recursos de IAM necesarios. Estas políticas de IAM tienen un alcance limitado para permitir el acceso únicamente a los recursos del clúster.

Para habilitar el modo de acceso de IAM con privilegios, añada la siguiente política al rol de usuario.

**nota**  
Si configura [`AdditionalPolicies`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-AdditionalIamPolicies)los parámetros [`HeadNode`[`Iam`](HeadNode-v3.md#HeadNode-v3-Iam)](HeadNode-v3.md)/[`AdditionalPolicies`](HeadNode-v3.md#yaml-HeadNode-Iam-AdditionalIamPolicies)o [`Scheduling`](Scheduling-v3.md)//[`SlurmQueues`[`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam)](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/, debe proporcionar al AWS ParallelCluster usuario permiso para adjuntar y desvincular políticas de rol para cada política adicional, tal y como se muestra en la siguiente política. Añada la política adicional ARNs a la condición para adjuntar y separar las políticas de rol.

**aviso**  
Este modo permite al usuario tener privilegios de administrador de IAM en Cuenta de AWS

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:DeleteRole",
                "iam:TagRole",
                "iam:UntagRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamRole"
        },
        {
            "Action": [
                "iam:CreateRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamCreateRole"
        },
        {
            "Action": [
                "iam:PutRolePolicy",
                "iam:DeleteRolePolicy"
            ],
            "Resource": "arn:aws:iam::111122223333:role/parallelcluster/*",
            "Effect": "Allow",
            "Sid": "IamInlinePolicy"
        },
        {
            "Condition": {
                "ArnLike": {
                    "iam:PolicyARN": [
                        "arn:aws:iam::111122223333:policy/parallelcluster*",
                        "arn:aws:iam::111122223333:policy/parallelcluster/*",
                        "arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy",
                        "arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore",
                        "arn:aws:iam::aws:policy/AWSBatchFullAccess",
                        "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess",
                        "arn:aws:iam::aws:policy/service-role/AWSBatchServiceRole",
                        "arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role",
                        "arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy",
                        "arn:aws:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole",
                        "arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder",
                        "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
                    ]
                }
            },
            "Action": [
                "iam:AttachRolePolicy",
                "iam:DetachRolePolicy"
            ],
            "Resource": "arn:aws:iam::111122223333:role/parallelcluster/*",
            "Effect": "Allow",
            "Sid": "IamPolicy"
        }
    ]
}
```

------

### Modo de acceso de IAM restringido
<a name="iam-roles-in-parallelcluster-v3-restricted-iam-access"></a>

Cuando no se otorgan políticas de IAM adicionales al usuario, un administrador debe crear manualmente los roles de IAM requeridos por los clústeres o la creación de imágenes personalizadas y pasarlas como parte de la configuración del clúster.

Al crear un clúster, se requieren los siguientes parámetros:
+  [`Iam`](Iam-v3.md) / [`Roles`](Iam-v3.md#yaml-Iam-Roles) / [`LambdaFunctionsRole`](Iam-v3.md#yaml-Iam-Roles-LambdaFunctionsRole)
+  [`HeadNode`](HeadNode-v3.md) / [`Iam`](HeadNode-v3.md#HeadNode-v3-Iam) / [`InstanceRole`](HeadNode-v3.md#yaml-HeadNode-Iam-InstanceRole) \$1 [`InstanceProfile`](HeadNode-v3.md#yaml-HeadNode-Iam-InstanceProfile)
+  [`Scheduling`](Scheduling-v3.md) / [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam) / [`InstanceRole`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceRole) \$1 [`InstanceProfile`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceProfile)

Al crear una imagen personalizada, se requieren los siguientes parámetros:
+ [`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`InstanceRole`](Build-v3.md#yaml-build-image-Build-Iam-InstanceRole) \$1 [`InstanceProfile`](Build-v3.md#yaml-build-image-Build-Iam-InstanceProfile) 
+ [`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`CleanupLambdaRole`](Build-v3.md#yaml-build-image-Build-Iam-CleanupLambdaRole)

Los roles de IAM transferidos como parte de los parámetros mencionados anteriormente deben crearse con el prefijo de ruta `/parallelcluster/`. Si esto no es posible, es necesario actualizar la política de usuario para conceder permiso de `iam:PassRole` a los roles personalizados específicos, como en el siguiente ejemplo.

```
{
   "Condition": {
       "StringEqualsIfExists": {
           "iam:PassedToService": [
               "ecs-tasks.amazonaws.com",
               "lambda.amazonaws.com",
               "ec2.amazonaws.com",
               "spotfleet.amazonaws.com",
               "batch.amazonaws.com",
               "codebuild.amazonaws.com"
           ]
       }
   },
   "Action": [
       "iam:PassRole"
   ],
   "Resource": [
       <list all custom IAM roles>
   ],
   "Effect": "Allow",
   "Sid": "IamPassRole"
}
```

**aviso**  
Actualmente, este modo no permite la administración de AWS Batch clústeres porque no todas las funciones de IAM se pueden transferir a la configuración del clúster.

### Modo `PermissionsBoundary`
<a name="iam-roles-in-parallelcluster-v3-permissionsboundary-mode"></a>

Este modo se delega AWS ParallelCluster en la creación de funciones de IAM vinculadas al límite de permisos de IAM configurado. Para obtener más información sobre los límites de los permisos de IAM, consulte [Límites de permisos para las entidades de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) en la *Guía del usuario de IAM*.

Se debe agregar la siguiente política al rol de usuario.

En la política, *<permissions-boundary-arn>* sustitúyala por el ARN de la política de IAM para que se aplique como límite de permisos.

**aviso**  
Si configura los parámetros [`HeadNode`](HeadNode-v3.md)/[`Iam`](HeadNode-v3.md#HeadNode-v3-Iam)/[`AdditionalPolicies`](HeadNode-v3.md#yaml-HeadNode-Iam-AdditionalIamPolicies) o [`Scheduling`](Scheduling-v3.md)/[`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam)/[`AdditionalPolicies`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-AdditionalIamPolicies), debe conceder al usuario permiso para asociar y desvincular políticas de rol para cada política adicional, tal y como se muestra en la siguiente política. Añada la política adicional ARNs a la condición para adjuntar y separar las políticas de roles.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:CreateServiceLinkedRole",
                "iam:DeleteRole",
                "iam:TagRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamRole"
        },
        {
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": [
                        "<permissions-boundary-arn>"
                    ]
                }
            },
            "Action": [
                "iam:CreateRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/parallelcluster/*"
            ],
            "Effect": "Allow",
            "Sid": "IamCreateRole"
        },
        {
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": [
                        "<permissions-boundary-arn>"
                    ]
                }
            },
            "Action": [
                "iam:PutRolePolicy",
                "iam:DeleteRolePolicy"
            ],
            "Resource": "arn:aws:iam::111122223333:role/parallelcluster/*",
            "Effect": "Allow",
            "Sid": "IamInlinePolicy"
        },
        {
            "Condition": {
                "StringEquals": {
                    "iam:PermissionsBoundary": [
                        "<permissions-boundary-arn>"
                    ]
                },
                "ArnLike": {
                    "iam:PolicyARN": [
                        "arn:aws:iam::111122223333:policy/parallelcluster*",
                        "arn:aws:iam::111122223333:policy/parallelcluster/*",
                        "arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy",
                        "arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore",
                        "arn:aws:iam::aws:policy/AWSBatchFullAccess",
                        "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess",
                        "arn:aws:iam::aws:policy/service-role/AWSBatchServiceRole",
                        "arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role",
                        "arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy",
                        "arn:aws:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole",
                        "arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder",
                        "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
                    ]
                }
            },
            "Action": [
                "iam:AttachRolePolicy",
                "iam:DetachRolePolicy"
            ],
            "Resource": "arn:aws:iam::111122223333:role/parallelcluster/*",
            "Effect": "Allow",
            "Sid": "IamPolicy"
        }
    ]
}
```

------

Cuando este modo está habilitado, debe especificar el ARN del límite de permisos en el parámetro de configuración [`Iam`](Iam-v3.md)/[`PermissionsBoundary`](Iam-v3.md#yaml-Iam-PermissionsBoundary) al crear o actualizar un clúster y en el parámetro [`Build`](Build-v3.md)/[`Iam`](Build-v3.md#Build-v3-Iam)/[`PermissionBoundary`](Build-v3.md#yaml-build-image-Build-Iam-PermissionsBoundary) al crear una imagen personalizada.

## AWS ParallelCluster parámetros de configuración para gestionar los permisos de IAM
<a name="iam-roles-in-parallelcluster-v3-params-for-iam"></a>

AWS ParallelCluster expone una serie de opciones de configuración para personalizar y administrar los permisos y funciones de IAM que se utilizan en un clúster o durante el proceso de creación de una AMI personalizada.

**Topics**
+ [Configuración del clúster](#iam-roles-in-parallelcluster-v3-cluster-config)
+ [Configuración de imagen personalizada](#iam-roles-in-parallelcluster-v3-custom-image-configuration)

### Configuración del clúster
<a name="iam-roles-in-parallelcluster-v3-cluster-config"></a>

**Topics**
+ [Rol de IAM del nodo principal](#iam-roles-in-parallelcluster-v3-cluster-config-headnode-instanceprofile)
+ [Acceso a Amazon S3](#iam-roles-in-parallelcluster-v3-cluster-config-headnode-s3access)
+ [Políticas de IAM adicionales](#iam-roles-in-parallelcluster-v3-cluster-config-additionaliampolicies)
+ [AWS Lambda función: rol](#iam-roles-in-parallelcluster-v3-cluster-config-lambdafunctionsrole)
+ [Rol de IAM de nodos de computación](#iam-roles-in-parallelcluster-v3-cluster-config-slurmqueues-instanceprofile)
+ [Límite de permisos](#iam-roles-in-parallelcluster-v3-cluster-config-permissionsboundary)

#### Rol de IAM del nodo principal
<a name="iam-roles-in-parallelcluster-v3-cluster-config-headnode-instanceprofile"></a>

[`HeadNode`](HeadNode-v3.md) / [`Iam`](HeadNode-v3.md#HeadNode-v3-Iam) / [`InstanceRole`](HeadNode-v3.md#yaml-HeadNode-Iam-InstanceRole) \$1 [`InstanceProfile`](HeadNode-v3.md#yaml-HeadNode-Iam-InstanceProfile)

Con esta opción, se anula el rol de IAM predeterminado que se asigna al nodo principal del clúster. Para obtener más información, consulte la referencia del [`InstanceProfile`](HeadNode-v3.md#yaml-HeadNode-Iam-InstanceProfile).

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol cuando el programador sea Slurm:
+ Política de IAM administrada por `arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy`. Para obtener más información, consulte [Crear roles y usuarios de IAM para usarlos con el CloudWatch agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html) en la *Guía del CloudWatch usuario de Amazon*.
+ Política de IAM administrada por `arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore`. Para obtener más información, consulte [Políticas administradas por AWS para AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/security_iam_service-with-iam.html#managed-policies) en la *Guía del usuario de AWS Systems Manager *.
+ Política de IAM adicional:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Action": [
                  "s3:GetObject",
                  "s3:GetObjectVersion"
              ],
              "Resource": [
                  "arn:aws:s3:::us-east-1-aws-parallelcluster/*",
                  "arn:aws:s3:::dcv-license.us-east-1/*",
                  "arn:aws:s3:::parallelcluster-*-v1-do-not-delete/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "dynamodb:GetItem",
                  "dynamodb:PutItem",
                  "dynamodb:UpdateItem",
                  "dynamodb:BatchWriteItem",
                  "dynamodb:BatchGetItem"
              ],
              "Resource": "arn:aws:dynamodb:us-east-1:111122223333:table/parallelcluster-*",
              "Effect": "Allow"
          },
          {
              "Condition": {
                  "StringEquals": {
                      "ec2:ResourceTag/parallelcluster:node-type": "Compute"
                  }
              },
              "Action": "ec2:TerminateInstances",
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "ec2:RunInstances",
                  "ec2:CreateFleet"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Condition": {
                  "StringEquals": {
                      "iam:PassedToService": [
                          "ec2.amazonaws.com"
                      ]
                  }
              },
              "Action": [
                  "iam:PassRole"
              ],
              "Resource": [
                  "arn:aws:iam::111122223333:role/parallelcluster/*",
                  "arn:aws:iam::111122223333:instance-profile/parallelcluster/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "ec2:DescribeInstances",
                  "ec2:DescribeInstanceStatus",
                  "ec2:DescribeVolumes",
                  "ec2:DescribeInstanceAttribute",
                  "ec2:DescribeCapacityReservations"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "ec2:CreateTags",
                  "ec2:AttachVolume"
              ],
              "Resource": [
                  "arn:aws:ec2:us-east-1:111122223333:instance/*",
                  "arn:aws:ec2:us-east-1:111122223333:volume/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "cloudformation:DescribeStacks",
                  "cloudformation:DescribeStackResource",
                  "cloudformation:SignalResource"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "route53:ChangeResourceRecordSets"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": "secretsmanager:GetSecretValue",
              "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:<SECRET_ID>",
              "Effect": "Allow"
          }
      ]
  }
  ```

------

Tenga en cuenta que, en caso de que se utilice [`Scheduling`](Scheduling-v3.md)/[`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam)/[`InstanceRole`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceRole) para anular el rol de IAM de computación, la política del nodo principal descrita anteriormente debe incluir dicho rol en la sección `Resource` del permiso `iam:PassRole`.

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol cuando el programador sea AWS Batch:
+ Política de IAM administrada por `arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy`. Para obtener más información, consulte [Crear roles y usuarios de IAM para usarlos con el CloudWatch agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html) en la *Guía del CloudWatch usuario de Amazon*.
+ Política de IAM administrada por `arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore`. Para obtener más información, consulte [Políticas administradas por AWS para AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/security_iam_service-with-iam.html#managed-policies) en la *Guía del usuario de AWS Systems Manager *.
+ Política de IAM adicional:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Action": [
                  "s3:GetObject",
                  "s3:PutObject",
                  "s3:GetObjectVersion"
              ],
              "Resource": [
                  "arn:aws:s3:::parallelcluster-*-v1-do-not-delete/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": "s3:GetObject",
              "Resource": [
                  "arn:aws:s3:::dcv-license.us-east-1/*",
                  "arn:aws:s3:::us-east-1-aws-parallelcluster/*"
              ],
              "Effect": "Allow"
          },
          {
              "Condition": {
                  "StringEquals": {
                      "iam:PassedToService": [
                          "batch.amazonaws.com"
                      ]
                  }
              },
              "Action": [
                  "iam:PassRole"
              ],
              "Resource": [
                  "arn:aws:iam::111122223333:role/parallelcluster/*",
                  "arn:aws:iam::111122223333:instance-profile/parallelcluster/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "batch:DescribeJobQueues",
                  "batch:DescribeJobs",
                  "batch:ListJobs",
                  "batch:DescribeComputeEnvironments"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "batch:SubmitJob",
                  "batch:TerminateJob",
                  "logs:GetLogEvents",
                  "ecs:ListContainerInstances",
                  "ecs:DescribeContainerInstances"
              ],
              "Resource": [
                  "arn:aws:logs:us-east-1:111122223333:log-group:/aws/batch/job:log-stream:PclusterJobDefinition*",
                  "arn:aws:ecs:us-east-1:111122223333:container-instance/AWSBatch-PclusterComputeEnviron*",
                  "arn:aws:ecs:us-east-1:111122223333:cluster/AWSBatch-Pcluster*",
                  "arn:aws:batch:us-east-1:111122223333:job-queue/PclusterJobQueue*",
                  "arn:aws:batch:us-east-1:111122223333:job-definition/PclusterJobDefinition*:*",
                  "arn:aws:batch:us-east-1:111122223333:job/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "ec2:DescribeInstances",
                  "ec2:DescribeInstanceStatus",
                  "ec2:DescribeVolumes",
                  "ec2:DescribeInstanceAttribute"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "ec2:CreateTags",
                  "ec2:AttachVolume"
              ],
              "Resource": [
                  "arn:aws:ec2:us-east-1:111122223333:instance/*",
                  "arn:aws:ec2:us-east-1:111122223333:volume/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": [
                  "cloudformation:DescribeStackResource",
                  "cloudformation:DescribeStacks",
                  "cloudformation:SignalResource"
              ],
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": "secretsmanager:GetSecretValue",
              "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:<SECRET_ID>",
              "Effect": "Allow"
          }
      ]
  }
  ```

------

#### Acceso a Amazon S3
<a name="iam-roles-in-parallelcluster-v3-cluster-config-headnode-s3access"></a>

[`HeadNode`](HeadNode-v3.md)/[`Iam`](HeadNode-v3.md#HeadNode-v3-Iam)/[`S3Access`](HeadNode-v3.md#yaml-HeadNode-Iam-S3Access) o [`Scheduling`](Scheduling-v3.md)/[`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`S3Access`](HeadNode-v3.md#yaml-HeadNode-Iam-S3Access)

En estas secciones de configuración, puede personalizar el acceso a Amazon S3 mediante la concesión de políticas de Amazon S3 adicionales a los roles de IAM asociados al nodo principal o a los nodos de computación del clúster cuando dichos roles los cree AWS ParallelCluster. Consulte la documentación de referencia de cada parámetro de configuración para obtener más información.

Este parámetro solo se puede usar cuando el usuario está configurado con [Modo de acceso de IAM con privilegios](#iam-roles-in-parallelcluster-v3-privileged-iam-access) o [Modo `PermissionsBoundary`](#iam-roles-in-parallelcluster-v3-permissionsboundary-mode).

#### Políticas de IAM adicionales
<a name="iam-roles-in-parallelcluster-v3-cluster-config-additionaliampolicies"></a>

[`HeadNode`](HeadNode-v3.md)/[`Iam`](HeadNode-v3.md#HeadNode-v3-Iam)/[`AdditionalIamPolicies`](HeadNode-v3.md#yaml-HeadNode-Iam-AdditionalIamPolicies) o [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/[`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam)/[`AdditionalIamPolicies`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-AdditionalIamPolicies)

Utilice esta opción para adjuntar políticas de IAM administradas adicionales a las funciones de IAM asociadas al nodo principal o a los nodos de cómputo del clúster cuando dichas funciones las cree. AWS ParallelCluster

**aviso**  
Para utilizar esta opción, asegúrese de que se concedan al [usuario de AWS ParallelCluster](#iam-roles-in-parallelcluster-v3-user-policy-manage-iam) los permisos `iam:AttachRolePolicy` y `iam:DetachRolePolicy` necesarios para las políticas de IAM que se deben asociar.

#### AWS Lambda función: rol
<a name="iam-roles-in-parallelcluster-v3-cluster-config-lambdafunctionsrole"></a>

[`Iam`](Iam-v3.md#yaml-Iam-Roles) / [`Roles`](Iam-v3.md#yaml-Iam-Roles) / [`LambdaFunctionsRole`](Iam-v3.md#yaml-Iam-Roles-LambdaFunctionsRole)

Esta opción anula la función asociada a todas AWS Lambda las funciones que se utilizan durante el proceso de creación del clúster. AWS Lambda debe configurarse como el principal autorizado a asumir el rol.

**nota**  
Si se establece [`DeploymentSettings`](DeploymentSettings-cluster-v3.md)/[`LambdaFunctionsVpcConfig`](DeploymentSettings-cluster-v3.md#DeploymentSettings-cluster-v3-LambdaFunctionsVpcConfig)/, `LambdaFunctionsRole` debe incluir el [permiso de rol de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html#vpc-permissions) para establecer la configuración de la VPC.

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "route53:ListResourceRecordSets",
                "route53:ChangeResourceRecordSets"
            ],
            "Resource": "arn:aws:route53:::hostedzone/*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:/aws/lambda/pcluster-*"
        },
        {
            "Action": "ec2:DescribeInstances",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "ec2:TerminateInstances",
            "Condition": {
                "StringEquals": {
                    "ec2:ResourceTag/parallelcluster:node-type": "Compute"
                }
            },
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "s3:DeleteObject",
                "s3:DeleteObjectVersion",
                "s3:ListBucket",
                "s3:ListBucketVersions"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::parallelcluster-*-v1-do-not-delete",
                "arn:aws:s3:::parallelcluster-*-v1-do-not-delete/*"
            ]
        }
    ]
}
```

------

#### Rol de IAM de nodos de computación
<a name="iam-roles-in-parallelcluster-v3-cluster-config-slurmqueues-instanceprofile"></a>

[`Scheduling`](Scheduling-v3.md) / [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`Iam`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Iam) / [` InstanceRole`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceRole) \$1 [`InstanceProfile`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceProfile)

Esta opción permite anular el rol de IAM que se asigna a los nodos de computación del clúster. Para obtener más información, consulte [`InstanceProfile`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Iam-InstanceProfile).

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol:
+ Política de IAM administrada por `arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy`. Para obtener más información, consulte [Crear roles y usuarios de IAM para usarlos con el CloudWatch agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html) en la *Guía del CloudWatch usuario de Amazon*.
+ Política de IAM administrada por `arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore`. Para obtener más información, consulte [Políticas administradas por AWS para AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/security_iam_service-with-iam.html#managed-policies) en la *Guía del usuario de AWS Systems Manager *.
+ Política de IAM adicional:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Action": [
                  "dynamodb:Query",
                  "dynamodb:UpdateItem",
                  "dynamodb:PutItem",
                  "dynamodb:GetItem"
              ],
              "Resource": "arn:aws:dynamodb:us-east-1:111122223333:table/parallelcluster-*",
              "Effect": "Allow"
          },
          {
              "Action": "s3:GetObject",
              "Resource": [
                  "arn:aws:s3:::us-east-1-aws-parallelcluster/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": "ec2:DescribeInstanceAttribute",
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": "cloudformation:DescribeStackResource",
              "Resource": [
                  "arn:aws:cloudformation:us-east-1:111122223333:stack/*/*"
              ],
              "Effect": "Allow"
          }
      ]
  }
  ```

------

#### Límite de permisos
<a name="iam-roles-in-parallelcluster-v3-cluster-config-permissionsboundary"></a>

[`Iam`](Iam-v3.md) / [`PermissionsBoundary`](Iam-v3.md#yaml-Iam-PermissionsBoundary)

Este parámetro obliga AWS ParallelCluster a adjuntar la política de IAM en cuestión como `PermissionsBoundary` a todas las funciones de IAM que se crean como parte de la implementación de un clúster.

Consulte [Modo `PermissionsBoundary`](#iam-roles-in-parallelcluster-v3-permissionsboundary-mode) para conocer la lista de políticas que requiere el usuario cuando se define esta configuración.

### Configuración de imagen personalizada
<a name="iam-roles-in-parallelcluster-v3-custom-image-configuration"></a>

**Topics**
+ [Rol de instancia para Generador de imágenes de EC2](#iam-roles-in-parallelcluster-v3-custom-image-configuration-instancerole)
+ [AWS Lambda función de limpieza](#iam-roles-in-parallelcluster-v3-custom-image-configuration-cleanuplambdarole)
+ [Políticas de IAM adicionales](#iam-roles-in-parallelcluster-v3-custom-image-configuration-additionaliampolicies)
+ [Límite de permisos](#iam-roles-in-parallelcluster-v3-custom-image-configuration-permissionsboundary)

#### Rol de instancia para Generador de imágenes de EC2
<a name="iam-roles-in-parallelcluster-v3-custom-image-configuration-instancerole"></a>

[`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`InstanceRole`](Build-v3.md#yaml-build-image-Build-Iam-InstanceRole) \$1 [`InstanceProfile`](Build-v3.md#yaml-build-image-Build-Iam-InstanceProfile)

Con esta opción, anula el rol de IAM asignado a la instancia de Amazon EC2 lanzada por Generador de imágenes de EC2 para crear una AMI personalizada.

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol:
+ Política de IAM administrada por `arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore`. Para obtener más información, consulte [Políticas administradas por AWS para AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/security_iam_service-with-iam.html#managed-policies) en la *Guía del usuario de AWS Systems Manager *.
+ Política de IAM administrada por `arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder`. Para obtener más información, consulte la [política de `EC2InstanceProfileForImageBuilder`](https://docs.aws.amazon.com/imagebuilder/latest/userguide/security-iam-awsmanpol.html#sec-iam-manpol-EC2InstanceProfileForImageBuilder) en la *Guía del usuario de Generador de imágenes*.
+ Política de IAM adicional:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Action": [
                  "ec2:CreateTags",
                  "ec2:ModifyImageAttribute"
              ],
              "Resource": "arn:aws:ec2:us-east-1::image/*",
              "Effect": "Allow"
          }
      ]
  }
  ```

------

#### AWS Lambda función de limpieza
<a name="iam-roles-in-parallelcluster-v3-custom-image-configuration-cleanuplambdarole"></a>

[`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`CleanupLambdaRole`](Build-v3.md#yaml-build-image-Build-Iam-CleanupLambdaRole)

Esta opción anula la función asociada a todas AWS Lambda las funciones que se utilizan durante el proceso de creación de imágenes personalizadas. AWS Lambda debe configurarse como el principal autorizado a asumir el rol.

**nota**  
Si se establece [`DeploymentSettings`](DeploymentSettings-build-image-v3.md)/[`LambdaFunctionsVpcConfig`](DeploymentSettings-build-image-v3.md#DeploymentSettings-build-image-v3-LambdaFunctionsVpcConfig)/, `CleanupLambdaRole` debe incluir el [permiso de rol de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html#vpc-permissions) para establecer la configuración de la VPC.

Este es el conjunto mínimo de políticas que se utilizarán como parte de este rol:
+ Política de IAM administrada por `arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole`. Para obtener más información, consulte [las políticas administradas por AWS para las características de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html#permissions-executionrole-features) en la *Guía para desarrolladores de AWS Lambda *.
+ Política de IAM adicional:

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Action": [
                  "iam:DetachRolePolicy",
                  "iam:DeleteRole",
                  "iam:DeleteRolePolicy"
              ],
              "Resource": "arn:aws:iam::111122223333:role/parallelcluster/*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "iam:DeleteInstanceProfile",
                  "iam:RemoveRoleFromInstanceProfile"
              ],
              "Resource": "arn:aws:iam::111122223333:instance-profile/parallelcluster/*",
              "Effect": "Allow"
          },
          {
              "Action": "imagebuilder:DeleteInfrastructureConfiguration",
              "Resource": "arn:aws:imagebuilder:us-east-1:111122223333:infrastructure-configuration/parallelclusterimage-*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "imagebuilder:DeleteComponent"
              ],
              "Resource": [
                  "arn:aws:imagebuilder:us-east-1:111122223333:component/parallelclusterimage-*/*"
              ],
              "Effect": "Allow"
          },
          {
              "Action": "imagebuilder:DeleteImageRecipe",
              "Resource": "arn:aws:imagebuilder:us-east-1:111122223333:image-recipe/parallelclusterimage-*/*",
              "Effect": "Allow"
          },
          {
              "Action": "imagebuilder:DeleteDistributionConfiguration",
              "Resource": "arn:aws:imagebuilder:us-east-1:111122223333:distribution-configuration/parallelclusterimage-*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "imagebuilder:DeleteImage",
                  "imagebuilder:GetImage",
                  "imagebuilder:CancelImageCreation"
              ],
              "Resource": "arn:aws:imagebuilder:us-east-1:111122223333:image/parallelclusterimage-*/*",
              "Effect": "Allow"
          },
          {
              "Action": "cloudformation:DeleteStack",
              "Resource": "arn:aws:cloudformation:us-east-1:111122223333:stack/*/*",
              "Effect": "Allow"
          },
          {
              "Action": "ec2:CreateTags",
              "Resource": "arn:aws:ec2:us-east-1::image/*",
              "Effect": "Allow"
          },
          {
              "Action": "tag:TagResources",
              "Resource": "*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "lambda:DeleteFunction",
                  "lambda:RemovePermission"
              ],
              "Resource": "arn:aws:lambda:us-east-1:111122223333:function:ParallelClusterImage-*",
              "Effect": "Allow"
          },
          {
              "Action": "logs:DeleteLogGroup",
              "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:/aws/lambda/ParallelClusterImage-*:*",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "SNS:GetTopicAttributes",
                  "SNS:DeleteTopic",
                  "SNS:GetSubscriptionAttributes",
                  "SNS:Unsubscribe"
              ],
              "Resource": "arn:aws:sns:us-east-1:111122223333:ParallelClusterImage-*",
              "Effect": "Allow"
          }
      ]
  }
  ```

------

#### Políticas de IAM adicionales
<a name="iam-roles-in-parallelcluster-v3-custom-image-configuration-additionaliampolicies"></a>

[`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`AdditionalIamPolicies`](Build-v3.md#yaml-build-image-Build-Iam-AdditionalIamPolicies)

Utilice esta opción para asociar políticas de IAM administradas adicionales al rol relacionado con la instancia de Amazon EC2 utilizada por Generador de imágenes de EC2 para generar la AMI personalizada.

**aviso**  
Para utilizar esta opción, asegúrese de que se concedan al [usuario de AWS ParallelCluster](#iam-roles-in-parallelcluster-v3-user-policy-manage-iam) los permisos `iam:AttachRolePolicy` y `iam:DetachRolePolicy` necesarios para las políticas de IAM que se deben asociar.

#### Límite de permisos
<a name="iam-roles-in-parallelcluster-v3-custom-image-configuration-permissionsboundary"></a>

[`Build`](Build-v3.md) / [`Iam`](Build-v3.md#Build-v3-Iam) / [`PermissionsBoundary`](Build-v3.md#yaml-build-image-Build-Iam-PermissionsBoundary)

Este parámetro obliga AWS ParallelCluster a adjuntar la política de IAM dada `PermissionsBoundary` a todas las funciones de IAM que se crean como parte de la compilación de AMI personalizada.

Consulte [Modo `PermissionsBoundary`](#iam-roles-in-parallelcluster-v3-permissionsboundary-mode) para conocer la lista de políticas necesarias para utilizar dicha funcionalidad.