SAMLnomes e identificadores de provedores de identidade - 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á.

SAMLnomes e identificadores de provedores de identidade

Ao nomear seus provedores de SAML identidade (IdPs) e atribuir identificadores de IdP, você pode automatizar o fluxo de solicitações de entrada e saída iniciadas pelo SP para esse provedor. Para obter informações sobre restrições de string ao nome do provedor, consulte a ProviderName propriedade de. CreateIdentityProvider

Diagrama de fluxo de autenticação do login iniciado pelo Amazon Cognito SP com um identificador de SAML IdP e a interface de usuário hospedada. O usuário fornece um endereço de e-mail para a interface hospedada e o Amazon Cognito o redireciona automaticamente para seu provedor.

Você também pode escolher até 50 identificadores para seus SAML provedores. Um identificador é um nome amigável para um IdP em seu grupo de usuários e deve ser exclusivo dentro do grupo de usuários. Se seus SAML identificadores corresponderem aos domínios de e-mail dos seus usuários, a interface de usuário hospedada do Amazon Cognito solicitará o endereço de e-mail de cada usuário, avaliará o domínio em seu endereço de e-mail e os redirecionará para o IdP que corresponde ao domínio. Como a mesma organização pode possuir vários domínios, um único IdP pode ter vários identificadores.

Se você usa ou não identificadores de domínio de e-mail, você pode usar identificadores em um aplicativo multilocatário para redirecionar os usuários para o IdP correto. Quando quiser ignorar totalmente a interface hospedada, você pode personalizar os links que você apresenta aos usuários para que eles sejam redirecionados Autorizar endpoint diretamente para o IdP. Para cadastrar seus usuários com um identificador e redirecionar para o IdP, inclua o identificador no idp_identifier=myidp.example.com formato nos parâmetros de solicitação da solicitação de autorização inicial.

Outro método para passar um usuário para o seu IdP é preencher o parâmetro identity_provider com o nome do seu IdP no formato a seguir. URL

https://mydomain.us-east-1.amazoncognito.com/oauth2/authorize? response_type=code& identity_provider=MySAMLIdP& client_id=1example23456789& redirect_uri=https://www.example.com

Depois que um usuário faz login com seu SAML IdP, seu IdP o redireciona com uma SAML resposta no corpo para o seu endpoint. HTTP POST /saml2/idpresponse O Amazon Cognito processa a SAML afirmação e, se as declarações na resposta atenderem às expectativas, redireciona para o retorno de chamada do cliente do aplicativo. URL Depois que seu usuário tiver concluído a autenticação dessa forma, ele interagirá com páginas da Web somente para seu IdP e seu aplicativo.

Com identificadores de IdP em formato de domínio, a interface de usuário hospedada do Amazon Cognito solicita endereços de e-mail no login e, quando o domínio de e-mail corresponde a um identificador de IdP, redireciona os usuários para a página de login do IdP. Por exemplo, você cria um aplicativo que exige o login de funcionários de duas empresas diferentes. A primeira empresa, AnyCompany A, possui exampleA.com exampleA.co.uk e. A segunda empresa, AnyCompany B, possuiexampleB.com. Neste exemplo, você configurou dois IdPs, um para cada empresa, da seguinte forma:

  • Para o IdP A, você define os identificadores exampleA.com e exampleA.co.uk.

  • Para o IdP B, você define o identificador exampleB.com.

Em seu aplicativo, invoque a interface de usuário hospedada para seu cliente de aplicativo para solicitar que cada usuário insira seu endereço de e-mail. O Amazon Cognito deriva o domínio do endereço de e-mail, correlaciona o domínio a um IdP com um identificador de domínio e redireciona seu usuário para o IdP correto com uma solicitação para o que contém um parâmetro de solicitação. Autorizar endpoint idp_identifier Por exemplo, se um usuário entrarbob@exampleA.co.uk, a próxima página com a qual ele interage é a página de login do IdP em. https://auth.exampleA.co.uk/sso/saml

Você também pode implementar a mesma lógica de forma independente. No seu aplicativo, você pode criar um formulário personalizado que coleta as entradas do usuário e as correlaciona com o IdP correto de acordo com sua própria lógica. Você pode gerar portais de aplicativos personalizados para cada um dos locatários do seu aplicativo, onde cada um é vinculado ao endpoint de autorização com o identificador do locatário nos parâmetros da solicitação.

Para coletar um endereço de e-mail e analisar o domínio na interface hospedada, atribua pelo menos um identificador a cada SAML IdP que você atribuiu ao seu cliente do aplicativo. Por padrão, a tela de login da interface do usuário hospedada exibe um botão para cada um dos IdPs que você atribuiu ao seu cliente de aplicativo. No entanto, se você atribuiu identificadores com sucesso, sua página de login da interface de usuário hospedada será semelhante à imagem a seguir.

Uma página de login da interface do usuário hospedada no Amazon Cognito exibindo um login de usuário local e uma solicitação para que um usuário federado insira um endereço de e-mail.

A análise de domínio na interface hospedada exige que você use domínios como seus identificadores de IdP. Se você atribuir um identificador de qualquer tipo a cada um SAML IdPs para um cliente de aplicativo, a interface de usuário hospedada desse aplicativo não exibirá mais os botões de seleção de IDP. Adicione identificadores de IdP para SAML quando você pretende usar análise de e-mail ou lógica personalizada para gerar redirecionamentos. Quando você quiser gerar redirecionamentos silenciosos e também quiser que sua interface hospedada exiba uma lista de IdPs, não atribua identificadores e use o parâmetro de identity_provider solicitação em suas solicitações de autorização.

  • Se você atribuir apenas um SAML IdP ao seu cliente de aplicativo, a página de login da IU hospedada exibirá um botão para entrar com esse IdP.

  • Se você atribuir um identificador a cada SAML IdP ativado para seu cliente de aplicativo, uma solicitação de entrada do usuário para um endereço de e-mail aparecerá na página de login da interface hospedada.

  • Se você tiver vários IdPs e não atribuir um identificador a todos eles, a página de login da IU hospedada exibirá um botão para entrar com cada IdP atribuído.

  • Se você atribuiu identificadores ao seu IdPs e deseja que sua interface hospedada exiba uma seleção de botões de IdP, adicione um novo IdP que não tenha identificador ao seu cliente de aplicativo ou crie um novo cliente de aplicativo. Você também pode excluir um IdP existente e adicioná-lo novamente sem um identificador. Se você criar um novo IdP, seus SAML usuários criarão novos perfis de usuário. Essa duplicação de usuários ativos pode ter um impacto no faturamento no mês em que você altera a configuração do IdP.

Para obter mais informações sobre a configuração do IdP, consulte Como configurar provedores de identidade para seu grupo de usuários.