Credenciales de seguridad temporales en IAM
Puede utilizar AWS Security Token Service (AWS STS) para crear credenciales de seguridad temporales que pueden controlar el acceso a sus recursos de AWS y proporcionárselas a usuarios de confianza. Las credenciales de seguridad temporales funcionan prácticamente igual que las credenciales de clave de acceso a largo plazo, con las siguientes diferencias:
-
Las credenciales de seguridad temporales son a corto plazo, tal como su nombre indica. Se pueden configurar para durar entre unos cuantos minutos y varias horas. Cuando las credenciales caduquen, AWS dejará de reconocerlas o permitirá todo tipo de acceso a las solicitudes realizadas desde API que las utilicen.
-
Las credenciales de seguridad temporales no se guardan con el usuario, sino que se generan de forma dinámica y se proporcionan al usuario cuando se solicitan. Cuando las credenciales de seguridad temporales caducan (o incluso antes), el usuario puede solicitar nuevas credenciales, siempre y cuando el usuario que las solicite tenga permiso para hacerlo.
Como resultado, las credenciales temporales tienen las siguientes ventajas con respecto a las credenciales a largo plazo:
-
No tiene que distribuir ni incrustar credenciales de seguridad de AWS a largo plazo con una aplicación.
-
Puede proporcionar acceso a sus recursos de AWS a usuarios, sin necesidad de definir una identidad de AWS para ellos. Las credenciales temporales son la base de los roles y la federación de identidades.
-
Las credenciales de seguridad temporales tienen un ciclo de vida limitado, por lo que no tiene que actualizarlas ni revocarlas de forma explícita cuando ya no las necesite. Cuando las credenciales de seguridad temporales caducan, ya no se pueden volver a utilizar. Puede especificar el tiempo de validez de las credenciales, hasta un límite máximo.
Regiones de AWS STS y AWS
AWS STS genera las credenciales de seguridad temporales;. De forma predeterminada, AWS STS es un servicio global con un único punto de enlace en https://sts.amazonaws.com
. Sin embargo, también puede optar por realizar llamadas de API de AWS STS a puntos de enlace de cualquier otra región compatible. Esto puede reducir la latencia de servidor (retraso del servidor) enviando las solicitudes a servidores de una región que está más cerca de usted. No importa de qué región vienen sus credenciales, funcionan en todo el mundo. Para obtener más información, consulte Administración de AWS STS en una Región de AWS.
Escenarios habituales en las credenciales temporales
Las credenciales temporales son útiles en escenarios en los que entren en juego las identidades federadas, la delegación, el acceso entre cuentas y los roles de IAM.
Identidad federada
Puede administrar sus identidades de usuario en un sistema externo situado fuera de AWS y conceder a los usuarios que inician sesión desde dichos sistemas acceso para realizar tareas de AWS y obtener acceso a sus recursos de AWS. IAM admite dos tipos de identidades federadas. En ambos casos, las identidades se almacenan fuera de AWS. La diferencia radica dónde reside el sistema externo, en su centro de datos o un tercero externo en la web. Para comparar las características de las credenciales de seguridad temporales para la federación de identidades, consulte Comparación de credenciales AWS STS.
Para obtener más información acerca de proveedores de identidades externos, consulte Federación y proveedores de identidades.
-
Federación de OpenID Connect (OIDC): puede dejar que los usuarios inicien sesión con un proveedor de identidades de terceros conocido, como Inicio de sesión con Amazon, Facebook, Google o cualquier proveedor compatible con OIDC 2.0 para su aplicación móvil o Web, no necesita crear un código de inicio de sesión personalizado ni administrar sus propias identidades de usuario. La federación de OIDC le permite tener una Cuenta de AWS más segura, ya que no tiene que distribuir credenciales de seguridad a largo plazo, como claves de acceso de usuario de IAM, con su aplicación. Para obtener más información, consulte Federación OIDC.
La federación de OIDC AWS STS admite Inicio de sesión con Amazon, Facebook, Google o cualquier proveedor de identidad compatible con OpenID Connect (OIDC).
nota
Para aplicaciones móviles, le recomendamos que utilice Amazon Cognito. Puede utilizar el servicio con los AWS SDK para desarrollo móvil para crear identidades únicas para usuarios y autenticarlos para proteger el acceso a los recursos de AWS. Amazon Cognito es compatible con los mismos proveedores de identidades que AWS STS y con el acceso sin autenticar (invitado), y le permite migrar datos de usuario cuando un usuario inicia sesión. Amazon Cognito también ofrece operaciones de API para sincronizar los datos del usuario de modo que se preserven cuando cambia de un dispositivo a otro. Para obtener más información, consulte Autenticación con Amplify
en la documentación de Amplify. -
Federación de SAML: Puede autenticar usuarios de la red de su organización y, a continuación, dar a dichos usuarios acceso a AWS sin tener que crearles nuevas identidades de AWS ni exigirles que inicien sesión con credenciales diferentes. Este procedimiento se denomina inicio de sesión único para el acceso temporal. AWS STS es compatible con estándares abiertos como Security Assertion Markup Language (SAML) 2.0, con el que puede utilizar Microsoft AD FS para aprovechar su Microsoft Active Directory. También puede utilizar SAML 2.0 para administrar su propia solución de identidades federadas de usuarios. Para obtener más información, consulte Federación SAML 2.0.
-
Agente de federación personalizado AWS Puede utilizar el sistema de autenticación de su organización para conceder acceso a los recursos de . Si desea ver un escenario de ejemplo, consulte Permitir el acceso del agente de identidades personalizadas a la consola de AWS.
-
Federación con SAML 2.0 Puede utilizar el sistema de autenticación de su organización y SAML para conceder acceso a los recursos de AWS. Para obtener más información y ver un escenario de ejemplo, consulte Federación SAML 2.0.
-
Roles para el acceso entre cuentas
Muchas organizaciones mantienen más de una Cuenta de AWS. Con los roles y el acceso entre cuentas, puede definir identidades de usuarios en una cuenta y utilizar esas mismas identidades para obtener acceso a recursos de AWS de otras cuentas que pertenezcan a su organización. Este procedimiento se denomina delegación del acceso temporal. Para obtener más información sobre la creación de roles entre cuentas, consulte Crear un rol para delegar permisos a un usuario de IAM. Consulte ¿Qué es IAM Access Analyzer? para saber si las entidades principales de las cuentas fuera de su zona de confianza (cuenta u organización de confianza) tienen acceso para asumir sus roles.
Roles para Amazon EC2
Si ejecuta aplicaciones en instancias de Amazon EC2 y dichas aplicaciones necesitan obtener acceso a recursos de AWS, puede proporcionar credenciales de seguridad temporales a las instancias cuando las lanza. Dichas credenciales de seguridad temporales están disponibles para todas las aplicaciones que se ejecutan en la instancia, por lo que no es necesario almacenar credenciales a largo plazo en ella. Para obtener más información, consulte Utilizar un rol de IAM para conceder permisos a aplicaciones que se ejecutan en instancias de Amazon EC2.
Para obtener más información sobre las credenciales de los roles de Amazon EC2 de IAM, consulte los Roles de IAM para Amazon EC2 en la Guía del usuario de Amazon Elastic Compute Cloud.
Otros servicios de AWS
Puede utilizar credenciales de seguridad temporales para obtener acceso a la mayoría de los servicios de AWS. Para obtener una lista de los servicios que aceptan credenciales de seguridad temporales, consulte Servicios de AWS que funcionan con IAM.
Aplicaciones de ejemplo que utilizan credenciales temporales
Puede utilizar AWS Security Token Service (AWS STS) para crear credenciales de seguridad temporales que pueden controlar el acceso a sus recursos de AWS y proporcionárselas a usuarios de confianza. Para obtener más información acerca de AWS STS, consulte Credenciales de seguridad temporales en IAM. Para ver cómo puede utilizar AWS STS para administrar credenciales de seguridad temporales, puede descargar las siguientes aplicaciones de ejemplo que implementan escenarios de ejemplo completos:
-
Habilitar la federación a AWS para utilizar Windows Active Directory, ADFS y SAML 2.0
. Demuestra cómo delegar el acceso mediante la federación empresarial a AWS mediante Windows Active Directory (AD), Active Directory Federation Services (ADFS) 2.0 y SAML (Security Assertion Markup Language) 2.0. -
Permitir el acceso del agente de identidades personalizadas a la consola de AWS. Muestra cómo crear un proxy de federación personalizada que permite el inicio de sesión único (SSO), de modo que los usuarios de Active Directory puedan iniciar sesión en AWS Management Console.
-
Cómo utilizar Shibboleth para el inicio de sesión único en AWS Management Console.
. En esta página se muestra cómo utilizar Shibboleth y SAML para proporcionar a los usuarios un acceso de inicio de sesión único (SSO) a la AWS Management Console.
Muestras para la federación OIDC
Las siguientes aplicaciones de muestra ilustran cómo utilizar la federación OIDC con proveedores como Inicio de sesión con Amazon, Amazon Cognito, Facebook, o Google. Puede intercambiar la autenticación de estos proveedores por credenciales de seguridad de AWS temporales para obtener acceso a los servicios de AWS.
-
Tutoriales de Amazon Cognito: le recomendamos que utilice Amazon Cognito con las SDK de AWS para el desarrollo móvil. Amazon Cognito es la forma más sencilla de administrar la identidad en aplicaciones móviles y ofrece características adicionales, como la sincronización y la identidad en todos los dispositivos. Para obtener más información acerca de Amazon Cognito, consulte Autenticación con Amplify
en la documentación de Amplify.
Recursos adicionales para las credenciales de seguridad temporales
Los escenarios y aplicaciones siguientes pueden orientarlo sobre el uso de credenciales de seguridad temporales:
-
Cómo integrar AWS STS SourceIdentity con su proveedor de identidades
. Esta publicación muestra cómo configurar el atributo AWS STS SourceIdentity
al usar Okta, Ping o OneLogin como su IdP. -
Federación OIDC. En esta sección se explica cómo configurar roles de IAM cuando utiliza las federaciones OIDC y la API
AssumeRoleWithWebIdentity
. -
Acceso seguro a la API con MFA. En este tema se explica cómo utilizar roles para exigir una autenticación multifactor (MFA) para proteger acciones de API confidenciales en su cuenta.
Para obtener más información sobre las políticas y permisos de AWS, consulte los temas siguientes:
-
Administración de los permisos de acceso a los recursos de Amazon S3 en la Guía del usuario de Amazon Simple Storage Service.
-
Consulte ¿Qué es IAM Access Analyzer? para saber si las entidades principales de las cuentas fuera de su zona de confianza (cuenta u organización de confianza) tienen acceso para asumir sus roles.