Alibaba Cloud CLI をインストールしたら、認証情報を構成し、クラウドプロダクトプラグインをインストールして API 呼び出しを開始します。このトピックでは、ECS を例として、CLI のインストールから最初のコマンド実行までの完全なプロセスを説明します。
ソリューション概要
Alibaba Cloud CLI を使用してクラウドプロダクトの API を呼び出すには、次の 4 つのステップに従います。
前提条件
Alibaba Cloud アカウントをお持ちです。お持ちでない場合は、Alibaba Cloud 公式サイトにアクセスして登録してください。
ステップ 1:Alibaba Cloud CLI のインストール
Linux では、次のワンクリックインストールコマンドを実行します。
/bin/bash -c "$(curl -fsSL https://aliyuncli.alicdn.com/install.sh)"他のオペレーティングシステムでのインストール手順については、「CLI のインストールまたは更新」をご参照ください。
インストール後、次のコマンドを実行してバージョンを確認します。
aliyun versionバージョン番号が 3.3.0 以降であることを確認してください。そうでない場合は、CLI を再インストールしてください。
CLI をローカルにインストールしたくない場合は、Cloud Shell を使用してください。Cloud Shell には Alibaba Cloud CLI がプリインストールされており、ブラウザーセッションが自動的に認証されます。ステップ 3 から開始できます。
ステップ 2:認証情報の構成
Alibaba Cloud CLI は複数の身分認証方式をサポートしています。可能な限り OAuth 認証を使用してください。AccessKey を使用する場合は、ソースコード内にハードコードしないでください。
OAuth 認証
OAuth は、ブラウザー経由でログインすることで認証を完了します。キーを手動で作成または管理する必要はありません。
グラフィカルインターフェイスを持たないサーバーでは OAuth 認証を使用できません。代わりに AccessKey 認証タブに切り替えてください。
RAM 管理者は、事前に次のタスクを完了しておく必要があります:CLI 用の OAuth アプリケーションを作成し、CLI アクセスが必要なユーザーに ID を割り当てる。詳細については、「Alibaba Cloud CLI の OAuth 認証の構成」のステップ 1 およびステップ 2 をご参照ください。Alibaba Cloud アカウント (登録時に使用したアカウント) のユーザーは、これらのタスクを実行する必要はありません。
次のコマンドを実行して OAuth 構成を開始します。
aliyun configure --mode OAuth --profile default--profile defaultオプションにより、これらの認証情報がdefaultという名前のプロファイルに保存されます。CLI は複数の名前付きプロファイルをサポートしています。--profile mydevを使用して、異なる認証情報間を切り替えることができます。CLI がサインインサイトの選択を促します。Enter キーを押してデフォルト設定を受け入れます。
CLI が自動的にブラウザーを開き、権限付与を完了します。ターミナルには次のような出力が表示されます。
Please open the following URL in your browser to authorize: https://signin.aliyun.com/oauth2/v1/auth?response_type=code&client_id=40381819545577*****&redirect_uri=http%3A%2F%2F127.0.0.1%3A12345%2Fcli%2Fcallback&state=CdI6CcOsxQUiCuFl&code_challenge=vDr1QWI5TI9q6UMMs2djJzxCmcAySjrYK6UD4Gu2res&code_challenge_method=S256 If the browser does not open automatically, use the following URL to complete the login process: SignIn url: https://signin.aliyun.com/oauth2/v1/auth?response_type=code&client_id=40381819545577*****&redirect_uri=http%3A%2F%2F127.0.0.1%3A12345%2Fcli%2Fcallback&state=CdI6CcOsxQUiCuFl&code_challenge=vDr1QWI5TI9q6UMMs2djJzxCmcAySjrYK6UD4Gu2res&code_challenge_method=S256 Now you can login to your account with OAuth configuration in the browser.ブラウザーが自動的に開かない場合は、ターミナルに表示されたサインイン URL をコピーし、ブラウザーで手動で開いてログインしてください。
権限付与が成功したら、ターミナルに戻り、デフォルトリージョン ID とターミナル言語を入力します。ターミナル出力の例:
Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json) Default Language [zh|en] en: zh Saving profile[oauth-1] ...Done. 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 ..............認証情報が有効であることを確認します。
aliyun sts get-caller-identity応答に
AccountIdおよびArnが含まれている場合、認証情報は有効です。説明Forbidden.NoPermissionエラーが発生した場合、現在のユーザーに十分な権限がありません。組織の RAM 管理者に連絡し、必要な権限を RAM ユーザーに付与してもらってください。Alibaba Cloud アカウントを使用している場合は、アカウントのステータスが正常であることを確認してください。
AccessKey 認証
AccessKey は長期的な認証情報です。ソースコードや設定ファイル内にハードコードしないでください。代わりに環境変数経由で渡してください。AccessKey は個人の開発およびテスト環境でのみ使用してください。本番環境では OAuth を使用してください。詳細については、「認証情報の安全な使用方法」をご参照ください。
すでに AccessKey をお持ちの場合は、既存の AccessKey ID および AccessKey Secret を使用し、このステップをスキップしてください。お持ちでない場合は、RAM コンソールにアクセスして RAM ユーザーを作成し、AccessKey を生成してください。詳細については、「RAM ユーザーの作成」をご参照ください。
次のコマンドを実行して AccessKey 構成を開始します。
aliyun configure --mode AK --profile default--profile defaultオプションにより、これらの認証情報がdefaultという名前のプロファイルに保存されます。CLI は複数の名前付きプロファイルをサポートしています。--profile mydevを使用して、異なる認証情報間を切り替えることができます。プロンプトが表示されたら、AccessKey ID、AccessKey Secret、デフォルトリージョン ID (
cn-hangzhouなど)、およびターミナル言語を入力します。認証情報が有効であることを確認します。
aliyun sts get-caller-identity応答に
AccountIdおよびArnが含まれている場合、認証情報は有効です。エラーが発生した場合は、AccessKey ID および Secret が正しいことを確認してください。説明Forbidden.NoPermissionエラーが発生した場合、現在の RAM ユーザーに十分な権限がありません。組織の RAM 管理者に連絡し、必要な権限を付与してもらってください。Alibaba Cloud アカウントを使用している場合は、アカウントのステータスが正常であることを確認してください。
Alibaba Cloud CLI は、一時的な権限付与シナリオ向けの Security Token Service トークン (STS トークン) など、その他の認証情報タイプもサポートしています。詳細については、「認証情報の構成と管理」をご参照ください。
ステップ 3:クラウドプロダクトプラグインのインストール
各クラウドプロダクトの Alibaba Cloud CLI コマンドはプラグインとしてパッケージ化され、オンデマンドでインストールされます。
ECS を例として、ECS プラグインをインストールします。
aliyun plugin install --names ecsターミナルに Plugin aliyun-cli-ecs x.x.x installed successfully! と表示された場合、インストールは成功しています。
プラグインのインストールおよび管理に関する詳細については、「クラウドプロダクト CLI プラグインの迅速なインストール」をご参照ください。
ステップ 4:コマンドの実行
次のコマンドを実行して、利用可能なリージョンを一覧表示します。
aliyun ecs describe-regions --accept-language zh-CN--accept-language zh-CN オプションは、応答言語を中国語に指定します。
コマンド出力の例 (抜粋):
{
"Regions": {
"Region": [
{
"RegionId": "cn-hangzhou",
"RegionEndpoint": "ecs.cn-hangzhou.aliyuncs.com",
"LocalName": "China (Hangzhou)"
},
{
"RegionId": "cn-shanghai",
"RegionEndpoint": "ecs.cn-shanghai.aliyuncs.com",
"LocalName": "China (Shanghai)"
},
{
"RegionId": "cn-beijing",
"RegionEndpoint": "ecs.cn-beijing.aliyuncs.com",
"LocalName": "China (Beijing)"
}
]
},
"RequestId": "5BEAEC76-E9B4-47B2-8D24-A3C31D5D2EEF"
}RequestId は各 API 呼び出しの一意な識別子であり、トラブルシューティングに使用されます。
よくある質問
OAuth 構成中に「Unauthorized call」エラーが発生するのはなぜですか?
現在のアカウントには、OAuth アプリケーションを作成するために必要な RAM 管理権限がありません。RAM 管理者アカウントに切り替えるか、管理者に OAuth アプリケーションの作成および ID の割り当てを依頼してください。必要な権限の詳細については、「OAuth 認証情報」をご参照ください。
クラウドプロダクトコマンドを使用するためにプラグインをインストールする必要があるのはなぜですか?
Alibaba Cloud CLI はプラグインベースのアーキテクチャを採用しています。コア CLI は軽量に保たれ、各クラウドプロダクトのコマンドは個別のプラグインとしてパッケージ化されています。これにより、CLI 全体をアップグレードすることなく、プラグインをオンデマンドでインストールおよび更新できます。aliyun plugin list-remote を実行すると、すべての利用可能なプラグインを確認できます。
クラウドプロダクトが CLI をサポートしているかどうかを確認するにはどうすればよいですか?
aliyun plugin list-remote を実行してすべての利用可能なプラグインを確認するか、OpenAPI Portal CLI ホームページにアクセスしてプロダクトで検索してください。
グラフィカルインターフェイスを持たないサーバーで OAuth 認証を使用できますか?
いいえ。OAuth 認証にはブラウザーによるログインおよび権限付与が必要です。