翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CodeArtifact認証とトークン
CodeArtifactでは、パッケージバージョンを公開したり消費したりするために、ユーザーがサービスで認証を受ける必要があります。に対して認証する必要があります。CodeArtifactを使用して、認証トークンを作成してサービスします。AWS認証情報。認証トークンを作成するには、適切なアクセス権限を持っている必要があります。の詳細については、「」を参照してください。CodeArtifact権限、「」を参照してください。AWS CodeArtifact リソースに対するアクセス許可の管理の概要。
認証トークンを取得するにはCodeArtifactでは、を呼び出す必要があります。GetAuthorizationトークン API。AWS CLIを使用することで、login
またはget-authorization-token
コマンドでGetAuthorizationToken
を実行することができます。
ルートユーザーは呼び出せないGetAuthorizationToken
。
aws codeartifact login
(npm、ピップ、およびひも): このコマンドを使用すると、使用する一般的なパッケージマネージャを簡単に構成できます。CodeArtifact1 つのステップで。呼び出しlogin
トークンをフェッチしますGetAuthorizationToken
トークンを使用してパッケージマネージャを構成し、正しいCodeArtifactリポジトリエンドポイント。aws codeartifact get-authorization-token
:login
でサポートされていないパッケージマネージャの場合、直接get-authorization-token
を呼び出すことができます。その後、必要に応じて、設定します例えばファイルにトークンを追加したり、環境変数に格納するなどして、パッケージマネージャにトークンを設定します。
CodeArtifact認可トークンは、デフォルトで 12 時間有効です。トークンの有効期限は15分から12時間の間で設定できます。有効期限切れになったら、別のトークンを取得する必要があります。トークンの有効期限は、login
またはget-authorization-token
が実行されてからカウントダウンされます。
ロールを引き受ける際にlogin
またはget-authorization-token
が呼び出された場合、--duration-seconds
の値を0
に設定することで、トークンの有効期限がロールのセッション時間の残り時間と同じになるように設定できます。それ以外の場合、トークンの有効期限は、ロールの最大セッション時間とは無関係です。たとえば、を呼び出すとします。sts
assume-role
15分間のセッション時間を指定し、電話をかけてlogin
をフェッチするにはCodeArtifact認可トークン。この場合、トークンは15分のセッションよりも長いですが、12時間全体にわたって有効です。セッションの継続時間の制御については、IAM ユーザーガイド の中の IAM ロールの使用 を参照してください。
login
コマンドで作成されたトークン
-aws codeartifact login
コマンドはトークンをフェッチしますGetAuthorizationToken
トークンを使用してパッケージマネージャを設定して修正しますCodeArtifactリポジトリエンドポイント。
次の表では、login
コマンドのパラメータについて説明します。
パラメータ | 必須 | 説明 |
---|---|---|
|
はい |
認証するパッケージマネージャ。指定できる値は |
|
はい |
リポジトリが属するドメイン名。 |
|
いいえ |
ドメインの所有者のID。このパラメータは、自分が認証されていないAWSアカウントが所有しているドメインにアクセスする場合に必要です。詳細については、「クロスアカウントドメイン」を参照してください。 |
|
はい |
認証先のリポジトリの名前。 |
|
いいえ |
ログイン情報が有効な時間 (秒単位)。最小値は 900*で、最大値は43200 です。 |
|
いいえ |
ネームスペースをリポジトリツールに関連付けます。 |
|
いいえ |
設定を変更せずに、ツールをリポジトリに接続するために実行されるコマンドのみを出力します。 |
* ロールを担いながら |
次の例は、login
コマンドを使用して認証トークンを取得する方法を示しています。
aws codeartifact login --tool
npm | pip | twine
--domainmy_domain
--domain-owner111122223333
--repositorymy_repo
npm でlogin
コマンドを実行する具体的方法についてはCodeArtifact で npm を設定して使用するを参照してください。Pythonについては、を使用する CodeArtifact Python を使用する を参照してください。
GetAuthorizationToken
APIで作成されたトークン
電話できますget-authorization-token
認証トークンを取得するにはCodeArtifact。
aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text
--duration-seconds
引数を使用して、トークンの有効期限を変更できます。最小値は900で、最大値は43200です。次の例では、1時間(3600 秒)続くトークンを作成します。
aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text --duration-seconds3600
ロールを引き受けながらget-authorization-token
を実行する場合、トークンの有効期限は、ロールの最大セッション時間とは無関係です。引き受けたロールのセッション時間が満了したときにトークンが期限切れになるように構成するには、--duration-seconds
を0に設定します。
aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text --duration-seconds0
詳細については、次のドキュメントを参照してください。
-
トークンと環境変数のガイダンスについては、環境変数を使用して認証トークンを渡すを参照してください。
-
Python ユーザーについては、ログインコマンドを使用せずにpipを設定するまたはtwineの設定と使用 CodeArtifactを参照してください。
-
Maven ユーザーについては、を使用する CodeArtifact Gradle とまたはmvn で CodeArtifact を参照してください。
-
npmユーザーについては、login コマンドを使用せずに npm を設定するを参照してください。
環境変数を使用して認証トークンを渡す
AWS CodeArtifactがベンディングした認証トークンを使用します。GetAuthorizationToken
Maven や Gradle などのビルドツールからのリクエストを認証し承認するためのAPI。それらの認証トークンについての詳細は、GetAuthorizationTokenAPIで作成されたトークンを参照してください。
これらの認証トークンは、環境変数に格納してビルドツールで読み取りCoftageからパッケージを取得するために必要なトークンを取得できます。CodeArtifactリポジトリまたはパッケージを公開します。
他ユーザーやプロセスによって読み取られたり、誤ってソース管理にチェックされる危険のあるファイルにトークンを格納するよりも、この方法がセキュリティ上の理由で適しています。
-
AWS CLI をインストールまたはアップグレードしてから設定するにはの説明に従ってAWS資格情報を設定します。
-
CODEARTIFACT_AUTH_TOKEN
環境変数を設定します:注記 一部のシナリオでは、
--domain-owner
引数を含める必要はありません。詳細については、「クロスアカウントドメイン」を参照してください。-
macOS、Linux :
export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text` -
Windows (デフォルトのコマンドシェルを使用):
for /f %i in ('aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text') do set CODEARTIFACT_AUTH_TOKEN=%i -
Windows PowerShell:
$env:CODEARTIFACT_AUTH_TOKEN = aws codeartifact get-authorization-token --domain
my_domain
--domain-owner111122223333
--query authorizationToken --output text
-
取り消すCodeArtifact認可トークン
認証されたユーザーがアクセスするトークンを作成したときCodeArtifactリソースの場合、そのトークンは、カスタマイズ可能なアクセス期間が終了するまで有効です。デフォルトのアクセス期間は12時間です。場合によっては、アクセス期間が切れる前にトークンへのアクセスを取り消すことができます。へのアクセス権を取り消すこともできます。CodeArtifact次の手順に従って、リソースを作成します。
引き受けたロール またはフェデレーティッドユーザーアクセス のように一時的なセキュリティ資格情報を使用してアクセストークンを作成した場合は、IAM ポリシーを更新してアクセスを拒否することで、アクセスを取り消すことができます。詳細については、IAM ユーザーガイド の一時的なセキュリティ資格情報の許可を無効にするを参照してください。
長期的な IAM ユーザー資格情報を使用してアクセストークンを作成した場合は、アクセスを拒否するようにユーザーズポリシーを変更するか、IAM ユーザーを削除する必要があります。詳細については、IAM ユーザーのアクセス権限の変更またはIAM ユーザーの削除 を参照してください。