Criar um provedor de identidade OpenID Connect (OIDC) no IAM - AWS Identity and Access Management

Criar um provedor de identidade OpenID Connect (OIDC) no IAM

Provedores de identidade OIDC do IAM são entidades no IAM que descrevem um serviço de provedor de identidade (IdP) externo que oferece suporte ao padrão OpenID Connect (OIDC), como Google ou Salesforce. Você usa um provedor de identidade OIDC do IAM quando deseja estabelecer confiança entre um IdP compatível com OIDC e sua Conta da AWS. Isso será útil quando você estiver criando um aplicativo móvel ou um aplicativo web que precise acessar os recursos da AWS, mas não quiser criar um código de acesso personalizado ou gerenciar suas próprias identidades de usuários. Para ter mais informações sobre esse cenário, consulte Federação OIDC.

Você pode criar e gerenciar um provedor de identidade do IAM OIDC usando oAWS Management Console, o AWS Command Line Interface, o Tools for Windows PowerShell ou a API do IAM.

Depois de criar um provedor de identidade OIDC do IAM, você deve criar uma ou mais funções do IAM. Função é uma identidade na AWS que não tem as próprias credenciais (como um usuário). Porém, neste contexto, uma função é atribuída dinamicamente a um usuário federado que é autenticado pelo IdP da sua organização. A função permite que o IdP de sua organização solicite credenciais de segurança temporárias para acesso à AWS. As políticas atribuídas à função determinam o que os usuários federados podem fazer na AWS. Para criar uma função para um provedor de identidade de terceiros, consulte Criar uma função para um provedor de identidade de terceiros (federação).

Importante

