阿里雲 CLI 安裝完成後,只需配置身份憑證並安裝雲產品外掛程式即可開始調用 API。本文以 ECS 為例,示範從安裝CLI到執行第一條命令的完整流程。
方案概覽
使用阿里雲 CLI 調用雲產品 API,分四個步驟:
前提條件
登入阿里雲帳號。如尚未註冊,請訪問阿里雲官網完成註冊。
步驟一:安裝阿里雲 CLI
以 Linux 系統為例,執行以下一鍵安裝命令:
/bin/bash -c "$(curl -fsSL https://aliyuncli.alicdn.com/install.sh)"其他動作系統的安裝方式請參見:安裝/更新 CLI。
安裝完成後,執行以下命令確認版本:
aliyun version確認輸出版本號碼 ≥ 3.3.0。否則請重新安裝。
如需免安裝方式,可使用 Cloud Shell,已內建阿里雲 CLI 並通過瀏覽器會話自動完成認證,可直接從步驟三開始。
步驟二:配置身份憑證
阿里雲 CLI 支援多種身份認證方式。推薦使用 OAuth 認證;如使用 AccessKey,請勿將其寫入程式碼在代碼中。
OAuth 認證
OAuth 通過瀏覽器登入完成認證,無需手動建立或管理密鑰。
無圖形介面的伺服器環境無法使用 OAuth 認證,請切換到 AccessKey 認證標籤頁。
RAM 管理員需預先完成以下操作:建立 CLI OAuth 應用、為需要使用 CLI 的使用者指派身份。具體操作,請參見為阿里雲CLI配置OAuth認證的步驟一和步驟二。阿里雲主帳號(即註冊阿里雲時使用的帳號)使用者無需此操作。
執行以下命令啟動 OAuth 配置:
aliyun configure --mode OAuth --profile default--profile default表示將此憑證儲存為名為default的配置。CLI 支援多套命名配置(Profile),通過--profile mydev切換使用不同憑證。CLI 提示選擇登入網站,直接按斷行符號確認預設設定。
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.若瀏覽器未彈出,複製終端中顯示的 Sign In 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 使用者添加相應許可權。如果您使用的是阿里雲主帳號,請檢查帳號狀態是否正常。
AccessKey 認證
AccessKey 是長期有效憑證。請勿將其寫入程式碼在代碼或設定檔中,建議通過環境變數傳入。僅在個人開發調試環境使用;生產環境推薦使用 OAuth。詳見憑證的安全使用方式情節。
如已有 AccessKey,直接使用現有的 AccessKey ID 和 AccessKey Secret,跳過本步驟。如尚未建立,前往 RAM 控制台建立 RAM 使用者並產生 AccessKey,具體操作請參見建立 RAM 使用者。
執行以下命令啟動 AccessKey 配置:
aliyun configure --mode AK --profile default--profile default表示將此憑證儲存為名為default的配置。CLI 支援多套命名配置(Profile),通過--profile mydev切換使用不同憑證。按提示依次輸入 AccessKey ID、AccessKey Secret 、預設地區 ID(如
cn-hangzhou)和終端語言。驗證憑證是否有效:
aliyun sts get-caller-identity如返回
AccountId和Arn資訊,表示憑證配置有效。如報錯,請檢查 AccessKey ID 和 Secret 是否填寫正確。說明如報錯
Forbidden.NoPermission,表示當前 RAM 使用者權限不足,需聯絡您組織的 RAM 管理員,為當前 RAM 使用者添加相應許可權。如果您使用的是阿里雲主帳號,請檢查帳號狀態是否正常。
阿里雲 CLI 還支援 STS Token(臨時授權情境)等更多身份憑證類型,詳見配置與管理身份憑證。
步驟三:安裝雲產品外掛程式
阿里雲 CLI 的各雲產品命令以外掛程式形式按需安裝。
以 ECS 為例,安裝 ECS 外掛程式:
aliyun plugin install --names ecs終端輸出 Plugin aliyun-cli-ecs x.x.x installed successfully! 表示安裝成功。
更多外掛程式的安裝和管理方式,請參見快速安裝雲產品CLI外掛程式。
步驟四:執行命令
執行命令查詢可用地區列表:
aliyun ecs describe-regions --accept-language zh-CN--accept-language zh-CN 指定返回結果的語言為中文。
命令返回結果樣本(節選):
{
"Regions": {
"Region": [
{
"RegionId": "cn-hangzhou",
"RegionEndpoint": "ecs.cn-hangzhou.aliyuncs.com",
"LocalName": "華東1(杭州)"
},
{
"RegionId": "cn-shanghai",
"RegionEndpoint": "ecs.cn-shanghai.aliyuncs.com",
"LocalName": "華東2(上海)"
},
{
"RegionId": "cn-beijing",
"RegionEndpoint": "ecs.cn-beijing.aliyuncs.com",
"LocalName": "華北2(北京)"
}
]
},
"RequestId": "5BEAEC76-E9B4-47B2-8D24-A3C31D5D2EEF"
}RequestId 是每次 API 呼叫的唯一標識,用於問題排查時使用。
常見問題
OAuth 配置時提示“調用未被授權”是什麼原因?
當前帳號不具備建立 OAuth 應用所需的 RAM 系統管理權限。請切換到 RAM 管理員帳號,或聯絡管理員完成 OAuth 應用的建立和身份分配。具體許可權要求,請參見OAuth 憑證。
為什麼需要安裝外掛程式才能使用雲產品命令?
阿里雲 CLI 採用外掛程式化架構:CLI 本體保持輕量,各雲產品的命令單獨打包為外掛程式,可按需安裝、獨立更新,無需每次隨 CLI 整體升級。執行 aliyun plugin list-remote 可查看所有可安裝的外掛程式。
怎麼知道某個雲產品是否支援 CLI?
執行 aliyun plugin list-remote 查看所有可用外掛程式列表,或訪問 OpenAPI Portal CLI Homepage按產品搜尋。
可以在無圖形介面的伺服器上使用 OAuth 認證嗎?
不可以。OAuth 認證需要通過瀏覽器完成登入授權。