AWS CLIでのSSO認証

投稿更新日: 2025/6/5

サムネイル

企業におけるクラウド活用が一般化する中、適切なユーザ管理とセキュアな認証の仕組みが重要になっています。

AWSのIAM Identity Centerを利用すると、効率的にユーザ管理とシングルサインオン(SSO)認証を実現できます。

本記事では、IAM Identity Centerを使ったユーザ管理、AWS CLIでのSSO設定手順を詳しく解説します。


IAM Identity Centerとは?

IAM Identity Center(旧AWS SSO)は、AWSの各種サービスやアカウントへのアクセスを一元管理できるサービスです。以下のような特徴があります:

  • ユーザとグループの管理を一元化
  • アクセス許可の簡易設定
  • AWSアカウントやサードパーティアプリケーションへのSSOをサポート

これにより、ユーザ体験を向上させるとともに、セキュリティリスクを軽減することができます。


ユーザ登録とSSO準備

IAM Identity Centerを使用するには、まずユーザ登録が必要です。

ユーザ登録が完了すると、AWSアクセスポータルにログインできる状態になります。このポータルを通じて、各AWSアカウントへのアクセスがシームレスになります。


AWS CLIでのSSO設定

AWS CLIを利用して業務を効率化する場合、CLIにSSOを設定する必要があります。以下に手順を示します。

1. 認証情報の確認

AWSアクセスポータルにログインし、自分の認証情報を確認します。この情報は設定ファイル作成時に必要です。

スクリーンショット 2024-12-02 17.48.50.png


2. ~/.aws/config ファイルの作成

以下のように設定ファイルを作成します。エディタで~/.aws/configを開き、次の内容を追加してください:

[profile your_profile]
sso_session = session_name
sso_account_id = xxxxxxxxxx
sso_role_name = PowerUserAccess
region = ap-northeast-1
output = json

[sso-session session_name]
sso_start_url = https://randomId.awsapps.com/start/#
sso_region = ap-northeast-1
sso_registration_scopes = sso:account:access

ポイント

  • profile 名は分かりやすい名前にしましょう(例:アカウント名やロール名を基にする)。
  • sso_start_url はIAM Identity Centerで設定されたURLを指定します。

3. SSOログイン

  1. ターミナルで次のコマンドを実行し、SSOログインを行います:
aws sso login --profile your_profile

コマンド実行後、ブラウザが自動で開き、AWSアクセスポータルへ移動します。

ターミナルではこのような内容が出力されます。

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:

MJKM-RHLP
  1. AWSアクセスポータルで認証が開始、ターミナルに出力されたコードと一致しているかを確認します。

    スクリーンショット 2024-12-02 17.29.37.png

  2. Confirm and continueをクリックします。

    スクリーンショット 2024-12-02 17.29.55.png

  3. アクセス許可をクリックします。

    スクリーンショット 2024-12-02 17.30.06.png

認証が完了しました。

  1. ターミナルに以下のメッセージが表示されればSSOログイン完了です:
Successfully logged into Start URL: https://randomId.awsapps.com/start/#

4. AWS CLIコマンドの実行

SSOで認証されたプロファイルを利用してAWS CLIコマンドを実行できます。例えば、S3バケットを確認する場合:

aws s3 ls --profile your_profile

これで、設定したSSOプロファイルを利用してAWSサービスにアクセスできます。


まとめ

IAM Identity Centerを利用する事で、複数アカウントやユーザのアクセス管理が大幅に簡素化されます。特にAWS CLIと組み合わせることで、業務効率の向上が期待できます。設定に少し手間はかかりますが、一度設定すれば簡単にSSO認証を利用できるようになります。

これを機に、IAM Identity Centerを活用してセキュアで効率的な環境を構築してみてはいかがでしょうか?


この記事をシェアする

合同会社raisexでは一緒に働く仲間を募集中です。

ご興味のある方は以下の採用情報をご確認ください。