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á.
AWS CodeArtifact autenticação e tokens
CodeArtifact exige que os usuários se autentiquem com o serviço para publicar ou consumir versões do pacote. Você deve se autenticar no CodeArtifact serviço criando um token de autorização usando suas AWS credenciais. Para criar um token de autorização, é necessário ter as permissões corretas. Para obter as permissões necessárias para criar um token de autorização, consulte a entrada GetAuthorizationToken
no AWS CodeArtifact referência de permissões. Para obter mais informações gerais sobre CodeArtifact permissões, consulteComo AWS CodeArtifact funciona com IAM.
Para obter um token de autorização de CodeArtifact, você deve chamar o. GetAuthorizationToken API Usando o AWS CLI, você pode chamar GetAuthorizationToken
com o get-authorization-token
comando login
ou.
nota
Os usuários root não podem chamar GetAuthorizationToken
.
aws codeartifact login
: Esse comando facilita a configuração de gerenciadores de pacotes comuns para uso CodeArtifact em uma única etapa. A chamadalogin
busca um tokenGetAuthorizationToken
e configura seu gerenciador de pacotes com o token e o endpoint correto do CodeArtifact repositório. Os gerenciadores de pacotes de suporte são os seguintes:dotnet
npm
pepita
pip
rápido
barbante
aws codeartifact get-authorization-token
: para gerenciadores de pacotes não compatíveis comlogin
, você pode chamarget-authorization-token
diretamente e depois configurar seu gerenciador de pacotes com o token conforme necessário, por exemplo, adicionando-o a um arquivo de configuração ou armazenando-o em uma variável de ambiente.
CodeArtifact os tokens de autorização são válidos por um período padrão de 12 horas. Os tokens podem ser configurados com uma vida útil entre 15 minutos e 12 horas. Quando a vida útil expirar, você deverá obter outro token. A vida útil do token começa após login
ou get-authorization-token
após a chamada.
Se login
ou get-authorization-token
for chamado enquanto assume uma função, você pode configurar a vida útil do token para ser igual ao tempo restante na duração da sessão da função definindo o valor de --duration-seconds
para 0
. Caso contrário, a vida útil do token é independente da duração máxima da sessão da função. Por exemplo, suponha que você ligue sts
assume-role
e especifique uma duração de sessão de 15 minutos e, em seguida, ligue login
para obter um token de CodeArtifact autorização. Nesse caso, o token é válido por todo o período de 12 horas, mesmo que seja maior do que a duração da sessão de 15 minutos. Para obter informações sobre como controlar a duração da sessão, consulte Usando IAM funções no Guia IAM do usuário.
Tokens criados com o comando login
O aws codeartifact login
comando buscará um token GetAuthorizationToken
e configurará seu gerenciador de pacotes com o token e o endpoint correto do CodeArtifact repositório.
A tabela a seguir descreve os parâmetros para o comando login
.
Parâmetro | Obrigatório | Descrição |
---|---|---|
|
Sim |
O gerenciador de pacotes no qual se autenticar. Os valores possíveis são |
|
Sim |
O nome de domínio ao qual o repositório pertence. |
|
Não |
O ID do proprietário do domínio. Esse parâmetro é necessário se você estiver acessando um domínio pertencente a uma AWS conta na qual você não está autenticado. Para obter mais informações, consulte Domínios entre contas. |
|
Sim |
O nome do repositório no qual se autenticar. |
|
Não |
O tempo, em segundos, durante o qual as informações de login são válidas. O valor mínimo é 900* e o valor máximo é 43200. |
|
Não |
Associa um namespace à sua ferramenta de repositório. |
|
Não |
Imprima somente os comandos que seriam executados para conectar sua ferramenta ao seu repositório sem fazer nenhuma alteração na sua configuração. |
*Um valor de 0 também é válido ao chamar |
O exemplo a seguir mostra como obter um token de autorização com o comando login
.
aws codeartifact login \ --tool
dotnet | npm | nuget | pip | swift | twine
\ --domainmy_domain
\ --domain-owner111122223333
\ --repositorymy_repo
Para obter orientações específicas sobre como usar o comando login
com o npm, consulte Configure e use o npm com CodeArtifact. Para Python, consulte Usando CodeArtifact com Python.
Permissões necessárias para chamar o GetAuthorizationToken
API
As permissões sts:GetServiceBearerToken
e as codeartifact:GetAuthorizationToken
permissões são necessárias para chamar CodeArtifact GetAuthorizationToken
API o.
Para usar um gerenciador de pacotes com um CodeArtifact repositório, seu IAM usuário ou função deve permitirsts:GetServiceBearerToken
. Embora sts:GetServiceBearerToken
possa ser adicionada a uma política de recursos de CodeArtifact domínio, a permissão não terá efeito nessa política.
Tokens criados com o GetAuthorizationToken
API
Você pode ligar get-authorization-token
para obter um token de CodeArtifact autorização em.
aws codeartifact get-authorization-token \ --domain
my_domain
\ --domain-owner111122223333
\ --query authorizationToken \ --output text
Você pode alterar por quanto tempo um token é válido usando o argumento --duration-seconds
. O valor mínimo é 900 e o valor máximo é 43200. O exemplo a seguir cria um token que durará 1 hora (3600 segundos).
aws codeartifact get-authorization-token \ --domain
my_domain
\ --domain-owner111122223333
\ --query authorizationToken \ --output text \ --duration-seconds3600
Se estiver chamando get-authorization-token
enquanto assume uma função, a vida útil do token é independente da duração máxima da sessão da função. Você pode configurar o token para expirar quando a duração da sessão da função assumida expirar definindo --duration-seconds
como 0.
aws codeartifact get-authorization-token \ --domain
my_domain
\ --domain-owner111122223333
\ --query authorizationToken \ --output text \ --duration-seconds0
Consulte a documentação a seguir para obter mais informações:
-
Para obter orientação sobre tokens e variáveis de ambiente, consulte Passar um token de autenticação usando uma variável de ambiente.
-
Para usuários do Python, consulte Configurar o pip sem o comando login ou Configure e use o twine com CodeArtifact.
-
Para usuários do Maven, consulte Use CodeArtifact com o Gradle ou Use CodeArtifact com mvn.
-
Para usuários do npm, consulte Configuração do npm sem usar o comando login.
Passar um token de autenticação usando uma variável de ambiente
AWS CodeArtifact usa tokens de autorização fornecidos pela GetAuthorizationToken
API para autenticar e autorizar solicitações de ferramentas de compilação, como Maven e Gradle. Para mais informações sobre esses tokens de autenticação, consulte Tokens criados com o GetAuthorizationToken API.
Você pode armazenar esses tokens de autenticação em uma variável de ambiente que pode ser lida por uma ferramenta de compilação para obter o token necessário para buscar pacotes de um CodeArtifact repositório ou publicar pacotes nele.
Por motivos de segurança, essa abordagem é preferível a armazenar o token em um arquivo onde ele possa ser lido por outros usuários ou processos, ou acidentalmente verificado no controle de origem.
-
Configure suas AWS credenciais conforme descrito emInstalar ou atualizar e configurar a AWS CLI.
-
Defina a
CODEARTIFACT_AUTH_TOKEN
variável de ambiente:nota
Em alguns cenários, você não precisa incluir o argumento
--domain-owner
. Para obter mais informações, consulte Domínios entre contas.-
macOS ou Linux:
export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text` -
Windows (usando o shell de comando padrão):
for /f %i in ('aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text') do set CODEARTIFACT_AUTH_TOKEN=%i -
Janelas PowerShell:
$env:CODEARTIFACT_AUTH_TOKEN = aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text
-
Revogando tokens CodeArtifact de autorização
Quando um usuário autenticado cria um token para acessar CodeArtifact recursos, esse token dura até que seu período de acesso personalizável termine. O período de acesso padrão é de 12 horas. Em alguns casos, é possível revogar o acesso a um token antes que o período de acesso expire. Você pode revogar o acesso aos CodeArtifact recursos seguindo estas instruções.
Se você criou o token de acesso usando credenciais de segurança temporárias, como funções assumidas ou acesso de usuário federado, poderá revogar o acesso atualizando uma IAM política para negar acesso. Para obter informações, consulte Desabilitar permissões para credenciais de segurança temporárias no Guia do IAMusuário.
Se você usou credenciais de IAM usuário de longo prazo para criar o token de acesso, deverá modificar a política do usuário para negar acesso ou excluir o IAM usuário. Para obter mais informações, consulte Alterando as permissões de um IAM usuário ou excluindo um IAM usuário.