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;
}该文章对您有帮助吗?