请求安全令牌-Java示例代码__上传视频文件_开发人员指南_视频点播-阿里云
上传视频文件-请求安全令牌-Java示例代码
pom.xml中引用STS的SDK
<dependencies>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-sts</artifactId>
<version>2.1.6</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>2.2.0</version>
</dependency>
</dependencies>
代码
STS需要一个角色的参数:roleArn。登录阿里云控制台后,可以点击这里,然后点击具体角色名后,在基本信息中有一个参数:Arn,例如
1351140512345678:role/teststs
。- main函数
public static void main(String[] args) throws Exception {
IClientProfile profile = DefaultProfile.getProfile(
"cn-hangzhou",
<accessKeyId>,
<accessKeySecret>);
DefaultAcsClient client = new DefaultAcsClient(profile);
AssumeRoleResponse response = assumeRole(client, <roleArn>);
AssumeRoleResponse.Credentials credentials = response.getCredentials();
System.out.println(credentials.getAccessKeyId() + "n" +
credentials.getAccessKeySecret() + "n" +
credentials.getSecurityToken() + "n" +
credentials.getExpiration());
}
- 生成临时AK和Token的函数
private static AssumeRoleResponse assumeRole(
DefaultAcsClient client,
String roleArn)
throws ClientException {
final AssumeRoleRequest request = new AssumeRoleRequest();
request.setVersion("2015-04-01");
request.setMethod(MethodType.POST);
request.setProtocol(ProtocolType.HTTPS);
request.setDurationSeconds(900L);
request.setRoleArn(roleArn);
request.setRoleSessionName("test-token");
return client.getAcsResponse(request);
}
Token有效期
示例代码中生成的Token有效时间为900秒,可以根据实际需求调整(最小900秒,最大3600秒)。
在有效期内,不需要反复生成新的Token,可以复用已经生成的Token,如何判断什么时候需要重新生成呢?
private static boolean isTimeExpire(String expiration) {
Date nowDate = new Date();
Date expireDate = javax.xml.bind.DatatypeConverter.parseDateTime(expiration).getTime();
if (expireDate.getTime() <= nowDate.getTime()) {
return true;
} else {
return false;
}
}
最后更新:2016-10-13 11:51:16
上一篇:
设置CORS__上传视频文件_开发人员指南_视频点播-阿里云
下一篇:
队列方式接收通知__接收消息通知_开发人员指南_视频点播-阿里云
电视频道_阿里云帮助中心-阿里云,领先的云计算服务提供商
分配公网 IP 地址__网络相关接口_API 参考_云服务器 ECS-阿里云
在违规处罚中,一般违规、严重违规和特别严重违规是怎么定义的?__规则FAQ_常见问题_阿里云规则-阿里云
概览页___用户指南_云监控-阿里云
VPC网络的ECS如何使用公网SLB__常见问题_专有网络 VPC-阿里云
设置页面优化__配置操作接口_API 手册_CDN-阿里云
创建自定义镜像__镜像相关接口_API 参考_云服务器 ECS-阿里云
流量控制策略__使用手册(开放API)_API 网关-阿里云
CDN结合WAF___常见接入问题_Web 应用防火墙-阿里云
routing__服务编排文档_用户指南_容器服务-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云