Servicio de AWS Información simplificada para acceso programático - Referencia de autorizaciones de servicio

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.

Servicio de AWS Información simplificada para acceso programático

AWS proporciona información de referencia del servicio en formato JSON para agilizar la automatización de los flujos de trabajo de gestión de políticas. Con la información de referencia del servicio, puede acceder a las operaciones, acciones, recursos y claves de condición disponibles Servicios de AWS desde archivos legibles por máquina. La información de referencia del servicio incluye metadatos más allá de los detalles de autorización, incluida la información sobre la acción de IAM a la que se accedió por última vez y los datos de generación de políticas de IAM Access Analyzer.

Los administradores de seguridad pueden establecer barreras y los desarrolladores pueden garantizar el acceso adecuado a las aplicaciones identificando las acciones, los recursos y las claves de condición disponibles para cada una de ellas. Servicio de AWS AWS proporciona información de referencia del servicio Servicios de AWS para que pueda incorporar los metadatos en sus flujos de trabajo de administración de políticas.

  • Para obtener un inventario de acciones, recursos y claves de condición para su uso en las políticas de IAM, consulte la página de Referencia de autorización del servicio para el Servicio de AWS. Las acciones, los recursos y las claves de condición de servicios que comparten un prefijo de servicio pueden estar divididos en varias páginas de la Referencia de autorización del servicio.

  • Para ver una lista Servicios de AWS y las acciones sobre las que se muestra la información sobre la última acción de IAM a la que se accedió, consulte la última acción de IAM a la que se accedió, información, servicios y acciones en la Guía del usuario de IAM.

  • Para ver una lista Servicios de AWS y las acciones para las que IAM Access Analyzer genera políticas con información a nivel de acción, consulte los servicios de generación de políticas de IAM Access Analyzer en la Guía del usuario de IAM.

El contenido que se incluye en la Referencia de autorización del servicio puede presentarse de forma diferente o contener metadatos distintos. Para obtener más información, consulte Definiciones de campos adicionales.

La información de referencia del servicio también ofrece metadatos sobre las operaciones, incluida información sobre las acciones autorizadas y los nombres de los métodos incluidos en ellos. SDKs

Es posible que esté disponible un contexto adicional sobre el valor de las claves de condición para ayudar a determinar el alcance de los permisos. Por ejemplo, el valor de iam:PassedToService puede aparecer cuando la acción iam:PassRole está autorizada por una operación.

Este mapeo de operación a acción no es compatible con todos los servicios. Los servicios que aún no admitan este mapeo omitirán la AuthorizedAction propiedad. Además, la información sobre las acciones autorizadas para las operaciones no incluye los permisos que puedan ser necesarios para las operaciones que se realicen en su nombre con Forward Access Sessions.

nota

Es posible que los cambios en la información de referencia del servicio tarden hasta 24 horas en reflejarse en la lista de metadatos para el servicio.

Acceder a Servicio de AWS la información de referencia
  1. Navegue hasta la información de referencia del servicio para acceder a la lista de Servicios de AWS la que está disponible la información de referencia.

    Hay dos puntos de entrada principales:

    http://servicereference.us-east-1.amazonaws.com/ muestra una lista de Servicios de AWS los que hay información de referencia disponible.

    El siguiente ejemplo muestra una lista parcial de los servicios y URLs su información de referencia correspondiente:

    [ { "service": "s3", "url": "https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json" }, { "service": "dynamodb", "url": "https://servicereference.us-east-1.amazonaws.com/v1/dynamodb/dynamodb.json" }, … ]

    https://servicereference.us-east-1.amazonaws.com/v1/mapping.json muestra un mapeo desde los servicios del SDK hasta la ubicación de la referencia del servicio en la que se encuentra la información.

    En el siguiente ejemplo, se muestra una lista parcial de mapeos:

    { "SDK" : { "Python" : { "Boto3" : { "accessanalyzer" : { "service" : "access-analyzer", "url" : "https://servicereference.us-east-1.amazonaws.com/v1/access-analyzer/access-analyzer.json" }, "account" : { "service" : "account", "url" : "https://servicereference.us-east-1.amazonaws.com/v1/account/account.json" }, "amp" : { "service" : "aps", "url" : "https://servicereference.us-east-1.amazonaws.com/v1/aps/aps.json" }, ... } } } }
  2. Elija un servicio y vaya a la página de información del servicio en el campo url correspondiente para ver una lista de acciones, recursos y claves de condición para el servicio.

    El siguiente ejemplo muestra una lista parcial de información de referencia del servicio de Amazon S3:

    { "Name": "s3", "Actions": [ { "Name": "GetObject", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ExistingObjectTag/key", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:if-match", "s3:if-none-match", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : false, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "object" } ], "SupportedBy" : { "IAM Access Analyzer Policy Generation" : false, "IAM Action Last Accessed" : false } }, { "Name": "ListBucket", "ActionConditionKeys": [ "s3:AccessGrantsInstanceArn", "s3:AccessPointNetworkOrigin", "s3:DataAccessPointAccount", "s3:DataAccessPointArn", "s3:ResourceAccount", "s3:TlsVersion", "s3:authType", "s3:delimiter", "s3:max-keys", "s3:prefix", "s3:signatureAge", "s3:signatureversion", "s3:x-amz-content-sha256" ], "Annotations" : { "Properties" : { "IsList" : true, "IsPermissionManagement" : false, "IsTaggingOnly" : false, "IsWrite" : false } }, "Resources": [ { "Name": "bucket" } ], "SupportedBy" : { "IAM Access Analyzer Policy Generation" : false, "IAM Action Last Accessed" : false } }, ... ], "ConditionKeys": [ { "Name": "s3:TlsVersion", "Types": [ "Numeric" ] }, { "Name": "s3:authType", "Types": [ "String" ] }, ... ], "Operations": [ { "Name" : "GetObject", "AuthorizedActions" : [ { "Name" : "GetObject", "Service" : "s3" }, { "Name" : "GetObject", "Service" : "s3-object-lambda" }, { "Name" : "GetObjectLegalHold", "Service" : "s3" }, { "Name" : "GetObjectRetention", "Service" : "s3" }, { "Name" : "GetObjectTagging", "Service" : "s3" }, { "Name" : "GetObjectVersion", "Service" : "s3" } ], "SDK" : [ { "Name" : "s3", "Method" : "get_object", "Package" : "Boto3" } ] }, ... ], "Resources": [ { "Name": "accesspoint", "ARNFormats": [ "arn:${Partition}:s3:${Region}:${Account}:accesspoint/${AccessPointName}" ] }, { "Name": "bucket", "ARNFormats": [ "arn:${Partition}:s3:::${BucketName}" ] } ... ], "Version": "v1.4" }
  3. Descargue el archivo JSON de la URL del servicio para utilizarlo en los flujos de trabajo de creación de políticas.

Glosario

  • Operación: una API a la que se puede llamar, normalmente a través de un SDK

  • Acción: permiso que se autoriza al realizar una operación

Definiciones de campos adicionales

Las propiedades de las acciones proporcionan metadatos adicionales sobre las acciones del servicio para ayudar a clasificarlas en función del alcance de sus permisos. Estas propiedades se encuentran en el campo Annotations de cada acción. Los metadatos se componen de cuatro valores booleanos:

  • IsList: proporciona permisos para descubrir y enumerar recursos, incluidos los metadatos básicos, sin acceder al contenido de los recursos.

    Ejemplo: esta propiedad es true para la acción ListBucket de Amazon S3, que permite a los usuarios ver las listas de buckets sin tener que acceder ellos mismos a los objetos.

  • IsPermissionManagement: proporciona permisos para modificar los permisos de IAM o las credenciales de acceso.

    Ejemplo: esta propiedad es true para la mayoría de las AWS Organizations acciones y de IAM, así como para las acciones de Amazon S3, como PutBucketPolicy yDeleteBucketPolicy.

  • IsTaggingOnly: proporciona permisos únicamente para modificar etiquetas.

    Ejemplo: esta propiedad es true para acciones TagRole y UntagRole de IAM, aunque esta propiedad es false para CreateRole porque proporciona permisos más amplios que van más allá del etiquetado.

  • IsWrite: proporciona permisos para modificar los recursos, lo que puede incluir modificaciones en las etiquetas.

    Ejemplo: esta propiedad es true para las acciones CreateBucket, DeleteBucket y PutObject de Amazon S3 porque permiten la modificación de recursos.

nota

Estas propiedades no se excluyen mutuamente. Una acción puede tener varias propiedades configuradas en true.

También es posible que todas las propiedades sean false, como se ve en la acción GetObject de Amazon S3. Esto indica que la acción solo otorga permisos de lectura sobre un objeto.

Estas propiedades se pueden utilizar para generar información sobre los servicios. En el siguiente ejemplo, se muestra qué permisos con el prefijo s3 permiten mutar los recursos:

> curl https://servicereference.us-east-1.amazonaws.com/v1/s3/s3.json | \ jq '.Actions[] | select(.Annotations.Properties.IsWrite == true) | .Name' "AssociateAccessGrantsIdentityCenter" "BypassGovernanceRetention" "CreateAccessGrant" "CreateAccessGrantsInstance" "CreateAccessGrantsLocation" ...

En el siguiente ejemplo, se muestran las claves de condición de acción con el prefijo lambda que puede utilizar para limitar el acceso a las acciones de administración de permisos:

> curl https://servicereference.us-east-1.amazonaws.com/v1/lambda/lambda.json | \ jq '.Actions[] | select(.Annotations.Properties.IsPermissionManagement == true) | {Name: .Name, ActionConditionKeys: (.ActionConditionKeys // [])}' { "Name": "AddLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "AddPermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] } { "Name": "DisableReplication", "ActionConditionKeys": [] } { "Name": "EnableReplication", "ActionConditionKeys": [] } { "Name": "RemoveLayerVersionPermission", "ActionConditionKeys": [] } { "Name": "RemovePermission", "ActionConditionKeys": [ "lambda:FunctionUrlAuthType", "lambda:Principal" ] }