Python SDK調(diào)用示例
本文以Python SDK為例,為您介紹如何通過云治理中心OpenAPI調(diào)用ListAccountFactoryBaselines接口獲取賬號工廠基線列表。
步驟一:查看OpenAPI文檔
閱讀API概覽,選擇可以獲取賬號工廠基線列表的OpenAPI:ListAccountFactoryBaselines - 獲取賬號工廠基線列表。根據(jù)接口文檔,了解調(diào)用該接口需要的參數(shù)及權(quán)限。
步驟二:創(chuàng)建RAM用戶并授權(quán)
身份
您可以使用阿里云賬號(主賬號)、RAM用戶、RAM角色調(diào)用該接口。關(guān)于各種身份的差異,請參見身份。
本示例中,使用RAM用戶調(diào)用接口。
登錄RAM訪問控制,創(chuàng)建一個RAM用戶。具體操作,請參見創(chuàng)建RAM用戶。
憑證
進(jìn)入到對應(yīng)的RAM用戶詳情頁,在認(rèn)證管理頁簽下的用戶AccessKey區(qū)域,單擊創(chuàng)建AccessKey,創(chuàng)建一個新的AccessKey。具體操作,請參見創(chuàng)建AccessKey。
RAM用戶的AccessKey Secret只在創(chuàng)建時顯示,不支持查看,請注意保存。
授權(quán)
訪問RAM用戶列表,單擊目標(biāo)RAM用戶操作列的添加權(quán)限。
在文本框中輸入關(guān)鍵字
governance
進(jìn)行搜索,根據(jù)最小授權(quán)原則,選擇對應(yīng)權(quán)限策略。AliyunGovernanceFullAccess:管理云治理中心(Governance)的權(quán)限。
AliyunGovernanceReadOnlyAccess:只讀訪問云治理中心(Governance)的權(quán)限。
說明如果系統(tǒng)策略不能滿足您的需求,您可以創(chuàng)建自定義策略。更多信息,請參見創(chuàng)建自定義權(quán)限策略和授權(quán)信息。
本文示例選擇AliyunGovernanceReadOnlyAccess系統(tǒng)策略。
單擊確認(rèn)新增授權(quán),完成授權(quán)操作。
步驟三:調(diào)用OpenAPI
本文以Python SDK調(diào)用OpenAPI為例,其他語言SDK的用法類似,更多信息請參見云治理中心SDK。您也可以根據(jù)業(yè)務(wù)的實際需要選擇其他調(diào)用方式,更多調(diào)用方法請參見調(diào)用方式。
準(zhǔn)備Python環(huán)境
下載并安裝Python 3。
安裝完成后,在終端中輸入python --version
,查看Python版本。
配置環(huán)境變量
為避免將AccessKey硬編碼到業(yè)務(wù)代碼中帶來的安全風(fēng)險,本示例采用配置環(huán)境變量的方法管理AccessKey。具體操作,請參見在Linux、macOS和Windows系統(tǒng)配置環(huán)境變量。
安裝依賴
pip install alibabacloud_credentials
pip install alibabacloud_governance20210120==0.0.4
pip install alibabacloud_tea_console
下載示例代碼
在OpenAPI門戶,訪問ListAccountFactoryBaselines調(diào)試地址。
輸入請求參數(shù),單擊發(fā)起調(diào)用,查看調(diào)試結(jié)果是否成功。
在SDK示例頁簽下的Python頁簽,單擊下載完整工程,下載Python SDK示例代碼包。
在本地解壓示例代碼包,并進(jìn)入alibabacloud_sample目錄。
運(yùn)行示例代碼
執(zhí)行以下命令:
python sample.py
得到如下輸出:
{
"headers": {
"date": "Fri, 14 Jul 2023 09:29:29 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "284",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "FEE38F0A-151D-5D62-8AB1-558C3DD0****",
"x-acs-trace-id": "f92987cc9934a2ab2fcd9df8361f****",
"etag": "28zxr6ohsABhZKeWKrhX****"
},
"statusCode": 200,
"body": {
"Baselines": [{
"BaselineId": "afb-bp1cet6u78ums0tb****",
"BaselineName": "Default",
"CreateTime": "2022-12-06T06:10:39Z",
"Type": "System",
"UpdateTime": "2022-12-06T06:10:39Z"
}],
"NextToken": "AAAAAB0peNpLtaWMnJB8X8hd2H+2Xr2DzYbz/SAfc/zJ****",
"RequestId": "FEE38F0A-151D-5D62-8AB1-558C3DD00274"
}
}