Usar aplicações com um emissor de tokens confiáveis - AWS IAM Identity Center

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á.

Usar aplicações com um emissor de tokens confiáveis

Os emissores de tokens confiáveis permitem que você use a propagação de identidade confiável com aplicativos que se autenticam fora do. AWS Com emissores de tokens confiáveis, você pode autorizar essas aplicações a fazer solicitações em nome dos usuários para acessar aplicações gerenciadas pela AWS .

Os tópicos a seguir descrevem como os emissores de tokens confiáveis funcionam além de fornecer orientação sobre configuração.

Visão geral do emissor de tokens confiáveis

A propagação de identidade confiável fornece um mecanismo que permite que aplicativos que se autenticam externamente AWS façam solicitações em nome de seus usuários com o uso de um emissor de token confiável. Um emissor de tokens confiáveis é um servidor de autorização OAuth 2.0 que cria tokens assinados. Esses tokens autorizam aplicativos que iniciam solicitações (solicitando aplicativos) de acesso a AWS serviços (recebimento de aplicativos). As aplicações solicitantes iniciam solicitações de acesso em nome dos usuários que o emissor de tokens confiáveis autentica. Os usuários são conhecidos tanto pelo emissor de tokens confiáveis quanto pelo IAM Identity Center.

AWS os serviços que recebem solicitações gerenciam autorizações refinadas para seus recursos com base em seus usuários e membros de grupos, conforme representado no diretório do Identity Center. AWS os serviços não podem usar diretamente os tokens do emissor externo do token.

Para resolver isso, o IAM Identity Center oferece uma maneira para a aplicação solicitante, ou um driver da AWS usado pela aplicação solicitante, trocar o token emitido pelo emissor de tokens confiáveis por um token gerado pelo IAM Identity Center. O token gerado pelo IAM Identity Center referencia o usuário correspondente do IAM Identity Center. A aplicação solicitante, ou o driver, usa o novo token para iniciar uma solicitação à aplicação recebedora. Como o novo token referencia o usuário correspondente no IAM Identity Center, a aplicação recebedora pode autorizar o acesso solicitado com base no usuário ou na sua associação a um grupo, conforme representado no IAM Identity Center.

Importante

Escolher um servidor de autorização OAuth 2.0 para adicionar como um emissor de tokens confiáveis é uma decisão de segurança que requer consideração cuidadosa. Escolha somente emissores de token confiáveis em que você confia para realizar as seguintes tarefas:

  • Autenticar o usuário especificado no token.

  • Autorizar o acesso desse usuário à aplicação recebedora.

  • Gerar um token que o IAM Identity Center possa trocar por um token criado pelo IAM Identity Center.

Pré-requisitos e considerações para emissores de tokens confiáveis

