

# Paso 1: Crear una política de IAM para el servicio AWS Glue
<a name="create-service-policy"></a>

Para cualquier operación que obtenga acceso a datos que estén en otro recurso de AWS, como el acceso a sus objetos en Amazon S3, AWS Glue necesita permiso para obtener acceso al recurso en su nombre. Estos permisos los concede utilizando AWS Identity and Access Management (IAM). 

**nota**  
Puede omitir este paso si utiliza la política administrada de AWS, `AWSGlueServiceRole`.

En este paso, crea una política que es similar a `AWSGlueServiceRole`. Puede encontrar la versión más actualizada de `AWSGlueServiceRole` en la consola de IAM.

**Para crear una política de IAM para AWS Glue**

Esta política concede permiso para que algunas acciones de Amazon S3 administren recursos de su cuenta que AWS Glue necesita cuando asume el rol con esta política. Algunos de los recursos especificados en esta política hacen referencia a nombres predeterminados que AWS Glue utiliza para buckets de Amazon S3, scripts de ETL de Amazon S3, CloudWatch Logs y recursos de Amazon EC2. De forma predeterminada y para mayor simplicidad, AWS Glue escribe algunos objetos de Amazon S3 en buckets de su cuenta con el prefijo `aws-glue-*`.

1. Inicie sesión en Consola de administración de AWS y abra la consola IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación izquierdo, elija **Políticas**.

1. Seleccione **Crear política**.

1. En la pantalla **Create Policy** (Crear política) vaya a una pestaña para editar JSON. Cree un documento de política con las instrucciones JSON siguientes y, a continuación, elija **Review policy** (Revisar política).
**nota**  
Agregue todos los permisos necesarios para los recursos de Amazon S3. Es posible que le interese que la sección de recursos de su política de acceso abarque solo los recursos necesarios.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "glue:*",
           "s3:GetBucketLocation",
           "s3:ListBucket",
           "s3:ListAllMyBuckets",
           "s3:GetBucketAcl",
           "ec2:DescribeVpcEndpoints",
           "ec2:DescribeRouteTables",
           "ec2:CreateNetworkInterface",
           "ec2:DeleteNetworkInterface",
           "ec2:DescribeNetworkInterfaces",
           "ec2:DescribeSecurityGroups",
           "ec2:DescribeSubnets",
           "ec2:DescribeVpcAttribute",
           "iam:ListRolePolicies",
           "iam:GetRole",
           "iam:GetRolePolicy",
           "cloudwatch:PutMetricData"
         ],
         "Resource": [
           "*"
         ]
       },
       {
         "Effect": "Allow",
         "Action": [
           "s3:CreateBucket",
           "s3:PutBucketPublicAccessBlock"
         ],
         "Resource": [
           "arn:aws:s3:::aws-glue-*"
         ]
       },
       {
         "Effect": "Allow",
         "Action": [
           "s3:GetObject",
           "s3:PutObject",
           "s3:DeleteObject"
         ],
         "Resource": [
           "arn:aws:s3:::aws-glue-*/*",
           "arn:aws:s3:::*/*aws-glue-*/*"
         ]
       },
       {
         "Effect": "Allow",
         "Action": [
           "s3:GetObject"
         ],
         "Resource": [
           "arn:aws:s3:::crawler-public*",
           "arn:aws:s3:::aws-glue-*"
         ]
       },
       {
         "Effect": "Allow",
         "Action": [
           "logs:CreateLogGroup",
           "logs:CreateLogStream",
           "logs:PutLogEvents",
           "logs:AssociateKmsKey"
         ],
         "Resource": [
           "arn:aws:logs:*:*:log-group:/aws-glue/*"
         ]
       },
       {
         "Effect": "Allow",
         "Action": [
           "ec2:CreateTags",
           "ec2:DeleteTags"
         ],
         "Condition": {
           "ForAllValues:StringEquals": {
             "aws:TagKeys": [
               "aws-glue-service-resource"
             ]
           }
         },
         "Resource": [
           "arn:aws:ec2:*:*:network-interface/*",
           "arn:aws:ec2:*:*:security-group/*",
           "arn:aws:ec2:*:*:instance/*"
         ]
       }
     ]
   }
   ```

------

   En la siguiente tabla se describen los permisos que esta política concede.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/glue/latest/dg/create-service-policy.html)

1. En la pantalla **Review Policy (Revisar política)**, escriba su **Policy Name (Nombre de política)**; por ejemplo, **GlueServiceRolePolicy**. Escriba una descripción opcional y, cuando quede satisfecho con la política, elija **Create Policy (Crear política)**.