ヤマムギ

growing hard days.

*

AWS CLIからIAM Identity CenterへサインインしてCodeCommitのリポジトリを使用する

   

Macで操作しました。

AWS CLIバージョンアップ

aws-cli/2.1.38 Python/3.8.8 Darwin/23.2.0 exe/x86_64 prompt/off

ローカルでCLI使うの久しぶりでしたのでAWS CLI の最新バージョンのインストールまたは更新を参照してバージョンアップしました。

aws-cli/2.15.30 Python/3.11.8 Darwin/23.2.0 exe/x86_64 prompt/off

バージョンアップも楽になりましたね。

IAM Identity Centerのプロファイルを設定する

[aws configure sso ウィザードでプロファイルを設定する](aws configure sso ウィザードでプロファイルを設定する)の手順です。

aws configure ssoを実行して、SSO session nameは覚えやすい名前にしました。
SSO start URLはIAM Identity CenterのAWSアクセスポータルのURLです。
SSO regionには、IAM Identity Centerを設定しているリージョンを指定しました。
SSO registration scopesはデフォルトのsso:account:accessのままでEnterを押下しました。

Attempting to automatically open the SSO authorization page in your default browser.
If the browser does not open or you wish to use a different device to authorize this request, open the following URL:

https://device.sso.ap-northeast-1.amazonaws.com/

Then enter the code:

上記のメッセージが表示されて、ブラウザが開きました。

[Confirm and continue]を押下しました。

IAM Identity Centerにサインインしました。

MFAも設定されているので安心です。

[Allow]を押下しました。

認証が完了してMacのターミナルに戻ります。

続いてAWSプロファイルの設定が聞かれたので指定しました。

.aws/configのプロファイルが作成されました。

{
“UserId”: “XXXXXXXXXXXXXX:xxxxxxxxx@xxxxxxxxx”,
“Account”: “123456789012”,
“Arn”: “arn:aws:sts::123456789012:assumed-role/RoleName/xxxxxxxxx@xxxxxxxxx”
}

プロファイル指定のget-caller-identityコマンドで確認して、IAM Identity Centerから引き受けたIAMロールの認証を使っていることがわかりました。

.aws/configには上記の設定ができていました。
プロファイルtr-sso-codecommitがsso-sessionセクションを使用しています。

.gitconfigの設定

[credential “https://git-codecommit.ap-northeast-1.amazonaws.com”]
helper = !aws –profile tr-sso-codecommit codecommit credential-helper $@
UseHttpPath = true

東京リージョンのCodeCommitですので、https://git-codecommit.ap-northeast-1.amazonaws.comに対してのgitコマンドを実行時に使用する認証情報として、CodeCommit認証情報ヘルパーでtr-sso-codecommitプロファイルを指定しました。

該当のディレクトリに移動して無事クローンできました。

認証情報がなくなると次のようなメッセージが出力されました。
Error loading SSO Token: Token for tr-sso does not exist

プロファイル名を指定してIAM Identity Centerにログインすればまたgitコマンドでの操作ができます。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

CloudTrailのログファイルの整合性検証をAWS CLIで実行しました

CloudTrailのログファイルの検証を「有効」にしました。 上記のようなCl …

特定AWSアカウント特定リージョンのSNSトピックを削除するLambda(Python)

やりたいこと 特定アカウント内特定リージョン内のSNSトピックを全部削除したいで …

API GatewayのアクセスログをCloudWatchに記録する

Amazon API GatewayのアクセスログをCloudWatchに記録で …

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました!

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました。 久 …

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く未来~」に行ってきました

「X-Tech JAWS 【第2回】~9割のX-Techと1割の優しさで切り拓く …

Lambda関数で自分自身の環境変数を更新する

Twitterでツイート検索するAPIを試してみるでツイートの取得を重複させない …

AWS LambdaのSQSへの自前ポーリングをやめてSQSイベントソーストリガーに変更した

以前は、LambdaがSQSからメッセージを受信するには、キューをポーリングして …

AWS EC2 インスタンスステータスのチェックで失敗して起動しなくなり復旧

EC2のインスタンスに接続出来なくなったので、AMIから作成してElastic …

Transit GatewayポリシーテーブルでCloud WANのコアネットワークに接続しました

「ポリシーテーブルってなんですか?」のご質問をいただいたので設定してみました。 …

RDSの証明書をrds-ca-2019に更新しました

クライアント接続で署名書使ってないので、必要ないのですが、古いままなのも気持ち悪 …