0
点赞
收藏
分享

微信扫一扫

minio使用临时授权(STS)无法上传对象至bucket

快乐码农Alan007 2022-04-26 阅读 32
java

项目场景:

提示:这里简述项目相关背景:

最近新整合minio进行文件的存储,然后需要开放二次策略进行一个临时授权。Java版本11,minio版本8.0.3


问题描述

根据网上的一些教程,成功的整合了minio(具体教程:https://stevenocean.github.io/2021/01/12/minio-sts-assumerole-sample.html),只是进行二次策略进行STS的时候,发现了无法上传对象到bucket,一直报错,提示的是AccessDenied在这里插入图片描述
对应的策略如下

{
    "Version": "2012-10-17",
    "Statement": [
         {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::buckname/*"
            ]
        }
    ]
}

原因分析:


解决方案:

{
    "Version": "2012-10-17",
    "Statement": [
         {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetBucketLocation",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::buckname/*"
            ]
        }
    ]
}

PS:有一些小坑指出一下
1、minio的sdk中,只有8以上的才支持STS。
2、minio需要使用到google的findbugs,需要提前引入,对应gradle配置如下:
implementation(“com.google.code.findbugs:jsr305:3.0.1”)
implementation(“com.google.code.findbugs:annotations:3.0.1”)
3、如果要获取对应的对象临时url,临时授权好像无法获取,需要使用已经分配好的accesskey与secret(这点不知道是不是自己的问题)

如果有问题,欢迎指出

举报

相关推荐

0 条评论