本文為您介紹通過OpenAPI使用Cloud Firewall(Cloud Firewall)。
查看OpenAPI文檔
您可以通過API概覽查看支援的介面列表。本文以DescribeAssetList - 查詢Cloud Firewall防護的資產的資訊為例,為您介紹如何使用OpenAPI整合SDK樣本。
建立RAM使用者並授權
身份
您可以使用阿里雲帳號(主帳號)、RAM使用者(子帳號)、RAM角色調用該介面,有關各種身份的差異,請參見身份、憑據與授權。本案例中,我們使用RAM使用者進行介面調用。
登入RAM存取控制,建立一個僅允許API調用的RAM使用者,並記錄AccessKey資訊。具體操作,請參見建立RAM使用者。
授權
訪問RAM使用者列表,單擊目標RAM使用者操作列的添加許可權。
在權限原則區塊中輸入關鍵字CloudFirewall進行搜尋,選擇AliyunYundunCloudFirewallFullAccess策略。
說明Cloud Firewall的系統權限原則如下:
AliyunYundunCloudFirewallFullAccess:管理Cloud Firewall的許可權。
AliyunYundunCloudFirewallReadOnlyAccess:唯讀管理Cloud Firewall的許可權。
關於如何建立自訂許可權,請參見授權資訊。
單擊確定新增授權,完成授權操作。
憑證
在建立RAM使用者時會預設產生一個AccessKey,可直接使用。您也可以進入到對應的RAM使用者詳情頁面,在認證管理頁簽,單擊建立AccessKey,建立一個新的AccessKey。具體操作,請參見建立AccessKey。
調用OpenAPI
本文以Python語言為例,為您介紹OpenAPI的調用方法。
準備Python環境
下載並安裝Python。
Python 3的下載地址,請參見Python 3。
查看Python版本。
Linux和macOS系統
開啟終端,輸入
python --version
。Windows系統
在Python的安裝路徑下,雙擊python.exe。
開啟命令提示字元頁面。
通過鍵盤快速鍵Win+R開啟運行對話方塊,輸入命令python,單擊確定。
配置環境變數
關於如何配置環境變數,請參見在Linux、macOS和Windows系統配置環境變數。
安裝依賴
pip install alibabacloud_credentials
pip install alibabacloud_cloudfw20171207==1.3.2
pip install alibabacloud_tea_console
下載範例程式碼
在OpenAPI門戶,訪問DescribeAssetList - 查詢Cloud Firewall防護的資產的資訊介面的調試地址。
在參數配置頁簽,輸入必選參數CurrentPage和PageSize的值,然後單擊發起調用。
在SDK樣本頁簽,單擊Python頁簽,擷取Python語言的SDK樣本。
單擊下載完整工程,下載範例程式碼包。
在本地解壓範例程式碼包,並進入alibabacloud_sample目錄。
運行代碼
執行以下命令:
python sample.py
得到如下輸出結果:
{
"headers": {
"date": "Thu, 10 Aug 2023 10:18:48 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "1194",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"vary": "Accept-Encoding",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "B49120FC-5A22-5500-A005-060F487E****",
"x-acs-trace-id": "e04deb393afe188190485401aa41****",
"etag": "1SZicxaXw+FjDwnyteba****"
},
"statusCode": 200,
"body": {
"Assets": [{
"AliUid": 163710033944****,
"BindInstanceId": "i-bp14vt99zpj899eq****",
"BindInstanceName": "launch-****-20210409",
"CreateTimeStamp": "2023-07-05 15:05:01",
"InternetAddress": "118.31.XX.XX",
"IntranetAddress": "192.168.XX.XX",
"MemberUid": 163710033944****,
"Name": "launch-****-20210409",
"NewResourceTag": "",
"Note": "",
"ProtectStatus": "closed",
"RegionID": "cn-hangzhou",
"RegionStatus": "enable",
"ResourceInstanceId": "i-bp14vt99zpj899eq****",
"ResourceType": "EcsPublicIP",
"RiskLevel": "",
"SgStatus": "block",
"SgStatusTime": 1691350656,
"SyncStatus": "enable",
"Type": "ecs"
}, {
"AliUid": 163710033944****,
"BindInstanceId": "i-bp1ic3k18jrurbxd****",
"BindInstanceName": "launch-****-20230712",
"CreateTimeStamp": "2023-07-12 17:49:46",
"InternetAddress": "47.111.XX.XX",
"IntranetAddress": "10.0.XX.XX",
"MemberUid": 163710033944****,
"Name": "launch-****-20230712",
"NewResourceTag": "",
"Note": "",
"ProtectStatus": "closed",
"RegionID": "cn-hangzhou",
"RegionStatus": "enable",
"ResourceInstanceId": "i-bp1ic3k18jrurbxd****",
"ResourceType": "EcsPublicIP",
"RiskLevel": "",
"SgStatus": "block",
"SgStatusTime": 1691350656,
"SyncStatus": "enable",
"Type": "ecs"
}],
"RequestId": "B49120FC-5A22-5500-A005-060F487EF211",
"TotalCount": 16
}
}