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.
Uso del complemento TIP para acceder Servicios de AWS
La propagación fiable de identidades (TIP) es una función AWS IAM Identity Center que permite Servicios de AWS a los administradores conceder permisos en función de los atributos de los usuarios, como las asociaciones de grupos. Con la propagación de identidades fiable, el contexto de identidad se añade a una función de IAM para identificar al usuario que solicita acceso a AWS los recursos. Este contexto se propaga a otros Servicios de AWS.
El contexto de identidad comprende la información que se Servicios de AWS utiliza para tomar decisiones de autorización cuando reciben solicitudes de acceso. Esta información incluye los metadatos que identifican al solicitante (por ejemplo, un usuario del Centro de Identidad de IAM), el lugar Servicio de AWS al que se solicita el acceso (por ejemplo, Amazon Redshift) y el ámbito del acceso (por ejemplo, el acceso de solo lectura). El destinatario Servicio de AWS utiliza este contexto y cualquier permiso asignado al usuario para autorizar el acceso a sus recursos. Para obtener más información, consulte la descripción general de la propagación de identidades confiables de la Guía del AWS IAM Identity Center usuario.
El complemento TIP se puede utilizar con Servicios de AWS este soporte para la propagación de identidades confiable. Como caso de uso de referencia, consulte Configuración de una aplicación de Amazon Q Business mediante AWS IAM Identity Center en la Guía del usuario de Amazon Q Business.
nota
Si utilizas Amazon Q Business, consulta Configuración de una aplicación de Amazon Q Business mediante AWS IAM Identity Center para obtener las instrucciones específicas del servicio.
Requisitos previos para utilizar el complemento de TIP
Los recursos siguientes son necesarios para que el complemento funcione:
-
Debe utilizar el AWS SDK for Java o el AWS SDK para JavaScript.
-
Compruebe que el servicio que está utilizando es compatible con la propagación de identidades de confianza.
Consulte la columna Permite la propagación de identidades de confianza a través del IAM Identity Center de la tabla de aplicaciones administradas de AWS que se integran con el IAM Identity Center de la Guía del usuario de AWS IAM Identity Center .
-
Puede habilitar IAM Identity Center y utilizarlo únicamente para la propagación de identidades de confianza.
Consulte los requisitos previos y las consideraciones de la TIP en la Guía del usuario de AWS IAM Identity Center .
-
Debe tener una Identity-Center-integrated solicitud.
Consulte las aplicaciones administradas de AWS o las aplicaciones administradas por el cliente en la Guía del usuario de AWS IAM Identity Center .
-
Debe configurar un emisor de token de confianza (TTI) y conectar su servicio al IAM Identity Center.
Consulte los requisitos previos para emisores de tokens de confianza y las tareas para configurar un emisor de token de confianza en la Guía del usuario de AWS IAM Identity Center .
Para usar el complemento de TIP en su código
-
Cree una instancia del complemento de propagación de identidades de confianza.
-
Cree una instancia de cliente de servicio para interactuar con su cliente de servicio Servicio de AWS y personalícelo añadiendo el complemento confiable de propagación de identidades.
El complemento de TIP usa los siguientes parámetros:
-
webTokenProvider: una función que el cliente implementa para obtener un token OpenID de su proveedor de identidad externo. -
accessRoleArn: el ARN del rol de IAM que debe asumir el complemento con el contexto de identidad del usuario para obtener las credenciales de identidad mejorada. -
applicationArn: la cadena del identificador único del cliente o de la aplicación. Este valor es un ARN de aplicación que tiene las OAuth concesiones configuradas. -
ssoOidcClient: (Opcional) Un cliente OIDC de SSO, por ejemplo,SsoOidcClientpara Java o for JavaScript, con configuraciones definidas client-sso-oidcpor el cliente. Si no se proporciona, se creará una instancia y se utilizará un cliente OIDC que utiliceapplicationRoleArn. -
stsClient: (opcional) Un cliente de AWS STS con configuraciones definidas por el cliente, que se utiliza para asumiraccessRoleArncon el contexto de identidad del usuario. Si no se proporciona, se creará una instancia y se utilizará un AWS STS cliente queapplicationRoleArnlo utilice. -
applicationRoleArn: (Opcional) El ARN del rol de IAM que se va a asumirAssumeRoleWithWebIdentitypara poder iniciar el OIDC AWS STS y los clientes.-
Si no se proporciona, se deben proporcionar ambos parámetros
ssoOidcClientystsClient. -
Si se proporciona,
applicationRoleArnno puede tener el mismo valor que el parámetroaccessRoleArn.applicationRoleArnse utiliza para crear el stsClient, que se utiliza para asumir accessRole. Si se usa el mismo rol para ambosapplicationRoleaccessRole, significaría usar un rol para asumir el rol (suposición del rol propio), lo cual no es aconsejable. AWS Consulte el anunciopara obtener más detalles.
-
Consideraciones para los parámetros ssoOidcClient, stsClient y applicationRoleArn
Al configurar el complemento de TIP, tenga en cuenta los siguientes requisitos de permiso en función de los parámetros que proporcione:
-
Si proporciona
ssoOidcClientystsClient:-
Las credenciales en
ssoOidcClientdeben tener permisooauth:CreateTokenWithIAMpara llamar al centro de identidad y obtener el contexto de usuario específico del centro de identidad. -
Las credenciales en
stsClientdeben contar consts:AssumeRoley permisossts:SetContextenaccessRole.accessRoletambién debe configurarse con una relación de confianza con las credenciales activadas enstsClient.
-
-
Si proporciona
applicationRoleArn:-
applicationRoledebe tener los permisosoauth:CreateTokenWithIAM,sts:AssumeRoleysts:SetContextnecesarios en los recursos requeridos (instancia deIdC,accessRole), ya que se utilizará para crear clientes OIDC y STS. -
applicationRoledebe tener una relación de confianza con el proveedor de identidad que se utilice para generar elwebToken, ya que sewebTokenutilizará para asumir el ApplicationRole mediante la AssumeRoleWithWebIdentityllamada del complemento.
-
Ejemplo de ApplicationRole configuración:
Política de confianza con el proveedor de tokens web:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::ACCOUNT_ID:oidc-provider/IDENTITY_PROVIDER_URL" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "IDENTITY_PROVIDER_URL:aud": "CLIENT_ID_TO_BE_TRUSTED" } } } ] }
Política de permisos:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole", "sts:SetContext" ], "Resource": [ "accessRoleArn" ] }, { "Effect": "Allow", "Action": [ "sso-oauth:CreateTokenWithIAM" ], "Resource": [ "*" ] } ] }
Ejemplos de código que utilizan TIP
Los siguientes ejemplos muestran cómo implementar el complemento TIP en su código mediante el AWS SDK for Java o el AWS SDK para JavaScript.