public void readBucket() throws IOException {
String REGION = "us-east-2";
String bucketName = "bucketName";
String key = "objectName";
try {
AWSCredentials credentials = new BasicAWSCredentials("xxxxxxxx","xxxxxx");
AmazonS3 s3Client = AmazonS3ClientBuilder
.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.withRegion(Regions.US_EAST_2)
.build();
if (s3Client.doesBucketExist("bucket name")) {
System.out.println("Bucket %s already exists.\n");
}
List<Bucket> buckets = s3Client.listBuckets();
System.out.println("Your Amazon S3 buckets are:");
for (Bucket b : buckets) {
System.out.println("* " + b.getName());
}
}
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::bucket name",
"arn:aws:s3:::bucketname/*"
]
}
]
}
我实际上能够检查我的桶是否正确存在,也就是我的s3Client是否正确更新。有没有人可以帮助我。提前道谢!
这是凭据权限问题。尝试向与您正在使用的CRED相对应的IAM角色/用户授予完整的S3权限。正确设置权限后,使用AmazonS3 Java API调用AmazonS3操作就没有问题了。
此外,请考虑从旧的V1 API转移到新的V2 API:
AWS SDK for Java2.x是对1.x版代码库的重大重写。它构建在Java8+之上,并添加了几个经常请求的特性。其中包括对非阻塞I/O的支持,以及在运行时插入不同HTTP实现的能力。
您可以在这里找到许多S3 V2代码示例:
问题内容: 这是我的Java代码: 一个非常简单的任务,我尝试使用AmazonS3 Java客户端访问S3,但是此行不断失败,并给了我以下异常: 一个非常明显的错误代码:403,它表示我的AWS凭证是错误的,但是,这与我的同事用来访问同一s3存储桶的凭证完全相同,以排除我在某处出现错字的可能性,因此我确实删除了我以前的一个,并使用了我同事发送给我的那个,并将其放在〜/ .aws /下 我还研究了其
为了访问我的S3 bucket,我导出了我的cred 我可以通过做 我还可以用boto3验证它在python中工作 我可以看到文件在桶里。 然而,当我使用Spark执行此操作时: 我得到了一个很好的 这是我在本地提交作业的方式 spark-submit--packages com.amazonaws:aws--sdk-pom:1.11.98,org.apache.hadoop:hadoop-aws
从今天起,我们的Airflow服务无法访问BigQuery中的查询。所有作业都会失败,并显示以下消息: [2021-03-12 10:17:28079]{taskinstance.py:1150}错误-原因:403获取https://bigquery.googleapis.com/bigquery/v2/projects/waipu-app-prod/queries/e62030d7-36eb-4
我有一个应用程序与cloud firestore通信,根据它的uid获取用户数据,它在当前设置下工作得很好: 然而,这显然是不可接受的,因为它是公众的,并来自消防商店的警告: 您的安全规则被定义为公共的,因此任何人都可以窃取、修改或删除数据库中的数据 感谢任何帮助,指出我写规则的正确方式!我读了消防指南,但一点帮助都没有! 多谢!
我尝试按照此权限指南在node.js上使用Microsoft Graph API(https://graph.microsoft.com/v1.0/me/calendarView)访问日历事件,但收到错误响应: 调用是使用 : 请求具有有效令牌和对…/me/via的调用 退货: 因此,我假设这是在我创建了两个应用程序(一个用于节点服务器,一个用于 Web 客户端应用程序)https://manag
我正在尝试用office 365 API构建我的第一个应用程序,但有一个大问题。 我正试图通过Office 365 API和Azure Active Directory获取用户的主要信息,为此我正在做: 1)获取访问令牌。对https://login.windows.net/common/oauth2/token令牌的http post请求: 头:内容类型:应用程序/x-www-表单-乌伦编码 发