Provedor de credencial do IAM Identity Center - AWS SDKs e ferramentas

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

Provedor de credencial do IAM Identity Center

Esse mecanismo de autenticação é usado AWS IAM Identity Center para obter acesso de login único (SSO) ao seu código Serviços da AWS .

nota

Na documentação da API do AWS SDK, o provedor de credenciais do IAM Identity Center é chamado de provedor de credenciais SSO.

Depois de habilitar o IAM Identity Center, você define um perfil para suas configurações no seu AWS config arquivo compartilhado. Este perfil é usado para se conectar ao portal de acesso do IAM Identity Center. Quando um usuário se autentica com sucesso no IAM Identity Center, o portal retorna credenciais de curto prazo para o perfil do IAM associado a esse usuário. Para saber como o SDK obtém credenciais temporárias da configuração e as usa para AWS service (Serviço da AWS) solicitações, consulte. Entenda a autenticação do IAM Identity Center

Há duas maneiras de configurar o IAM Identity Center por meio do arquivo config:

  • Configuração do provedor de token SSO (recomendada) — Durações de sessão estendidas.

  • Configuração legada não atualizável — usa uma sessão fixa de oito horas.

Em ambas as configurações, você precisa entrar novamente quando sua sessão expirar.

Para definir durações de sessão personalizadas, você deve usar a configuração do provedor de token SSO.

Os dois guias a seguir contêm informações adicionais sobre o IAM Identity Center:

Pré-requisitos

É necessário primeiro habilitar o IAM Identity Center. Para obter detalhes sobre como habilitar a autenticação do IAM Identity Center, consulte Conceitos básicos no Guia do usuário do AWS IAM Identity Center .

Como alternativa, siga as Autenticação do IAM Identity Center instruções deste guia. Estas instruções fornecem orientação completa, desde a habilitação do IAM Identity Center até a conclusão da configuração necessária de config arquivos compartilhados que segue aqui.

Configuração do provedor de token do SSO

nota

Para usar o AWS CLI para criar essa configuração para você, consulte Configurar seu perfil com o aws configure sso assistente no AWS CLI.

Quando você usa a configuração do provedor de token SSO, seu AWS SDK ou ferramenta atualiza automaticamente sua sessão até o período estendido da sessão. Para obter mais informações sobre a duração e a duração máxima da sessão, consulte Configurar a duração da sessão do portal de AWS acesso e dos aplicativos integrados do IAM Identity Center no Guia AWS IAM Identity Center do usuário.

A sso-session seção do config arquivo é usada para agrupar variáveis de configuração para adquirir tokens de acesso SSO, que podem então ser usados para adquirir AWS credenciais. Para obter mais detalhes sobre a formatação de seções em um arquivo config, consulte Formato do arquivo de configuração.

Defina uma seção de sso-session e associe-a a um perfil. sso_region e sso_start_url devem ser definidos na seção sso-session. Normalmente, sso_account_id e sso_role_name deve ser definido na profile seção para que o SDK possa solicitar AWS credenciais.

nota

Para saber mais detalhes sobre como os SDKs e as ferramentas usam e atualizam as credenciais usando esta configuração, consulte Entenda a autenticação do IAM Identity Center.

O exemplo a seguir configura o SDK para solicitar credenciais do IAM Identity Center. Ele também oferece suporte à atualização automática de tokens.

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

