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á.
Enable (Habilitar) AWS acesso à conta para aplicativos gerenciados pelo cliente
Você pode habilitar o acesso à AWS conta para aplicativos gerenciados pelo cliente no IAM Identity Center configurando um emissor de token confiável. Um emissor de token confiável é um servidor de autorização OAuth 2.0 que emite tokens assinados em nome de usuários autenticados. O IAM Identity Center troca esses tokens por credenciais que permitem que seu aplicativo acesse programaticamente AWS contas e funções atribuídas a esses usuários. Emissores de tokens confiáveis também podem ser usados para acessar aplicativos AWS gerenciados. Para obter mais informações, consulte Usar aplicações com um emissor de tokens confiáveis.
nota
Você pode ativar esse recurso somente para instâncias organizacionais do IAM Identity Center. Somente administradores de contas de gerenciamento ou administradores delegados podem habilitar o sso:account:access escopo de um aplicativo gerenciado pelo cliente. Se você for um criador de aplicativos em uma conta de membro, entre em contato com o administrador do IAM Identity Center para habilitar esse escopo para seu aplicativo.
Como funciona
Depois que um administrador ativa o sso:account:access escopo de um aplicativo gerenciado pelo cliente, ocorre o seguinte fluxo de trabalho:
-
Um usuário faz login no seu aplicativo por meio de seu provedor de identidade externo (IdP).
-
Seu aplicativo recebe um token JWT assinado do IdP.
-
Seu aplicativo troca esse token por um token do IAM Identity Center chamando a
CreateTokenWithIAMAPI com o tipo de concessão do portador do JWT ()urn:ietf:params:oauth:grant-type:jwt-bearer. Essa chamada requer autenticação Signature Version 4 (SigV4). Para obter mais informações, consulte a CreateTokenWithIAMReferência da API OIDC do IAM Identity Center. -
Seu aplicativo usa o token do IAM Identity Center para chamar as operações da API do portal (
ListAccountsListAccountRoles,,GetRoleCredentials) para descobrir contas e funções atribuídas ao usuário e recuperar AWS credenciais temporárias em nome dele. -
O usuário acessa os AWS recursos por meio do seu aplicativo sem nenhuma etapa adicional de login.
Se você ativou a concessão do token de atualização ao configurar seu aplicativo, CreateTokenWithIAM também retornará um token de atualização junto com o token de acesso. Seu aplicativo pode usar esse token de atualização para obter novos tokens de acesso sem repetir a troca completa do token JWT Bearer. Para atualizar um token de acesso, ligue CreateTokenWithIAM com o tipo de refresh_token concessão.
Pré-requisitos
Antes de habilitar o acesso à conta para um aplicativo gerenciado pelo cliente, você precisa:
-
Um aplicativo gerenciado pelo cliente configurado no IAM Identity Center que oferece suporte a JSON Web Tokens (JWTs). O aplicativo deve ter um componente de servidor de back-end que possa armazenar credenciais com segurança. Browser-based aplicativos, como aplicativos de página única (SPAs) e outros clientes públicos não são compatíveis com esse recurso.
-
Um emissor de token confiável anexado ao seu aplicativo.
-
Acesso à conta AWS Organizations de gerenciamento ou conta de administrador delegado do IAM Identity Center. Os criadores de aplicativos nas contas dos membros não podem ativar esse escopo diretamente.
Habilitar o acesso à conta
Para habilitar o escopo sso:account:access para um aplicativo gerenciado pelo cliente
-
Faça login no Console de gerenciamento da AWS usando a conta de gerenciamento ou a conta de administrador delegado da sua organização.
-
Abra o console do IAM Identity Center
. -
No painel de navegação, escolha Aplicativos.
-
Escolha a guia Gerenciada pelo cliente.
-
Escolha o nome do aplicativo que você deseja configurar.
-
Na seção de acesso àAWS conta, ative Habilitar acesso à AWS conta.
Depois de habilitar o acesso à conta, o aplicativo pode chamar programaticamente as operações da API do portal de identidade para listar contas e funções e recuperar AWS credenciais temporárias para funções que um usuário autenticado está autorizado a acessar.
Importante
Quando você ativa o sso:account:access escopo de um aplicativo, esse aplicativo pode acessar todas as contas e funções disponíveis para um usuário autenticado por meio de suas atribuições de conjunto de permissões. Você não pode restringir o aplicativo a contas ou funções específicas. Certifique-se de entender esse nível de acesso antes de ativar esse recurso.
Acesso programático
Você pode usar a PutApplicationAccessScope API para habilitar programaticamente o sso:account:access escopo de um aplicativo gerenciado pelo cliente. Você deve chamar a API da conta de gerenciamento da sua organização ou da conta de administrador delegado.
AWS CLI
aws sso-admin put-application-access-scope \ --application-arn arn:aws:sso::123456789012:application/ssoins-1234567890abcdef/apl-1234567890abcdef\ --scope "sso:account:access"
Solicitação de API:
{ "ApplicationArn": "arn:aws:sso::123456789012:application/ssoins-1234567890abcdef/apl-1234567890abcdef", "Scope": "sso:account:access" }
Para desativar o acesso à conta, use a DeleteApplicationAccessScope API com o mesmo ARN do aplicativo e valor de escopo.
Para obter mais informações, consulte PutApplicationAccessScopee DeleteApplicationAccessScopena Referência da API do IAM Identity Center.
Práticas recomendadas de segurança
-
O
sso:account:accessescopo concede ao aplicativo acesso a todas as contas e funções disponíveis para o usuário autenticado. Você não pode restringir o acesso a contas ou funções específicas. Ative esse escopo somente para aplicativos que exijam esse nível de acesso. -
Mantenha os tokens de acesso e os tokens de atualização do IAM Identity Center em seu servidor de back-end. Nunca os exponha ao código do lado do cliente.
-
Não registre tokens ou credenciais em registros de aplicativos, mensagens de erro ou resultados de depuração.
-
Não passe tokens nos parâmetros de consulta de URL. Use o
x-amz-sso_bearer_tokencabeçalho para tokens de acesso. -
Use AWS CloudTrailpara monitorar chamadas de API feitas por seus aplicativos.