Realizar solicitudes - Amazon Simple Storage Service

Realizar solicitudes

Amazon S3 es un servicio de REST. Puede enviar solicitudes a Amazon S3 con la API REST o las bibliotecas de encapsulamiento de los SDK de AWS (consulte Código de muestra y bibliotecas) que incluyen la API REST de Amazon S3 subyacente, lo que simplifica sus tareas de programación.

Toda interacción con Amazon S3 es o autenticada o anónima. La autenticación es un proceso que permite verificar la identidad del solicitante que intenta acceder a un producto de Amazon Web Services (AWS). Las solicitudes autenticadas deben incluir un valor de firma que autentique al remitente de la solicitud. El valor de firma, en parte, se genera a partir de las claves de acceso de AWS del solicitante (ID de clave de acceso y clave de acceso secreta). Para obtener más información acerca de cómo obtener claves de acceso, consulte ¿Cómo obtengo credenciales de seguridad? en la Referencia general de AWS

Si utiliza el SDK de AWS, las bibliotecas computan la firma a partir de las claves que usted proporciona. Sin embargo, si realiza llamadas directas a la API REST en su aplicación, debe escribir el código para computar la firma y añadirla a la solicitud.

Acerca de las claves de acceso

En las siguientes secciones se revisan los tipos de claves de acceso que puede utilizar para realizar solicitudes autenticadas.

Claves de acceso de la Cuenta de AWS

Las claves de acceso de la cuenta proporcionan acceso completo a los recursos de AWS que son propiedad de la cuenta. A continuación, se proporcionan ejemplos de claves de acceso:

  • ID de clave de acceso (una cadena alfanumérica de 20 caracteres). Por ejemplo: AKIAIOSFODNN7EXAMPLE

  • Clave de acceso secreta (una cadena de 40 caracteres). Por ejemplo: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

El ID de clave de acceso identifica una Cuenta de AWS de forma exclusiva. Puede utilizar estas claves de acceso para enviar solicitudes autenticadas a Amazon S3.

Claves de acceso de usuario de IAM

Puede crear una Cuenta de AWS para su empresa. Sin embargo, puede haber varios empleados en la organización que necesitan acceso a los recursos de AWS de la organización. Compartir sus claves de acceso de la Cuenta de AWS reduce la seguridad y crear Cuentas de AWS individuales para cada empleado puede no ser conveniente. Además, no puede compartir fácilmente recursos como buckets y objetos ya que estos pertenecen a diferentes cuentas. Para compartir recursos, debe conceder permisos, lo que implica un trabajo adicional.

En dichos casos, puede utilizar AWS Identity and Access Management (IAM) para crear usuarios en la Cuenta de AWS con sus propias claves de acceso y adjuntar políticas de usuario de IAM que concedan los permisos de acceso a recursos adecuados a esos usuarios. Para administrar mejor estos usuarios, IAM le permite crear grupos de usuarios y conceder permisos a nivel grupal que se aplican a todos los usuarios de ese grupo.

Estos usuarios se denominan usuarios de IAM, y usted los crea y administra en AWS. La cuenta principal controla la capacidad de un usuario para acceder a AWS. Cualquier recurso creado por un usuario de IAM se encuentra bajo control de la Cuenta de AWS principal, que paga dicho recurso. Estos usuarios de IAM pueden enviar solicitudes autenticadas a Amazon S3 con sus propias credenciales de seguridad. Para obtener más información acerca de la creación y la administración de usuarios en su Cuenta de AWS, consulte la página de detalles del producto de AWS Identity and Access Management.

Credenciales de seguridad temporales

Además de crear usuarios de IAM con sus propias claves de acceso, IAM también le permite otorgar credenciales de seguridad temporales (claves de acceso temporales y un token de seguridad) a cualquier usuario de IAM para que tenga acceso a sus servicios y recursos de AWS. También puede administrar usuarios en su sistema que no pertenecen a AWS. Estos se conocen como usuarios federados. Además, los usuarios pueden ser aplicaciones que usted crea para acceder a sus recursos de AWS.

IAM proporciona la API de AWS Security Token Service para que pueda solicitar credenciales de seguridad temporales. Para solicitar estas credenciales, puede utilizar la API de STS de AWS o el SDK de AWS. La API devuelve credenciales de seguridad temporales (ID de clave de acceso y clave de acceso secreta) y un token de seguridad. Estas credenciales son válidas solo durante el tiempo que usted especifica cuando las solicita. Usted utiliza el ID de clave de acceso y la clave secreta de la misma manera que los utiliza cuando envía solicitudes con sus claves de acceso de usuario de IAM o su Cuenta de AWS. Además, debe incluir el token en cada solicitud que envía a Amazon S3.

Un usuario de IAM puede solicitar estas credenciales de seguridad temporales para uso propio o puede entregarlas a usuarios federados o aplicaciones. Cuando solicita credenciales de seguridad temporales para usuarios federados, debe proporcionar un nombre de usuario y una política de IAM que defina los permisos que desea asociar a estas credenciales de seguridad temporales. El usuario federado no puede tener más permisos que el usuario de la cuenta principal de IAM que solicitó las credenciales temporales.

Puede utilizar estas credenciales de seguridad temporales para realizar solicitudes a Amazon S3. Las bibliotecas de la API computan el valor de firma necesario con esas credenciales para autenticar su solicitud. Si envía las solicitudes con las credenciales vencidas, Amazon S3 deniega la solicitud.

Para obtener información acerca de cómo firmar solicitudes con credenciales de seguridad temporales en sus solicitudes de API REST, consulte Firmar y autenticar las solicitudes REST. Para obtener más información acerca del envío de solicitudes con los SDK de AWS, consulte Realización de solicitudes con los SDK de AWS.

Para obtener más información acerca de la compatibilidad de IAM con las credenciales de seguridad temporales, consulte Credenciales de seguridad temporales en la guía de usuario de IAM.

Para más seguridad, puede solicitar la Multifactor Authentication (MFA, Autenticación multifactor) cuando accede a sus recursos de Amazon S3 mediante la configuración de una política de bucket. Para obtener información, consulte Exigir MFA. Después de solicitar la MFA para acceder a sus recursos de Amazon S3, la única manera de acceder a estos recursos es proporcionando credenciales temporales que se crean con una clave de MFA. Para obtener más información, consulte la página de detalles de Autenticación multifactor de AWS y Configuración del acceso a una API protegida por MFA en la Guía del usuario de IAM.

Puntos de enlace de solicitud

Usted envía solicitudes REST al punto de enlace predefinido del servicio. Para ver una lista de todos los servicios de AWS y los puntos conexión correspondientes, consulte Regiones y puntos de conexión en la Referencia general de AWS.