Você pode reutilizar sso-session configurações em vários perfis.

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [profile prod] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole2 [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

No entanto, sso_account_id e sso_role_name não são necessários para todos os cenários de configuração do token do SSO. Se seu aplicativo usa apenas Serviços da AWS essa autenticação de portador de suporte, AWS as credenciais tradicionais não são necessárias. A autenticação do portador é um esquema de autenticação HTTP que usa tokens de segurança chamados tokens de portador. Nesse cenário, sso_account_id e sso_role_name não são obrigatórios. Consulte o guia individual AWS service (Serviço da AWS) para determinar se ele suporta a autorização do token do portador.

Os escopos de registro são configurados como parte de umsso-session. O escopo é um mecanismo no OAuth 2.0 para limitar o acesso de um aplicativo à conta de um usuário. Um aplicativo pode solicitar um ou mais escopos, e o token de acesso emitido para o aplicativo está limitado aos escopos concedidos. Esses escopos definem as permissões solicitadas para serem autorizadas para o cliente OIDC registrado e os tokens de acesso recuperados pelo cliente. Para obter as opções de escopo de acesso compatíveis, consulte Escopos de acesso no Guia do usuário do AWS IAM Identity Center . O exemplo a seguir define sso_registration_scopes para fornecer acesso para listas de contas/perfis.

[sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

O token de autenticação é armazenado em cache no disco sob o diretório ~/.aws/sso/cache com um nome de arquivo baseado no nome da sessão.

Configuração herdada não atualizável

A atualização automática de tokens não é compatível usando a configuração herdada não atualizável. Em vez disso, recomendamos usar Configuração do provedor de token do SSO.

Para usar a configuração legada não atualizável, você deve especificar as seguintes configurações no seu perfil:

  • sso_start_url

  • sso_region

  • sso_account_id

  • sso_role_name

Você especifica o portal do usuário para um perfil com as configurações sso_start_url e sso_region. Você especifica as permissões com as configurações sso_account_id e sso_role_name.

O exemplo a seguir define os quatro valores necessários no arquivo config.

[profile my-sso-profile] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-west-2 sso_account_id = 111122223333 sso_role_name = SSOReadOnlyRole

O token de autenticação é armazenado em cache no disco sob o diretório ~/.aws/sso/cache com um nome de arquivo baseado no sso_start_url.

Configurações do provedor de credenciais do IAM Identity Center

Configure esta funcionalidade usando o seguinte:

sso_start_url- configuração de AWS config arquivo compartilhado

O URL que aponta para o portal de acesso ao IAM Identity Center da sua organização. Para obter mais informações sobre o portal de acesso do IAM Identity Center, consulte Usando o portal de AWS acesso no Guia AWS IAM Identity Center do usuário.

Para encontrar esse valor, abra o console do IAM Identity Center, visualize o painel e encontre a URL do portal de AWS acesso.

sso_region- configuração de AWS config arquivo compartilhado

O Região da AWS que contém o host do portal do IAM Identity Center; ou seja, a região que você selecionou antes de ativar o IAM Identity Center. Isso é independente da sua AWS região padrão e pode ser diferente.

Para obter uma lista completa dos Regiões da AWS e de seus códigos, consulte Endpoints regionais no Referência geral da Amazon Web Services. Para encontrar esse valor, abra o console do IAM Identity Center, visualize o painel e encontre a região.

sso_account_id- configuração de AWS config arquivo compartilhado

O ID numérico do Conta da AWS que foi adicionado por meio do AWS Organizations serviço para uso na autenticação.

Para ver a lista de contas disponíveis, acesse o console do IAM Identity Center e abra a página de Contas da AWS. Você também pode ver a lista de contas disponíveis usando o método ListAccountsAPI na Referência da API do AWS IAM Identity Center Portal. Por exemplo, você pode chamar o AWS CLI método list-accounts.

sso_role_name- configuração de AWS config arquivo compartilhado

O nome de um conjunto de permissões provisionado como um perfil do IAM que define as permissões resultantes do usuário. A função deve existir no Conta da AWS especificado porsso_account_id. Use o nome do perfil, não o nome do recurso da Amazon (ARN) do perfil.

Os conjuntos de permissões têm políticas do IAM e políticas de permissões personalizadas anexadas a eles e definem o nível de acesso que os usuários têm às suas Contas da AWS atribuídas.

Para ver a lista de conjuntos de permissões disponíveis por Conta da AWS, acesse o console do IAM Identity Center e abra a Contas da AWSpágina. Escolha o nome correto do conjunto de permissões listado na Contas da AWS tabela. Você também pode ver a lista de conjuntos de permissões disponíveis usando o método ListAccountRolesAPI na Referência da API do AWS IAM Identity Center Portal. Por exemplo, você pode chamar o AWS CLI método list-account-roles.

sso_registration_scopes- configuração de AWS config arquivo compartilhado

Uma lista delimitada por vírgulas de escopos a serem autorizados para sso-session. Os escopos autorizam o acesso aos endpoints autorizados portadores do token do IAM Identity Center. Um escopo mínimo de sso:account:access deve ser concedido para recuperar um token de atualização do serviço IAM Identity Center. Para ver os strings de caracteres do escopo de acesso compatíveis, consulte Escopos de acesso no Guia do usuário AWS IAM Identity Center . Esta configuração não é aplicável à configuração legada não atualizável. Os tokens emitidos usando a configuração legada estão limitados ao escopo sso:account:access implícito.

Compatibilidade com AWS SDKs

Os SDKs a seguir são compatíveis com os recursos e configurações descritos neste tópico. Quaisquer exceções parciais estão anotadas. Todas as configurações de propriedade do sistema JVM são suportadas pelo AWS SDK for Java e pelo AWS SDK para Kotlin único.

SDK Compatível Notas ou mais informações
AWS CLI v2 Sim
SDK para C++ Sim
SDK for Go V2 (1.x) Sim
SDK for Go 1.x (V1) Sim Para usar as configurações do arquivo config compartilhado, você deve ativar o carregamento do arquivo de configuração; consulte Sessões.
SDK para Java 2.x Sim Valores de configuração também compatíveis no arquivo credentials.
SDK para Java 1.x Não
SDK para 3.x JavaScript Sim
SDK para 2.x JavaScript Sim
SDK for Kotlin Sim
SDK for .NET 3.x Sim
SDK for PHP 3.x Sim
SDK for Python (Boto3) Sim
SDK for Ruby 3.x Sim
SDK for Rust Parcial Somente configuração herdada não atualizável.
Ferramentas para PowerShell Sim