Antes de configurar um emissor de tokens confiáveis, revise os seguintes pré-requisitos e considerações.

  • Configuração de emissor de tokens confiáveis

    Você deve configurar um servidor de autorização OAuth 2.0 (o emissor confiável do token). Embora o emissor de token confiável seja normalmente o provedor de identidade que você usa como fonte de identidade para o IAM Identity Center, ele não precisa ser. Para obter informações sobre como configurar o emissor de token confiável, consulte a documentação do provedor de identidade relevante.

    nota

    Você pode configurar até 10 emissores de tokens confiáveis para usar com o IAM Identity Center, desde que mapeie a identidade de cada usuário no emissor de tokens confiáveis para um usuário correspondente no IAM Identity Center.

  • O servidor de autorização OAuth 2.0 (o emissor de tokens confiáveis) que cria o token deve ter um endpoint de descoberta OpenID Connect (OIDC) que o IAM Identity Center possa usar para obter chaves públicas para verificar as assinaturas do token. Para ter mais informações, consulte URL do endpoint de descoberta do OIDC (URL do emissor).

  • Tokens emitidos pelo emissor de token confiável

    Os tokens do emissor confiável do token devem atender aos seguintes requisitos:

    • O token deve ser assinado e estar no formato JSON Web Token (JWT) usando o algoritmo RS256.

    • O token deve conter as seguintes afirmações:

      • Emissor (iss) — A entidade que emitiu o token. Esse valor deve corresponder ao valor configurado no endpoint de descoberta do OIDC (URL do emissor) no emissor de token confiável.

      • Assunto (sub) — O usuário autenticado.

      • Audiência (aud) — O destinatário pretendido do token. Esse é o AWS serviço que será acessado depois que o token for trocado por um token do IAM Identity Center. Para ter mais informações, consulte Declaração de Aud.

      • Tempo de expiração (exp) — O tempo após o qual o token expira.

    • O token pode ser um token de identidade ou um token de acesso.

    • O token deve ter um atributo que possa ser mapeado exclusivamente para um usuário do IAM Identity Center.

  • Declarações opcionais

    O IAM Identity Center é compatível com todas as declarações opcionais definidas na RFC 7523. Para obter mais informações, consulte a Seção 3: formato JWT e requisitos de processamento dessa RFC.

    Por exemplo, o token pode conter uma declaração JTI (JWT ID). Essa declaração, quando presente, impede que tokens com Lo mesmo JTI sejam reutilizados para trocas de tokens. Para obter mais informações sobre a declaração, consulte Detalhes da declaração JTI.

  • Configuração do IAM Identity Center para funcionar com um emissor de tokens confiáveis

    Você também deve habilitar o IAM Identity Center, configurar a fonte de identidades para o IAM Identity Center e provisionar os usuários que correspondem aos usuários no diretório do emissor de tokens confiáveis.

    Para isso, faça uma das seguintes alternativas:

    • Sincronize os usuários com o IAM Identity Center usando o protocolo System for Cross-domain Identity Management (SCIM) v2.0.

    • Crie os usuários diretamente no IAM Identity Center.

    nota

    Os emissores de tokens confiáveis não serão compatíveis se você usar o Serviço de Domínios do Active Directory como fonte de identidades.

Detalhes da declaração JTI

Se o IAM Identity Center receber uma solicitação para trocar um token que o IAM Identity Center já trocou, a solicitação falhará. Para detectar e evitar a reutilização de um token em trocas de tokens, você pode incluir uma declaração JTI. O IAM Identity Center protege contra a repetição de tokens com base nas declarações neles contidas.

Nem todos os servidores de autorização OAuth 2.0 adicionam uma declaração JTI aos tokens. Alguns servidores de autorização OAuth 2.0 adicionam uma declaração JTI aos tokens. Os servidores de autorização OAuth 2.0 compatíveis com o uso de uma declaração JTI podem adicionar essa declaração somente aos tokens de identidade, somente aos tokens de acesso ou a ambos. Para obter mais informações, consulte a documentação do servidor de autorização OAuth 2.0.

Para obter informações sobre a criação de aplicações que trocam tokens, consulte a documentação da API do IAM Identity Center. Para obter informações sobre como configurar uma aplicação gerenciada pelo cliente para obter e trocar os tokens corretos, consulte a documentação da aplicação.

Configurações de emissor de tokens confiáveis

As seções a seguir descrevem as configurações necessárias para configurar e usar um emissor de tokens confiáveis.

URL do endpoint de descoberta do OIDC (URL do emissor)

Ao adicionar um emissor de tokens confiáveis ao console do IAM Identity Center, é necessário especificar o URL do endpoint de descoberta OIDC. Esse URL é comumente referenciado por seu URL relativo, /.well-known/openid-configuration. No console do IAM Identity Center, esse URL é chamado de URL do emissor.

nota

Você deve colar a URL do endpoint de descoberta até o fim e para o final. .well-known/openid-configuration Se .well-known/openid-configuration for incluída na URL, a configuração do emissor de token confiável não funcionará. Como o IAM Identity Center não valida esse URL, se o URL não for formado corretamente, a configuração do emissor de token confiável falhará sem notificação.

