Autenticação com um grupo de usuários - Amazon Cognito

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Autenticação com um grupo de usuários

Os usuários do seu aplicativo podem fazer login diretamente por meio de um grupo de usuários ou podem se federar por meio de um provedor de identidade (IdP) terceirizado. O grupo de usuários gerencia a sobrecarga de lidar com os tokens que são retornados do login social por meio do Facebook, Google, Amazon e Apple, e do OpenID Connect (OIDC) e SAML. IdPs

Depois da autenticação bem-sucedida, o Amazon Cognito retorna tokens do grupo de usuários à sua aplicação. Você pode usar os tokens para conceder aos usuários acesso aos seus próprios recursos no lado do servidor ou ao Amazon API Gateway. Ou você pode trocá-las por AWS credenciais para acessar outros AWS serviços.

Visão geral de autenticação

O processamento e o gerenciamento de tokens do grupo de usuários para a aplicação da Web ou para dispositivos móveis são fornecidos no lado do cliente por meio dos SDKs do Amazon Cognito. Da mesma forma, o Mobile SDK for iOS e o Mobile SDK for Android atualizam automaticamente seus tokens de ID e de acesso se houver um token de atualização válido (não expirado) presente, e os tokens de ID e de acesso tiverem uma validade mínima restante de cinco minutos. Para obter informações sobre os SDKs e o código de amostra para Android e iOS JavaScript, consulte os SDKs do grupo de usuários do Amazon Cognito.

Depois que o usuário da aplicação faz login com êxito, o Amazon Cognito cria uma sessão e retorna um token de ID, de acesso e de atualização para o usuário autenticado.

JavaScript
// Amazon Cognito creates a session which includes the id, access, and refresh tokens of an authenticated user. var authenticationData = { Username : 'username', Password : 'password', }; var authenticationDetails = new AmazonCognitoIdentity.AuthenticationDetails(authenticationData); var poolData = { UserPoolId : 'us-east-1_ExaMPle', ClientId : '1example23456789' }; var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData); var userData = { Username : 'username', Pool : userPool }; var cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData); cognitoUser.authenticateUser(authenticationDetails, { onSuccess: function (result) { var accessToken = result.getAccessToken().getJwtToken(); /* Use the idToken for Logins Map when Federating User Pools with identity pools or when passing through an Authorization Header to an API Gateway Authorizer */ var idToken = result.idToken.jwtToken; }, onFailure: function(err) { alert(err); }, });
Android
// Session is an object of the type CognitoUserSession, and includes the id, access, and refresh tokens for a user. String idToken = session.getIdToken().getJWTToken(); String accessToken = session.getAccessToken().getJWT();
iOS - swift
// AWSCognitoIdentityUserSession includes id, access, and refresh tokens for a user. - (AWSTask<AWSCognitoIdentityUserSession *> *)getSession;
iOS - objective-C
// AWSCognitoIdentityUserSession includes the id, access, and refresh tokens for a user. [[user getSession:@"username" password:@"password" validationData:nil scopes:nil] continueWithSuccessBlock:^id _Nullable(AWSTask<AWSCognitoIdentityUserSession *> * _Nonnull task) { // success, task.result has user session return nil; }];