Python SDK可通過AccessKey或STS Security Token初始化。您可以根據需求選擇初始化方式。本文介紹兩種初始化的操作流程。
背景資訊
ApsaraVideo for VOD服務端SDK提供兩種初始化方式。AccessKey方式根據授權策略擷取對應許可權,啟用後一直有效,建議在服務端使用。STS Security Token方式根據授權策略擷取相應許可權後,可以自訂到期時間。
前提條件
您已經安裝了ApsaraVideo for VOD服務端Python SDK。安裝方法,請參見安裝。
已建立RAM使用者並完成授權。具體操作,請參見建立RAM使用者並授權。
已配置環境變數ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。具體操作,請參見在Linux、macOS和Windows系統配置環境變數。
重要阿里雲帳號的AccessKey擁有所有API的存取權限,建議您使用RAM使用者的AccessKey進行API訪問或日常營運。
強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
您已經知曉服務接入地區,例如:接入地區在上海,請使用
cn-shanghai
。點播服務的接入地區請參見接入地區和標識。
AccessKey初始化
調用服務端介面需要使用AccessKey完成身分識別驗證,請提前擷取AccessKey。擷取方法請參見建立AccessKey。
填入帳號AccessKey資訊,進行初始化。樣本如下:
# -*- coding: UTF-8 -*-
import json
import traceback
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.auth.credentials import AccessKeyCredential
# 讀取AccessKey資訊
def init_vod_client():
regionId = 'cn-shanghai' # 點播服務接入地區
connectTimeout = 3 # 連線逾時,單位為秒
// 阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
// 強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
// 本樣本通過從環境變數中讀取AccessKey,來實現API訪問的身分識別驗證。運行程式碼範例前,請配置環境變數ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。
credentials = AccessKeyCredential(os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'], os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET'])
return AcsClient(region_id=regionId, credential=credentials)
STS初始化
使用STS方式進行初始化,需要提前準備好STS Token。擷取方法,請參見STS訪問授權。
填入STS資訊,進行初始化。樣本如下:
# -*- coding: UTF-8 -*-
import json
import traceback
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.auth.credentials import StsTokenCredential
# 讀取STS資訊
def init_vod_client(accessKeyId, accessKeySecret, securityToken):
regionId = 'cn-shanghai' # 點播服務接入地區
connectTimeout = 3 # 連線逾時,單位為秒
credential = StsTokenCredential(os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'], os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET'], os.environ['ALIBABA_CLOUD_SECURITY_TOKEN'])
return AcsClient(region_id=regionId, auto_retry=True, max_retry_time=3, timeout=connectTimeout, credential=credential)