O IAM Identity Center usa esse URL para obter informações adicionais sobre o emissor de tokens confiáveis. Por exemplo, o IAM Identity Center usa esse URL para obter as informações necessárias para verificar os tokens gerados pelo emissor de tokens confiáveis. Quando adicionar um emissor de tokens confiáveis ao IAM Identity Center, você deve especificar esse URL. Para encontrar o URL, consulte a documentação do provedor de servidor de autorização OAuth 2.0 que você usa para gerar tokens para sua aplicação ou entre em contato diretamente com o provedor para obter ajuda.

Mapeamento de atributos

Os mapeamentos de atributos permitem que o IAM Identity Center faça a correspondência entre o usuário declarado em um token emitido por um emissor de tokens confiáveis e um único usuário no IAM Identity Center. Você deve especificar o mapeamento de atributos quando adicionar o emissor de tokens confiáveis ao IAM Identity Center. Esse mapeamento de atributos é usado em uma declaração no token gerado pelo emissor de tokens confiáveis. O valor na declaração é usado para pesquisar no IAM Identity Center. A pesquisa usa o atributo especificado para recuperar um único usuário no IAM Identity Center, que será usado como usuário no AWS. A declaração que você escolher deve ser mapeada para um único atributo em uma lista fixa de atributos disponíveis no repositório de identidades do IAM Identity Center. Você pode escolher um dos seguintes atributos do repositório de identidades do IAM Identity Center: nome de usuário, e-mail e ID externo. O valor do atributo que você especifica no IAM Identity Center deve ser exclusivo para cada usuário.

Declaração de Aud

Uma declaração aud identifica o público (destinatários) ao qual um token se destina. Quando a aplicação que solicita acesso é autenticada por um provedor de identidades que não está federado ao IAM Identity Center, esse provedor de identidades deve ser configurado como um emissor de tokens confiáveis. A aplicação que recebe a solicitação de acesso (a aplicação recebedora) deve trocar o token gerado pelo emissor de tokens confiáveis por um token gerado pelo IAM Identity Center.

Para obter informações sobre como obter os valores da declaração aud para a aplicação recebedora como registrados no emissor de tokens confiáveis, consulte a documentação do emissor de tokens confiáveis ou entre em contato com o administrador do emissor de tokens confiáveis para obter ajuda.

Configurar um emissor de tokens confiáveis

Para permitir a propagação de identidades confiáveis para uma aplicação que faz a autenticação fora do IAM Identity Center, um ou mais administradores devem configurar um emissor de tokens confiáveis. Um emissor de tokens confiáveis é um servidor de autorização OAuth 2.0 que emite tokens para aplicações que iniciam solicitações (aplicações solicitantes). Os tokens autorizam esses aplicativos a iniciar solicitações em nome de seus usuários para um aplicativo receptor (um AWS serviço).

Coordenar perfis e responsabilidades administrativas

Em alguns casos, um único administrador pode realizar todas as tarefas necessárias para configurar um emissor de tokens confiáveis. Se vários administradores realizarem essas tarefas, será necessária uma coordenação estreita. A tabela a seguir descreve como vários administradores podem se coordenar para configurar um emissor de token confiável e configurar o AWS serviço para usá-lo.

nota

O aplicativo pode ser qualquer AWS serviço integrado ao IAM Identity Center e que ofereça suporte à propagação de identidade confiável.

Para ter mais informações, consulte Tarefas para configurar um emissor de tokens confiáveis.

Função Executa essas tarefas Coordena com
Administrador do IAM Identity Center

Adiciona o IdP externo como um emissor de tokens confiáveis ao console do IAM Identity Center.

Ajuda a configurar o mapeamento correto dos atributos entre o IAM Identity Center e o IdP externo.

Notifica o administrador do AWS serviço quando o emissor de token confiável é adicionado ao console do IAM Identity Center.

Administrador do IdP (emissor de tokens confiáveis) externo

AWS administrador do serviço

Administrador do IdP (emissor de tokens confiáveis) externo

Configura o IdP externo para emitir tokens.

Ajuda a configurar o mapeamento correto dos atributos entre o IAM Identity Center e o IdP externo.

Fornece o nome do público (declaração Aud) ao administrador do serviço da AWS .

Administrador do IAM Identity Center

AWS administrador do serviço

AWS administrador do serviço

Verifica o console AWS de serviço em busca do emissor de token confiável. O emissor de tokens confiáveis ficará visível no console do serviço da AWS depois que o administrador do IAM Identity Center o adicionar ao console do IAM Identity Center.

Configura o AWS serviço para usar o emissor de token confiável.

Administrador do IAM Identity Center

Administrador do IdP (emissor de tokens confiáveis) externo

Tarefas para configurar um emissor de tokens confiáveis

Para configurar um emissor de tokens confiáveis, um administrador do IAM Identity Center, o administrador do IdP (emissor de tokens confiáveis) externo e o administrador da aplicação devem realizar as tarefas a seguir.

nota

O aplicativo pode ser qualquer AWS serviço integrado ao IAM Identity Center e que ofereça suporte à propagação de identidade confiável.

  1. Adicionar o emissor de tokens confiáveis ao IAM Identity Center: o administrador do IAM Identity Center adiciona o emissor de tokens confiáveis usando o console do IAM Identity Center ou APIs. Essa configuração requer a especificação do seguinte:

    • O nome do emissor de tokens confiáveis

    • O URL do endpoint de descoberta OIDC (no console do IAM Identity Center, esse URL é chamado de URL do emissor).

    • Mapeamento de atributos para pesquisa de usuários. Esse mapeamento de atributos é usado em uma declaração no token que é gerado pelo emissor de tokens confiáveis. O valor na declaração é usado para pesquisar no IAM Identity Center. A pesquisa usa o atributo especificado para recuperar um único usuário do IAM Identity Center.

  2. Conectar o AWS serviço ao IAM Identity Center — O administrador do AWS serviço deve conectar o aplicativo ao IAM Identity Center usando o console do aplicativo ou das APIs do aplicativo.

    Depois que o emissor de token confiável é adicionado ao console do IAM Identity Center, ele também fica visível no console de AWS serviço e está disponível para seleção pelo administrador do AWS serviço.

  3. Configurar o uso da troca de tokens — No console de AWS serviço, o administrador do AWS serviço configura o AWS serviço para aceitar tokens emitidos pelo emissor confiável do token. Esses tokens são trocados por tokens gerados pelo IAM Identity Center. Isso requer a especificação do nome do emissor de token confiável da Etapa 1 e o valor da solicitação de Aud que corresponde ao AWS serviço.

    O emissor de tokens confiáveis coloca o valor da declaração Aud no token que ele emite para indicar que o token se destina a ser usado pelo serviço da AWS . Para obter esse valor, entre em contato com o administrador do emissor de tokens confiáveis.

Como adicionar um emissor de tokens confiáveis ao console do IAM Identity Center

Em uma organização que tem vários administradores, essa tarefa é realizada por um administrador do IAM Identity Center. Se você for o administrador do IAM Identity Center, deverá escolher qual IdP externo usar como emissor de tokens confiáveis.

