CloudSSO は Alibaba Cloud CLI と統合されています。ユーザーは、ブラウザまたは Alibaba Cloud CLI を使用して CloudSSO ユーザーポータルにログインできます。ユーザーが Alibaba Cloud CLI を使用して CloudSSO にアクセスする場合、Alibaba Cloud リソースにアクセスするには、リソースディレクトリのアカウントと必要なアクセス構成を選択する必要があります。このトピックでは、Alibaba Cloud CLI を使用して CloudSSO にアクセスする方法について説明します。
手順 1:CLI をインストールする
Alibaba Cloud CLI と CloudSSO CLI をインストールする必要があります。
Alibaba Cloud CLI をインストールする
CloudSSO CLI をインストールする
詳細については、「CloudSSO CLI」をご参照ください。
手順 2:CloudSSO へのアクセスに関する情報を構成する
次のコマンドを実行して、CloudSSO へのアクセスに関する情報を構成します。
acs-sso configure
CloudSSO ユーザーポータルへのログインに使用される URL を示す
signinUrl
を入力します。説明signinUrl
を取得するには、CloudSSO コンソール にログインし、[概要] ページに移動して、右側の [ユーザーログイン URL] セクションを見つけます。リクエストの例:
acs-sso configure ? please input 'signinUrl': https://signin-******.alibabacloudsso.com/device/login
正常なレスポンスの例:
configuration done!
手順 3:CloudSSO ユーザーを使用して Alibaba Cloud にログインする
以下は、一般的に使用されるコマンドのリストです。
デフォルトログイン
次のコマンドを実行します。
acs-sso login
表示されるブラウザで、ユーザーポータルにログインします。 ユーザーポータルにログインした後、ブラウザを閉じます。
ブラウザが表示されない場合は、CLI で提供されているログイン URL とユーザーコードをコピーして、ユーザーポータルにログインします。
例:
If your default browser is not opened automatically, please use the following URL to finish the signin process. Signin URL: https://signin-****.alibabacloudsso.com/device/code User Code: *********
現在のユーザーに、リソースディレクトリの複数のアカウントに対するアクセス権限が割り当てられている場合、CLI はアカウントと、そのアカウントのアクセス構成を選択するように求めます。 その後、CLI はアカウントの AccessKey ペアを生成します。
例:
You have logged in. used account: test-account(191585963325****) used access configuration: TestAC(ac-x08xz11covd3cyzd****) { "mode": "StsToken", "access_key_id": "STS.****", "access_key_secret": "****", "sts_token": "****" }
ユーザーポータルにログインすると、選択したアカウントとアクセス構成は profile オプションにキャッシュされます。
キャッシュされたアカウントとアクセス構成は、次回のログインに使用されます。
ログインプロファイルを使用してログインする
acs-sso login --profile sso
リソースディレクトリの複数のアカウントとアクセス構成のログイン情報を一度に構成する場合は、ログインプロファイルを指定して、特定のアカウントとそのアクセス構成を使用できます。 この場合、ログインプロファイルは、リソースディレクトリの複数のアカウントとそのアクセス構成を区別するために使用されます。
--profile
オプションを使用して、異なるログインプロファイルを指定できます。 前述のコマンドは、ログインプロファイルが sso であることを指定しています。--profile
オプションを使用してログインプロファイルを指定しない場合、default という名前のログインプロファイルが使用されます。ログイン構成を取得する。
acs-sso profile --list
特定のログイン構成を削除する。
次のコマンドを実行して、デフォルトのログイン構成を削除します。
acs-sso profile --delete --profile default
次のコマンドを実行して、sso という名前のログイン構成を削除します。
acs-sso profile --delete --profile sso
出力モードを構成する。
ビジネス要件に基づいて、次のモードのいずれかを構成できます。
外部プロセスモード: Alibaba Cloud CLI で --mode External を使用する場合は、このモードを使用できます。 このモードはデフォルト値です。 詳細については、「Use an external program to get credentials」をご参照ください。
例:
{ "mode": "StsToken", "access_key_id": "STS.NUyPeEoab****", "access_key_secret": "GBubpmh****", "sts_token": "CAIS****" }
環境変数モード:
--env
パラメーターを構成することで、このモードを使用できます。 例:acs-sso login --profile user1 --env
。例:
export ALIBABACLOUD_ACCESS_KEY_ID=STS.NUyPeEoab**** export ALIBABACLOUD_ACCESS_KEY_SECRET=GBubpmh**** export SECURITY_TOKEN=CAIS****
環境変数は、Terraform などの Alibaba Cloud ツールと組み合わせて使用できます。 例:
`acs-sso login --profile user1 --env` && terraform plan
。環境変数は、Alibaba Cloud CLI と組み合わせて使用できます。 例:
`acs-sso login --profile user1 --env` && aliyun ecs DescribeRegions
。
手順 4:Alibaba Cloud CLI を使用して CloudSSO にアクセスする
リクエストの例:
aliyun configure --mode External --profile sso
Configuring profile 'sso' in 'External' authenticate mode...
Process Command []: acs-sso login --profile sso
Default Region Id []: cn-shanghai
Default Output Format [json]: json (Only support json)
Default Language [zh|en] en:
Saving profile[sso] ...Done.
acs-sso login --profile
sso in Process Command
は、ログインプロファイルが sso
であることを指定しています。Alibaba Cloud CLI と CloudSSO CLI の両方で同じプロファイルを指定することをお勧めします。 こうすることで、複数のログインプロファイルが構成されている場合、CLI 認証情報を複数回構成し、CLI 認証情報を異なるログインプロファイルと一致させることができます。
正常なレスポンスの例:
Configure Done!!!
..............888888888888888888888 ........=8888888888888888888D=..............
...........88888888888888888888888 ..........D8888888888888888888888I...........
.........,8888888888888ZI: ...........................=Z88D8888888888D..........
.........+88888888 ..........................................88888888D..........
.........+88888888 .......Welcome to use Alibaba Cloud.......O8888888D..........
.........+88888888 ............. ************* ..............O8888888D..........
.........+88888888 .... Command Line Interface(Reloaded) ....O8888888D..........
.........+88888888...........................................88888888D..........
..........D888888888888DO+. ..........................?ND888888888888D..........
...........O8888888888888888888888...........D8888888888888888888888=...........
............ .:D8888888888888888888.........78888888888888888888O ..............
次のコマンドを実行して、Alibaba Cloud CLI が使用可能かどうかを確認します。
aliyun sts GetCallerIdentity --profile sso