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.
Configurar un SAML proveedor como un IdP de grupo de identidades
Con los grupos de identidades de Amazon Cognito, puede autenticar a los usuarios con proveedores de identidad (IdPs) hasta la versión 2.0. SAML Puede usar un IdP compatible SAML con Amazon Cognito para proporcionar un flujo de incorporación sencillo a sus usuarios. El IdP de SAML apoyo especifica IAM las funciones que pueden asumir los usuarios. De esta forma, distintos usuarios pueden recibir distintos conjuntos de permisos.
Configuración del grupo de identidades para un SAML IdP
Los siguientes pasos describen cómo configurar el grupo de identidades para usar un SAML IdP basado.
nota
Antes de configurar el grupo de identidades para que sea compatible con un SAML proveedor, configure primero el SAML IdP en la IAM consola.
Para agregar un proveedor de SAML identidad (IdP)
-
Elija Grupos de identidades en la consola de Amazon Cognito
. Seleccione un grupo de identidades. -
Elija la pestaña Acceso de usuario.
-
Seleccione Agregar proveedor de identidades.
-
Elija SAML.
-
Elija un proveedor de SAML IAM IdPs identidad entre sus Cuenta de AWS. Si quieres añadir un nuevo SAML proveedor, selecciona Crear nuevo proveedor para ir a la IAM consola.
-
Para establecer el rol que Amazon Cognito solicita cuando emite credenciales a los usuarios que se han autenticado con este proveedor, configure Configuración del rol.
-
Puede asignar a los usuarios de ese IdP el Rol predeterminado que configuró al configurar el Rol autenticado o puede Elegir el rol con reglas.
-
Si eligió Elegir rol con reglas, ingrese la Reclamación de origen de la autenticación del usuario, el Operador con el que desea comparar la afirmación, el Valor que hará que coincida con esta elección de rol y el Rol que desea asignar cuando la Asignación del rol coincida. Seleccione Agregar otra para crear una regla adicional en función de una condición diferente.
-
Elija una Resolución de rol. Cuando las reclamaciones del usuario no coinciden con las reglas, puede denegar las credenciales o emitir credenciales para el Rol autenticado.
-
-
-
Para cambiar las etiquetas de la entidad principal que Amazon Cognito asigna cuando emite credenciales a los usuarios que se han autenticado con este proveedor, configure Atributos para el control de acceso.
-
Para no aplicar ninguna etiqueta de entidad principal, elija Inactivo.
-
Para aplicar etiquetas de entidades principales en función de las reclamaciones
sub
yaud
, elija Usar mapeos predeterminados. -
Para crear su propio esquema personalizado de atributos para las etiquetas de la entidades principales, elija Usar mapeos personalizados. A continuación, ingrese una Clave de etiqueta que desee obtener de cada Reclamación que desee representar en una etiqueta.
-
-
Seleccione Guardar cambios.
Configuración de su SAML IdP
Después de crear el SAML proveedor, configure su SAML IdP para añadir la confianza de la parte de confianza entre su IdP y. AWS Con muchas IdPs, puede especificar una URL que el IdP pueda usar para leer la información y los certificados de la parte que confía en un XML documento. Para AWS ello, puede utilizar https://signin.aws.amazon.com/static/saml-metadata.xml
Cuando su SAML IdP incluye más de un certificado de firma en SAML los metadatos, al iniciar sesión, su grupo de usuarios determina que la SAML afirmación es válida si coincide con algún certificado de los metadatos. SAML
Personaliza tu rol de usuario con SAML
Cuando lo usa SAML con Amazon Cognito Identity, puede personalizar el rol del usuario final. Amazon Cognito solo admite el flujo mejorado con el SAML IdP basado. No es necesario especificar un rol autenticado o no autenticado para que el grupo de identidades use un IdP basadoSAML. El atributo https://aws.amazon.com/SAML/Attributes/Role
claim especifica uno o más pares de rol y proveedor separados por comas. ARN Estos son los roles que el usuario puede asumir. Puede configurar el SAML IdP para rellenar los atributos del rol en función de la información de atributos de usuario disponible en el IdP. Si recibe varios roles en la SAML aserción, rellene el parámetro opcional customRoleArn
cuando llame. getCredentialsForIdentity
El usuario lo asume customRoleArn
si el rol coincide con uno de los de la afirmación de la SAML afirmación.
Autenticación de usuarios con un IdP SAML
Para federarse con el IdP SAML basado, determine el lugar en el que URL el usuario inicia el inicio de sesión. AWS la federación utiliza el inicio de sesión iniciado por el IdP. En AD FS 2.0, URL adopta la forma de. https://
<fqdn>
/adfs/ls/IdpInitiatedSignOn.aspx?loginToRp=urn:amazon:webservices
Para añadir compatibilidad con su SAML IDP en Amazon Cognito, primero autentique a los usuarios con SAML su proveedor de identidad desde su aplicación iOS o Android. El código que se utiliza para integrar y autenticarse con el SAML IdP es específico SAML de los proveedores. Tras autenticar al usuario, puede utilizar Amazon APIs Cognito para proporcionar la afirmación SAML resultante a Amazon Cognito Identity.
No puede repetir ni reproducir una SAML afirmación en el Logins
mapa de su solicitud de grupo de identidades. API Una SAML afirmación reproducida tiene un identificador de afirmación que duplica el identificador de una solicitud anterior. API APILas operaciones que pueden aceptar una SAML afirmación en el Logins
mapa incluyen GetId,, y. GetCredentialsForIdentityGetOpenIdTokenGetOpenIDTokenForDeveloperIdentity Puede reproducir el ID de una SAML aserción una vez por API solicitud en un flujo de autenticación de un grupo de identidades. Por ejemplo, puede proporcionar la misma SAML afirmación en una GetId
solicitud y en una GetCredentialsForIdentity
solicitud posterior, pero no en una segunda solicitud. GetId
Android
Si utilizas AndroidSDK, puedes rellenar el mapa de inicios de sesión con la SAML afirmación de la siguiente manera.
Map logins = new HashMap(); logins.put("arn:aws:iam::aws account id:saml-provider/name", "base64 encoded assertion response"); // Now this should be set to CognitoCachingCredentialsProvider object. CognitoCachingCredentialsProvider credentialsProvider = new CognitoCachingCredentialsProvider(context, identity pool id, region); credentialsProvider.setLogins(logins); // If SAML assertion contains multiple roles, resolve the role by setting the custom role credentialsProvider.setCustomRoleArn("arn:aws:iam::aws account id:role/customRoleName"); // This should trigger a call to the Amazon Cognito service to get the credentials. credentialsProvider.getCredentials();
iOS
Si está utilizando iOSSDK, puede proporcionar la SAML afirmación de la AWSIdentityProviderManager
siguiente manera.
- (AWSTask<NSDictionary<NSString*,NSString*> *> *) logins { //this is hardcoded for simplicity, normally you would asynchronously go to your SAML provider //get the assertion and return the logins map using a AWSTaskCompletionSource return [AWSTask taskWithResult:@{@"arn:aws:iam::aws account id:saml-provider/name":@"base64 encoded assertion response"}]; } // If SAML assertion contains multiple roles, resolve the role by setting the custom role. // Implementing this is optional if there is only one role. - (NSString *)customRoleArn { return @"arn:aws:iam::accountId:role/customRoleName"; }