Java SDK可通过AccessKey或STS Security Token初始化。您可以根据需求选择初始化方式。本文介绍两种初始化的操作流程。
背景信息
视频点播服务端SDK提供两种初始化方式。AccessKey方式根据授权策略获取对应权限,启用后一直有效,建议在服务端使用。STS Security Token方式根据授权策略获取相应权限后,可以自定义过期时间。
前提条件
您已经安装了视频点播服务端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;
}