Para adicionar um emissor de tokens confiáveis ao console do IAM Identity Center
  1. Abra o console do Centro de Identidade do IAM.

  2. Escolha Configurações.

  3. Na página Configurações, escolha a guia Autenticação.

  4. Em Emissores de token confiáveis, escolha Criar emissor de tokens confiáveis.

  5. Na página Configurar um IdP externo para emitir tokens confiáveis, em Detalhes do emissor de tokens confiáveis, faça o seguinte:

    • Para URL do emissor, especifique a URL de descoberta do OIDC do IdP externo que emitirá tokens para propagação de identidade confiável. Você deve especificar a URL do endpoint de descoberta até o fim e até o fim. .well-known/openid-configuration O administrador do IdP externo pode fornecer esse URL.

      nota

      Observação Esse URL deve corresponder ao URL na declaração do Emissor (iss) em tokens emitidos para propagação de identidade confiável.

    • Em Nome do emissor de tokens confiáveis, insira um nome para identificar esse emissor de tokens confiáveis no IAM Identity Center e no console da aplicação.

  6. Em Mapear atributos, faça o seguinte:

    • Em Atributo do provedor de identidades, selecione um atributo na lista para mapear para um atributo no repositório de identidades do IAM Identity Center.

    • Em Atributo do IAM Identity Center, selecione o atributo correspondente para o mapeamento de atributos.

  7. Em Tags (opcional), escolha Adicionar nova tag e especifique um valor para Chave e, opcionalmente, para Valor.

    Para obter mais informações sobre tags, consulte Marcando atributos AWS IAM Identity Center.

  8. Escolha Criar emissor de tokens confiáveis.

  9. Depois de concluir a criação do emissor de tokens confiáveis, entre em contato com o administrador da aplicação para informar o nome do emissor de tokens confiáveis, para que ele possa confirmar que o emissor de tokens confiáveis está visível no console aplicável.

  10. O administrador da aplicação deve selecionar esse emissor de tokens confiáveis no console aplicável para permitir o acesso do usuário à aplicação a partir das aplicações configuradas para a propagação de identidades confiáveis.

Como visualizar ou editar as configurações do emissor de tokens confiáveis no console do IAM Identity Center

Depois de adicionar um emissor de tokens confiáveis ao console do IAM Identity Center, você pode visualizar e editar as configurações relevantes.

Se você pretende editar as configurações do emissor de tokens confiáveis, lembre-se de que isso pode fazer com que os usuários percam o acesso a qualquer aplicação configurada para usar o emissor de tokens confiáveis. Para evitar interromper o acesso dos usuários, recomendamos que você coordene com os administradores de todas as aplicações configuradas para que usem o emissor de tokens confiáveis antes de editar as configurações.

Para visualizar ou editar as configurações do emissor de tokens confiáveis no console do IAM Identity Center
  1. Abra o console do Centro de Identidade do IAM.

  2. Escolha Configurações.

  3. Na página Configurações, escolha a guia Autenticação.

  4. Em Emissores de tokens confiáveis, selecione o emissor de tokens confiáveis que você deseja visualizar ou editar.

  5. Escolha Ações e, em seguida, escolha Editar.

  6. Na página Editar emissor de tokens confiáveis, visualize ou edite as configurações conforme necessário. Você pode editar o nome do emissor de tokens confiáveis os mapeamentos de atributos e as tags.

  7. Escolha Salvar alterações.

  8. Na caixa de diálogo Editar emissor de tokens confiáveis, você será solicitado a confirmar se deseja fazer alterações. Selecione a opção Confirmar.

Processo de configuração e fluxo de solicitação para aplicações que usam um emissor de tokens confiáveis

Esta seção descreve o processo de configuração e o fluxo de solicitação para aplicações que usam um emissor de tokens confiáveis para a propagação de identidades confiáveis. O diagrama a seguir fornece uma visão geral desse processo.

O processo de configuração e os fluxos de solicitação para aplicações que usam um emissor de tokens confiáveis para a propagação de identidades confiáveis

