前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Minio以STS方式获得临时凭据上传文件

在Minio以STS方式获得临时凭据上传文件

作者头像
张云飞Vir
发布2023-04-19 19:18:11
5.5K0
发布2023-04-19 19:18:11
举报
文章被收录于专栏:写代码和思考写代码和思考

一、写在前面

一个常见的场景是:需要让客户端来上传图片,面临的安全性问题。给与客户端永久凭据无疑是很大风险的,我们还可以选择“给予一个临时凭据,这个凭据关联到一个 授权的用户,我们可以随时停用和修改这个用户具有的权限”

Minio提供了STS 的方式来实现这个方法。

MinIO安全令牌服务(STS)API允许应用程序生成用于访问MinIO部署的临时凭据。参考https://min.io/docs/minio/linux/developers/security-token-service.html

整体方案是:

  1. Minio服务器的web页面创建一个 用户和策略
  2. Java应用服务通过 使用上面的用户信息 使用 API 可取得临时的 凭据 token
  3. 将 临时凭据 给到前端 Web,或者App
  4. 前端使用 临时凭据 和 js API 等,进行对象的上传,获得等。

二、部署和启动 Minio

2.1、安装

这时可使用 ./minio 了

2.2 启动

./minio server /mnt/data

注意:/mnt/data 是图片存放位置

为了使用方便,自己写个启动脚本

*注意:

  • MINIO_ROOT_USER 你的管理员账号
  • MINIO_ROOT_PASSWORD 你的管理员密码
  • MINIO_REGION 是你指定的区域名

2.3 访问控制台

打开网页: http://你的机器:9000

三、配置临时凭据相关的设置项

我采用 web控制台页面来设置,比较方便。 打开 http://你的机器:9000 , 登录进去

3.1、登录控制面板,创建策略

image.png

image.png

图片中编号3: 填写个策略名 图片中编号4: 填写 json 格式描述的具体策略

可以按我的填,下面的json描述了一个可读,写,删,获得桶位置的策略。

3.2、创建用户,绑定策略

image.png

image.png

图片中编号4:填写一个 用户名(随便填,记下来要用) 图片中编号5:填写一个 密码(随便填,记下来要用) 图片中编号6:打钩选一个策略,就是我们上面 创建的策略 勾选上。

四、通过Java 获得凭据并上传和获得上传后的URL

1、创一个Maven项目 2、 加入依赖

3、取得临时凭据 一些静态变量定义

得到 临时凭据

五、参考:

https://blog.csdn.net/yilvqingtai/article/details/126059858 https://min.io/docs/minio/linux/developers/java/API.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-04-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、写在前面
  • 二、部署和启动 Minio
    • 2.1、安装
      • 2.2 启动
        • 2.3 访问控制台
        • 三、配置临时凭据相关的设置项
          • 3.1、登录控制面板,创建策略
            • 3.2、创建用户,绑定策略
            • 四、通过Java 获得凭据并上传和获得上传后的URL
            • 五、参考:
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档