Java SDK可通過AccessKey或STS Security Token初始化。您可以根據需求選擇初始化方式。本文介紹兩種初始化的操作流程。
背景資訊
ApsaraVideo for VOD服務端SDK提供兩種初始化方式。AccessKey方式根據授權策略擷取對應許可權,啟用後一直有效,建議在服務端使用。STS Security Token方式根據授權策略擷取相應許可權後,可以自訂到期時間。
前提條件
您已經安裝了ApsaraVideo for VOD服務端Java 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資訊,進行初始化。範例程式碼如下:
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.exceptions.ClientException;
//讀取AccessKey資訊
public static DefaultAcsClient initVodClient() throws ClientException {
String regionId = "cn-shanghai"; // 點播服務接入地區
// 阿里雲帳號AccessKey擁有所有API的存取權限,建議您使用RAM使用者進行API訪問或日常營運。
// 強烈建議不要把AccessKey ID和AccessKey Secret儲存到工程代碼裡,否則可能導致AccessKey泄露,威脅您帳號下所有資源的安全。
// 本樣本通過從環境變數中讀取AccessKey,來實現API訪問的身分識別驗證。運行程式碼範例前,請配置環境變數ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。
DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
DefaultAcsClient client = new DefaultAcsClient(profile);
return client;
}
STS初始化
使用STS方式進行初始化,需要提前準備好STS Token。擷取方法,請參見STS訪問授權。
填入STS資訊,進行初始化。範例程式碼如下:
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.exceptions.ClientException;
//讀取STS資訊
public static DefaultAcsClient initVodClient() throws ClientException {
String regionId = "cn-shanghai"; // 點播服務接入地區
DefaultProfile profile = DefaultProfile.getProfile(
regionId, // The region ID
System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), // The AccessKey ID of the RAM account
System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), // The AccessKey Secret of the RAM account
System.getenv("ALIBABA_CLOUD_SECURITY_TOKEN")); // STS Token
DefaultAcsClient client = new DefaultAcsClient(profile);
return client;
}