As etapas a seguir fornecem informações adicionais sobre esse processo.

  1. Configure o IAM Identity Center e o aplicativo AWS gerenciado de recebimento para usar um emissor de token confiável. Para mais informações, consulte Tarefas para configurar um emissor de tokens confiáveis.

  2. O fluxo de solicitação começa quando um usuário abre a aplicação solicitante.

  3. O aplicativo solicitante solicita um token do emissor confiável do token para iniciar solicitações ao aplicativo gerenciado receptor AWS . Se o usuário ainda não tiver sido autenticado, esse processo acionará um fluxo de autenticação. O token contém as seguintes informações:

    • O assunto (Sub) do usuário.

    • O atributo que o IAM Identity Center usa para pesquisar o usuário correspondente no IAM Identity Center.

    • Uma declaração de público (Aud) que contém um valor que o emissor de tokens confiáveis associa à aplicação gerenciada pela AWS recebedora. Se outras declarações estiverem presentes, elas não serão usadas pelo IAM Identity Center.

  4. O aplicativo solicitante, ou o AWS driver que ele usa, passa o token para o IAM Identity Center e solicita que o token seja trocado por um token gerado pelo IAM Identity Center. Se você usa um AWS driver, talvez seja necessário configurá-lo para esse caso de uso. Para obter mais informações, consulte a documentação do aplicativo AWS gerenciado relevante.

  5. O IAM Identity Center usa o endpoint de descoberta OIDC para obter a chave pública que pode ser usada para verificar a autenticidade do token. Em seguida, o IAM Identity Center faz o seguinte:

    • Verifica o token.

    • Pesquisa o diretório do Identity Center. Para fazer isso, o IAM Identity Center usa o atributo mapeado especificado no token.

    • Verifica se o usuário está autorizado a acessar a aplicação recebedora. Se o aplicativo AWS gerenciado estiver configurado para exigir atribuições a usuários e grupos, o usuário deverá ter uma atribuição direta ou baseada em grupo ao aplicativo; caso contrário, a solicitação será negada. Se a aplicação gerenciada pela AWS estiver configurada para não exigir atribuições de usuários e grupos, o processamento continuará.

      nota

      AWS os serviços têm uma configuração de configuração padrão que determina se as atribuições são necessárias para usuários e grupos. Recomendamos que você não modifique a configuração Exigir atribuições para essas aplicações se planejar usá-las com a propagação de identidades confiáveis. Mesmo que você tenha configurado permissões refinadas que permitam que o usuário acesse recursos específicos da aplicação, modificar a configuração Exigir atribuições pode resultar em um comportamento inesperado, incluindo interrupção do acesso do usuário a esses recursos.

    • Verifica se o aplicativo solicitante está configurado para usar escopos válidos para o aplicativo gerenciado receptor AWS .

  6. Se as etapas de verificação anteriores forem bem-sucedidas, o IAM Identity Center criará um novo token. O novo token é um token opaco (criptografado) que inclui a identidade do usuário correspondente no IAM Identity Center, o público (Aud) do aplicativo AWS gerenciado receptor e os escopos que o aplicativo solicitante pode usar ao fazer solicitações ao aplicativo gerenciado receptor AWS .

  7. A aplicação solicitante, ou o driver que ela usa, inicia uma solicitação de recurso para a aplicação recebedora e passa o token que o IAM Identity Center gerou para a aplicação recebedora.

  8. A aplicação recebedora faz chamadas para o IAM Identity Center para obter a identidade do usuário e os escopos que estão codificados no token. Ela também pode fazer solicitações para obter os atributos do usuário ou das associações a grupos do usuário no diretório do Identity Center.

  9. A aplicação recebedora usa sua configuração de autorização para definir se o usuário está autorizado a acessar o recurso da aplicação solicitado.

  10. Se o usuário estiver autorizado a acessar o recurso da aplicação solicitado, a aplicação recebedora responderá à solicitação.

  11. A identidade do usuário, as ações realizadas em seu nome e outros eventos registrados nos registros e CloudTrail eventos do aplicativo receptor. O modo específico como essas informações são registradas varia de acordo com a aplicação.