AWS Identity and Access Management
Guía del usuario

Elementos de política JSON de IAM: Resource

El elemento Resource especifica el objeto u objetos que la instrucción abarca. Las instrucciones deben contener un elemento Resource o NotResource. Los recursos se especifican mediante un ARN. (Para obtener más información acerca del formato de los ARN, consulte Nombres de recursos de Amazon (ARN) y espacios de nombres de servicios de AWS).

Cada servicio tiene su propio conjunto de recursos. Aunque siempre se utiliza un ARN para especificar un recurso, los detalles del ARN de un recurso dependen del servicio y el recurso. Para obtener información sobre cómo especificar un recurso, consulte la documentación del servicio para cuyos recursos está escribiendo una instrucción.

nota

Algunos servicios no le permiten especificar acciones para recursos individuales; en su lugar, todas las acciones que publique en los elementos Action o NotAction se aplican a todos los recursos de ese servicio. En dichos casos, utilice el asterisco * en el elemento Resource.

El siguiente ejemplo hace referencia a una cola Amazon SQS específica.

"Resource": "arn:aws:sqs:us-east-2:account-ID-without-hyphens:queue1"

El siguiente ejemplo hace referencia al usuario de IAM llamado Bob de una cuenta de AWS.

"Resource": "arn:aws:iam::account-ID-without-hyphens:user/Bob"

Puede utilizar comodines como parte del ARN del recurso. Puede utilizar caracteres comodín (* y ?) en cualquier segmento del ARN (las partes se separan mediante signos de dos puntos). Un asterisco (*) representa cualquier combinación de caracteres y un signo de interrogación (?) representa un único carácter. Puede utilizar varios caracteres * o ? o en cada segmento, pero un carácter comodín no puede abarcar varios segmentos. El siguiente ejemplo hace referencia a todos los usuarios de IAM cuya ruta es /accounting.

"Resource": "arn:aws:iam::account-ID-without-hyphens:user/accounting/*"

El siguiente ejemplo hace referencia a todos los elementos dentro de un bucket de Amazon S3 específico.

"Resource": "arn:aws:s3:::my_corporate_bucket/*"

Puede especificar varios recursos. El siguiente ejemplo hace referencia a dos tablas de DynamoDB.

"Resource": [ "arn:aws:dynamodb:us-east-2:account-ID-without-hyphens:table/books_table", "arn:aws:dynamodb:us-east-2:account-ID-without-hyphens:table/magazines_table" ]

En el elemento Resource, puede usar variables de política de JSON en la parte del ARN que identifica los recursos específicos (es decir, en la parte final del ARN). Por ejemplo, puede utilizar la clave {aws:username} como parte de un ARN de recurso para indicar que el nombre del usuario actual debe incluirse como parte del nombre del recurso. El siguiente ejemplo muestra cómo puede utilizar la clave {aws:username} en un elemento Resource. La política permite obtener acceso a una tabla de Amazon DynamoDB que coincide con el nombre de usuario actual.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "dynamodb:*", "Resource": "arn:aws:dynamodb:us-east-2:ACCOUNT-ID-WITHOUT-HYPHENS:table/${aws:username}" } }

Para obtener más información sobre las variables de las políticas de JSON, consulte Elementos de la política de IAM: Variables y etiquetas.