前言 

Amazon Simple Storage Service (Amazon S3) 是一种面向 Internet 的存储服务。该服务旨在降低网络规模计算的难度(接口协议)

MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。 它是与 Amazon S3 云存储服务兼容的 API

亚马逊云的 S3 API(接口协议) 是在全球范围内达到共识的对象存储的协议,是全世界内大家都认可的标准。 MinIO 在很早的时候就采用了 S3 兼容协议,并且MinIO 是第一个支持 S3 Select 的产品. MinIO对其兼容性的全面性感到自豪, 并且得到了 750多个组织的认同, 包括Microsoft Azure使用MinIO的S3网关

需求

         minio特定的桶需要只对外开放下载,不用校验身份

方案一

默认情况下,只有资源所有者可以访问这些资源。并且资源是私有的

我们可以将桶策略设置为public,就可以永久访问了,但是这种方式不安全,不推荐,因为下载链接和上传链接相同,而且都不需要验证身份,那么你的数据就不安全了

方案二

        minio开放的python sdk(也可以使用别的语言的sdk,都是一样的)

from minio import Minioclient = Minio(service, access_key=access_key, secret_key=secret_key)
# 自定义的策略 开放所有人可以下载指定桶下的资源
policy = '{"Version":"2012-10-17","Statement":[{"Effect":"Allow",\"Principal":{"AWS":["*"]},"Action":["s3:GetBucketLocation","s3:ListBucket"],\"Resource":["arn:aws:s3:::%s"]},{"Effect":"Allow","Principal":{"AWS":["*"]},\"Action":["s3:GetObject"],"Resource":["arn:aws:s3:::%s/*"]}]}'bucket_name = xxx
policy = policy % (bucket_name, bucket_name)
client.set_bucket_policy(bucket_name=bucket_name, policy=policy)

 方案三

        minio mc (management console) 管理控制台修改策略

        MinIO客户端快速入门指南| Minio中文文档  mc客户端的安装就不再说了,自己参考一下文档

我用的是windows--http://dl.minio.org.cn/client/mc/release/linux-amd64/mc

咱们用policy的命令来实现自定义策略

.\mc.exe policy --help

用json的方式来设置策略,贴一下我自己用的策略

也可以直接使用 mc policy set download minio/bucketName  默认就是以下策略

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

但是 action里的 "s3:ListBucket" 要去掉

因为"s3:ListBucket"可以在浏览器里访问你的桶内元素列表 很不安全

如果介意任何人都可以在浏览器中看到你的文件列表,就用下面的json来定义你的可下载策略

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

保存到 C:\Users\19874\mc\app_b.json 并执行以下命令

.\mc.exe policy set-json "C:\Users\19874\mc\app_b.json" minio/bucketName

ok,搞定

minio mc设置永久下载三种方式相关推荐

  1. response设置编码的三种方式以及比较

    https://blog.csdn.net/u010653908/article/details/53994021 response设置编码的三种方式以及比较 2017年01月03日 14:12:46 ...

  2. html正方形边框,详解HTML设置边框的三种方式

    HTML设置边框的三种方式 border-width: 1px 2px 2px; border-style: solid dashed dotted; border-color:red green b ...

  3. HTML设置边框的三种方式

    HTML设置边框的三种方式 文章目录 HTML设置边框的三种方式 1.边框的组成: 2.复合样式 3.单一设置 这样代表上边框 右边框 下边框 左边框 分别对四条边框进行设置 两个值代表:上下边框 左 ...

  4. echarts饼图自定义设置颜色的三种方式

    第一种方式 option下 color:['#45C2E0', '#C1EBDD', '#FFC851','#5A5476','#1869A0','#FF9393'], 整体代码如下: option ...

  5. response设置编码的三种方式

    在java后台的Action代码或者Servlet代码中用response的方法来设置输出内容的编码方式,有以下三个方法: 1.response.setCharacterEncoding(" ...

  6. Compose 设置颜色的三种方式

    文章目录 前言 一.直接设置 二.使用colors.xml中的颜色 三.使用compose主题中的颜色 前言 下文三种的color都是替换下列代码中的color Text(text = "T ...

  7. iOS设置圆角的三种方式

    第一种方法:通过设置layer的属性 最简单的一种,但是很影响性能,一般在正常的开发中使用很少. UIImageView *imageView = [[UIImageView alloc]initWi ...

  8. ubuntu设置代理 的三种方式

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程 转载自:http://www.cnblogs.com/lexus/archive/2012/02/20 ...

  9. CSS设置样式的三种方式

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 1.CSS 1.1内联样式 1.2内部样式表 1.3外部样式表 前言 对css的学习进行总结 提示:以下是本篇文章正文 ...

最新文章

  1. 解决:UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position错误
  2. 全面远程办公还有多远?用智办事很方便!
  3. power指令集 mysql_PowerPC汇编指令集简析
  4. 【机器视觉】 exit算子
  5. SpringCloud Zuul(四)之工作原理
  6. javascript历史、作用、三大组成、javascript代码书写位置、注意事项、变量
  7. Linux指令日期转为字符串,linux时间转换函数【转】
  8. 525 Contiguous Array 连续数组
  9. Maven传递依赖冲突解决(版本冲突)
  10. Java编程思想 经典评注分享
  11. 强化学习ppt_东台中等专业学校北大青鸟班PPT演讲大赛颁奖典礼顺利举行
  12. xshell使用隧道
  13. php视频教程打包下载 - 网络上最好的php视频教程
  14. C语言计算星历位置,GPS广播星历计算卫星位置和速度
  15. windows上的左斜杠和linux上的右斜杠的记忆方式
  16. 忘记 Apple ID 密码?重设 Apple ID 密码的 3 种方法
  17. 轻量级配置的登录管理器选择---Silm[zt]
  18. 安徽农业大学计算机考研分数线,安徽农业大学考研分数线
  19. 计算机共享文件误删怎么恢复,在电脑上不小心把共享里的EXCEL表格数据给删除了,该怎么恢复这个文件的数据啊?,excel表格里误删数据恢复...
  20. Docker容器技术 笔记

热门文章

  1. 电子器件系列一:光耦
  2. 《金字塔原理》的读后感作文3100字
  3. c语言中英文翻译 毕业设计,c语言中英文翻译资料 本科毕业论文.doc
  4. ASP再认识,利用python作为脚本语言
  5. 企业销售管理系统(数据库课程设计)
  6. 12-24更新-下载AIMP 3音乐播放器Build 970 RC 3
  7. Win10激活Office2013的技巧
  8. golang logrus日志框架
  9. Android 支付开发(支付宝)
  10. 小米max3支持html吗,小米Max3怎么样 到底值不值得买