Quando você configura políticas baseadas em identidade para ações que oferecem suporte a recursos do oidc-provider, o IAM avalia o URL completo do provedor de identidades OIDC, incluindo todos os caminhos especificados. Se o URL do seu provedor de identidades OIDC tiver um caminho, será necessário incluir esse caminho no ARN do oidc-provider como um valor de elemento Resource. Você também tem a opção de acrescentar uma barra e um curinga (/*) ao domínio do URL ou usar caracteres curinga (* e ?) em qualquer ponto do caminho do URL. Se o URL do provedor de identidades OIDC na solicitação não corresponder ao valor definido no elemento Resource da política, a solicitação falhará.

Criar e gerenciar um provedor OIDC (console)

Siga estas instruções para criar e gerenciar um provedor de identidade OIDC do IAM no AWS Management Console.

Importante

Se você estiver usando um provedor de identidade OIDC do Google, Facebook ou Amazon Cognito, não crie um provedor de identidade do IAM separado usando este procedimento. Esses provedores de identidade OIDC já estão integrados à AWS e estão disponíveis para uso. Em vez disso, siga as etapas para criar novas funções para seu provedor de identidade, consulte Criar uma função para uma federação do OpenID Connect (console).

Para criar um provedor de identidade OIDC do IAM (console)
  1. Antes de criar um provedor de identidade OIDC do IAM, é necessário registrar sua aplicação com o IdP para receber um ID do cliente. O ID do cliente (também conhecido como público) é um identificador exclusivo para o seu aplicativo, emitido quando você registra o aplicativo com o IdP. Para obter mais informações sobre como obter um ID de cliente, consulte a documentação do IdP.

    nota

    A AWS protege a comunicação com alguns provedores de identidade (IdPs) OIDC por meio de nossa biblioteca de autoridades de certificação (CAs) raiz confiáveis, em vez de usar uma impressão digital do certificado para verificar o certificado do servidor IdP. Nesses casos, sua impressão digital herdada permanece em sua configuração, mas não é mais usada para validação. Esses IdPs do OIDC incluem Auth0, GitHub, GitLab, Google e aqueles que usam um bucket do Amazon S3 para hospedar um endpoint do JSON Web Key Set (JWKS).

  2. Abra o console IAM em https://console.aws.amazon.com/iam/.

  3. No painel de navegação, escolha Identity providers (Provedores de identidade) e, em seguida Add provider (Adicionar provedor).

  4. Para Configure provider (Configurar provedor), escolha OpenID Connect.

  5. Para URL do provedor, digite o URL do IdP. O URL deve estar em conformidade com estas restrições:

    • O URL diferencia maiúsculas de minúsculas.

    • O URL deve começar com https://.

    • O URL não deve conter um número de porta.

    • Dentro da sua Conta da AWS, cada provedor de identidade OIDC do IAM deve usar um URL exclusivo.

  6. Escolha Get thumbprint (Obter impressão digital) para verificar o certificado do servidor do seu IdP. Para saber como, consulte Obter a impressão digital para um provedor de identidade OpenID Connect.

    nota

    A cadeia de certificados do provedor de identidade de OIDC deverá começar com o URL do domínio ou do emissor, depois com o certificado intermediário e terminar com o certificado raiz. Se a ordem da cadeia de certificados for diferente ou incluir certificados duplicados ou adicionais, você receberá um erro de incompatibilidade de assinatura e o STS falhará ao validar o JSON Web Token (JWT). Corrija a ordem dos certificados na cadeia retornados do servidor para resolver o erro. Para obter mais informações sobre os padrões da cadeia de certificados, consulte certificate_list em RFC 5246 no site da série RFC.

  7. Em Audience (Público), digite o ID do cliente da aplicação que você registrou com o IdP e recebeu na Passo 1 e que fará solicitações para a AWS. Se você tiver IDs do cliente adicionais (também conhecidos como públicos) para este IdP, poderá adicioná-los, posteriormente, na página de detalhes do provedor.

  8. (Opcional) Em Add tags (Adicionar etiquetas), você pode adicionar pares de chave-valor para ajudar na identificação e organização de seus IdPs. Você também pode usar tags para controlar o acesso aos recursos da AWS. Para saber mais sobre como etiquetar provedores de identidade OIDC do IAM, consulte Marcar provedores de identidade OpenID Connect (OIDC). Escolha Adicionar Tag. Insira valores para cada par de chave-valor de tag.

  9. Verifique as informações fornecidas. Quando terminar, escolha Add provider (Adicionar provedor).

  10. Atribua uma função do IAM ao seu provedor de identidade para fornecer identidades de usuário externo gerenciadas pelo seu provedor de identidade, permissões para acessar recursos da AWS em sua conta. Para saber mais sobre como criar funções para a federação de identidades, consulte Criar uma função para um provedor de identidade de terceiros (federação).

    nota

    Os IdPs OIDC usados em uma política de confiança de perfil devem estar na mesma conta que o perfil que confia nela.

Para adicionar ou remover uma impressão digital de um provedor de identidade OIDC do IAM (console)
  1. Abra o console IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Identity providers (Provedores de identidade). Em seguida, escolha o nome do provedor de identidade do IAM que você deseja atualizar.

  3. Na seção Thumbprints (Impressões digitais), escolha Manage (Gerenciar). Para inserir um novo valor de impressão digital, escolha Add thumbprint (Adicionar impressão digital). Para remover uma impressão digital, escolha Remove (Remover) ao lado do item que deseja remover.

    nota

    Um provedor de identidade OIDC do IAM deve ter, pelo menos, uma impressão digital e, no máximo, cinco impressões digitais.

    Quando concluir, escolha Save changes (Salvar alterações).

Para adicionar um público para um provedor de identidade OIDC do IAM (console)
  1. No painel de navegação, escolha Identity providers (Provedores de identidade) e escolha o nome do provedor de identidade do IAM que você deseja atualizar.

  2. Na seção Audiences (Público-alvo), escolha Actions (Ações) e selecione Add audience (Adicionar público-alvo).

  3. Digite o ID do cliente da aplicação que você registrou com o IdP e recebeu em Passo 1 e que fará solicitações para a AWS. Em seguida, escolha Add audiences (Adicionar público-alvo).

    nota

    Um provedor de identidade OIDC do IAM deve ter pelo menos um público e, no máximo, 100 públicos.

Para remover um público de um provedor de identidade OIDC do IAM (console)
  1. No painel de navegação, escolha Identity providers (Provedores de identidade) e escolha o nome do provedor de identidade do IAM que você deseja atualizar.

  2. Na seção Audiences (Público-alvo), selecione o botão de opção ao lado do público-alvo que você deseja remover e, em seguida, selecione Actions (Ações).

  3. Escolha Remove audience (Remover público-alvo). Uma nova janela é aberta.

  4. Se você remover um público-alvo, as identidades federadas com o público não poderão assumir funções associadas ao público. Na janela, leia o aviso e confirme se deseja remover o público-alvo digitando a palavra remove no campo.

  5. Escolha Remove (Remover) para remover o público-alvo.

Para excluir um provedor de identidade OIDC do IAM (console)
  1. Abra o console IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Identity providers (Provedores de identidade).

  3. Marque a caixa de seleção ao lado do provedor de identidade do IAM que você deseja excluir. Uma nova janela é aberta.

  4. Confirme se deseja excluir o provedor digitando a palavra delete no campo. Em seguida, selecione Excluir.

Criar e gerenciar um provedor de identidade OIDC do IAM (AWS CLI)

Você pode usar os comandos da AWS CLI a seguir para criar e gerenciar provedores de identidade OIDC do IAM.

Para criar um provedor de identidade OIDC do IAM (AWS CLI)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM na sua conta da AWS, execute o seguinte comando:

  2. Para criar um novo provedor de identidade OIDC do IAM, execute o seguinte comando:

Para atualizar a lista de impressões digitais de certificado do servidor de um provedor de identidade OIDC do IAM existente (AWS CLI)
Para etiquetar um provedor de identidade OIDC do IAM existente (AWS CLI)
Para listar etiquetas para um provedor de identidade OIDC do IAM existente (AWS CLI)
Para remover etiquetas em um provedor de identidade OIDC do IAM (AWS CLI)
Para adicionar ou remover um ID de cliente de um provedor de identidade OIDC do IAM existente (AWS CLI)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM na sua conta da AWS, execute o seguinte comando:

  2. (Opcional) Para obter informações detalhadas sobre um provedor de identidade OIDC do IAM, execute o seguinte comando:

  3. Para adicionar um novo ID do cliente a um provedor de identidade OIDC do IAM existente, execute o seguinte comando:

  4. Para remover um cliente de um provedor de identidade OIDC do IAM existente, execute o seguinte comando:

Para excluir um provedor de identidade OIDC do IAM (AWS CLI)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM na sua conta da AWS, execute o seguinte comando:

  2. (Opcional) Para obter informações detalhadas sobre um provedor de identidade OIDC do IAM, execute o seguinte comando:

  3. Para excluir um provedor de identidade OIDC do IAM, execute o seguinte comando:

Criar e gerenciar um provedor de identidade OIDC (API da AWS)

Você pode usar os comandos da API do IAM a seguir para criar e gerenciar provedores OIDC.

Para criar um provedor de identidade OIDC do IAM (API da AWS)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM em sua conta da AWS, chame a seguinte operação:

  2. Para criar um novo provedor de identidade OIDC do IAM, chame a seguinte operação:

Para atualizar a lista de impressões digitais de certificado do servidor de um provedor de identidade OIDC do IAM existente (API da AWS)
Para etiquetar um provedor de identidade OIDC do IAM existente (API da AWS)
Para listar etiquetas para um provedor de identidade OIDC do IAM existente (API da AWS)
Para remover etiquetas em um provedor de identidade OIDC do IAM existente (API da AWS)
  • Para remover etiquetas de um provedor de identidade OIDC do IAM existente, chame a seguinte operação:

Para adicionar ou remover um ID de cliente de um provedor de identidade OIDC do IAM existente (API da AWS)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM em sua conta da AWS, chame a seguinte operação:

  2. (Opcional) Para obter informações detalhadas sobre um provedor de identidade OIDC do IAM, chame a seguinte operação:

  3. Para adicionar um novo ID do cliente a um provedor de identidade OIDC do IAM existente, chame a seguinte operação:

  4. Para remover um ID do cliente de um provedor de identidade OIDC do IAM existente, chame a seguinte operação:

Para excluir um provedor de identidade OIDC do IAM (API da AWS)
  1. (Opcional) Para obter uma lista de todos os provedores de identidade OIDC do IAM em sua conta da AWS, chame a seguinte operação:

  2. (Opcional) Para obter informações detalhadas sobre um provedor de identidade OIDC do IAM, chame a seguinte operação:

  3. Para excluir um provedor de identidade OIDC do IAM, chame a seguinte operação: