amazon-web-services - DynamoDB Connection Biulding 使用 AWS Java SDK 通过在运行时从用户那里获取密钥
问题描述
我正在尝试通过从用户那里获取 AccessID 和 SecretKey 来连接到 DynamoDB。AmazonDynamoDBClient 已折旧,并且替换不允许我从用户那里获取凭证并连接到 DynamoDB。这是我的代码片段。我得到的解决方案是将密钥保存在本地文件中。我不需要这个。
DynamoDB dynamoDB = null;
try {
System.out.println(1);
BasicAWSCredentials awsCreds = new BasicAWSCredentials(upDoc.getAccID(), upDoc.getAccKey());
System.out.println(2);
//AmazonDynamoDBClient is depreciated
AmazonDynamoDBClient client = new AmazonDynamoDBClient(awsCreds).withRegion(Regions.US_EAST_2);
System.out.println(3);
dynamoDB = new DynamoDB(client);
writer.append("Access Granted By AWS DynamoDB \n");
}catch(AmazonDynamoDBException e) {
writer.append("Access Denied By AWS DynamoDB \n");
writer.close();
return "Error occured. Kindly check logs to get the actual cause!";
}
解决方案
利用AmazonDynamoDBClientBuilder
BasicAWSCredentials awsCreds = new BasicAWSCredentials(upDoc.getAccID(), upDoc.getAccKey());
AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().withRegion(Regions.US_EAST_2).withCredentials(awsCreds).build();
推荐阅读
- javascript - fullcalendar ajax 成功不起作用
- php - 使用php将部分文本从mysql更改为变量名
- php - Laravel 5.6 - 验证数字和空格
- ios - 在 admob 广告被关闭后执行 segue
- javascript - .Net Core 使用注销链接而不是按钮防止跨域 GET 请求
- java - 如何检查ArrayList中的项目
不包含某个词? - python - 使用 Pandas 数据框提高 Python for 循环的性能
- c# - DeflateStream 复制到 MemoryStream
- vuejs2 - 使用 nuxtjs 在我的页面中使用异步数据
- java - 在 ServiceLoader 迭代中找不到 ServiceProvider