/**
* 创建策略
* @param policyName 策略名称
* @param accessKey
* @param secretAccessKey
* @return
*/
private static CreatePolicyResult createPolicy(String policyName,String accessKey,String secretAccessKey){
try {
//获取iot服务客户端,getAmazonIotService方法请参考(awsIot for Java 创建Iot服务)这篇博文
AWSIot awsIot = IotServiceUtil.getAmazonIotService(accessKey,secretAccessKey);
if(null == awsIot){
LOGGER.error("IotApiUtil.createPolicy 获取iot服务出现异常");
return null;
}
//创建策略,以下是默认策略文档
CreatePolicyRequest policyRequest = new CreatePolicyRequest();
policyRequest.setPolicyName(policyName);
policyRequest.setPolicyDocument("{\n" +
" \"Version\": \"2012-10-17\",\n" +
" \"Statement\": [\n" +
" {\n" +
" \"Effect\": \"Allow\",\n" +
" \"Action\": \"iot:Connect\",\n" +
" \"Resource\": \"*\"\n" +
" },\n" +
" {\n" +
" \"Effect\": \"Allow\",\n" +
" \"Action\": \"iot:Publish\",\n" +
" \"Resource\": \"*\"\n" +
" },\n" +
" {\n" +
" \"Effect\": \"Allow\",\n" +
" \"Action\": \"iot:Receive\",\n" +
" \"Resource\": \"*\"\n" +
" },\n" +
" {\n" +
" \"Effect\": \"Allow\",\n" +
" \"Action\": \"iot:GetThingShadow\",\n" +
" \"Resource\": \"*\"\n" +
" },\n" +
" {\n" +
" \"Effect\": \"Allow\",\n" +
" \"Action\": \"iot:UpdateThingShadow\",\n" +
" \"Resource\": \"*\"\n" +
" }\n" +
" ]\n" +
"}"); //默认策略
CreatePolicyResult policyResult = awsIot.createPolicy(policyRequest);
if(null == policyResult){
LOGGER.error("IotApiUtil.createPolicy 进行iot创建策略未收到返回结果");
return null;
}
return policyResult;
}catch (Exception e){
LOGGER.error("IotApiUtil.createPolicy",e);
}
return null;
}
awsIot for Java 使用Iot服务,创建策略
最新推荐文章于 2023-12-18 08:58:16 发布