简介

  阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。

使用流程

  

名词解释

   Endpoint(访问域名)
  AccessKeyId(阿里云API的密钥)
  AccessKeySecret (与AccessKeyId对应)
  Bucket(存储空间)

OSS权限控制 

  • 账号级别权限

    • 阿里云账号AccessKey
    • RAM子账号AccessKey(避免泄露主账号的AccessKey,建议使用)
    • STS账号AccessKey
  • Bucket级别权限
    • public-read-write  公共读写
    • public-read  公共读,私有写
    • private  私有读写
  • Object级别权限(优先级高于Bucket)

    • public-read-write 公共读写
    • public-read 公共读,私有写
    • private 私有读写
    • default 默认权限 继承bucket

个人总结

  • 如果是私有权限的文件,客户端该如何访问?

1.在Header中包含签名

    

    2.在URL中包含签名

    

      注:如果多次请求该方法,每次返回的url都不一样

      例子:https://tts-oss-public.oss-cn-shenzhen.aliyuncs.com/test/f3a4a566197744a880383135bee0fccd1234.png?Expires=1524566570&OSSAccessKeyId=TMP.AQFXJvAkVfBaSwWi5a68tvgbrUVyzOH8_6w-YiOdGDYGxUhaBRowDx0ospaoAAAwLAIUNR8PTGbizu3ii_gFls2XEjyAdxgCFCO_85hsDtcnuzhKfXyb3ob4knFV&Signature=tb7w7K%2F%2FiKA4fYPHGieDOh99zUk%3D

  • OSS文件URL构成解释?  

    https://tts-oss-public.oss-cn-shenzhen.aliyuncs.com/test/123.png

    tts-oss-public:bucket名称,自定义,保存后不可更改,全局唯一
    oss-cn-shenzhen.aliyuncs.com:地域域名,在创建 Bucket 的时候指定的,指定之后不允许更改
    test:文件夹名,自定义,如果创建时带有 / 会自动创建
    123.png:文件名

  • bucket设置为私有,能否防止恶意下载?

    不能防止,一但对应资源的签名url对外暴露,在签名url有效期内就可以通过签名url下载对应的资源;

  • bucket私有,获取到的资源链接是否具有时效性?

    有时效性,一但过期就不可被访问

  • 获取到的资源链接是否可以永久有效?

    将bucket改为公共读/公共读写,获取到的object链接一般都是永久有效的,但是如果bucket私有要获取永久有效的链接,

      不支持也没意义(私有本身就是为了保证数据安全性,一定期限内可访问,一定程度上防止恶意下载,链接有效时间过长也就失去了对应的意义)。

  • 补充

    OSSClient是OSS服务的Java客户端,它为调用者提供一系列与OSS进行交互的接口,用于管理、操作存储空间(Bucket)和文件(Object)等OSS资源。

    •   

      // 创建OSSClient实例
      OSSClient client = new OSSClient(endpoint, accessKeyId, accessKeySecret);

    同一个存储空间的内部是扁平的,没有文件系统的目录等概念,所有的对象都直接隶属于其对应的存储空间。

OSS对象储存的更多相关文章

  1. iOS使用阿里云OSS对象存储 (SDK 2.1.1)

    最近项目中用到了阿里云OSS对象存储,用来存储APP中图片.音频等一些数据.但坑爹的阿里云居然在11月20日将SDK版本更新到了2.1.1,然而网上给出的教程都是1.*版本的(针对iOS),两个版本所 ...

  2. oss对象云存储

    import qiniu import uuidimport config def qn_upload_voice(fileData): '''上传语音到七牛云 @arg: fileData - 编码 ...

  3. 架构师小跟班:教你从零开始申请和配置七牛云免费OSS对象存储(不能再详细了)

    背景 之前为了练习Linux系统使用,在阿里云上低价买了一台服务器(网站首页有活动链接,传送门),心里想反正闲着也是闲着,就放了一个网站上去.现在随着数据越来越多,服务器空间越来越吃紧,我就考虑使用七 ...

  4. Java使用阿里云OSS对象存储上传图片

    原 Java使用阿里云OSS对象存储上传图片 2017年03月27日 10:47:28 陌上桑花开花 阅读数 26804更多 分类专栏: 工作案例总结 版权声明:本文为博主原创文章,遵循CC 4.0 ...

  5. 22.Java面试学习平台-整合OSS对象存储

    SpringCloud实战项目全套学习教程连载中 PassJava 学习教程 简介 PassJava-Learning项目是PassJava(佳必过)项目的学习教程.对架构.业务.技术要点进行讲解. ...

  6. 在搞OSS对象存储中发现了自身的一些不足

    最近在搞OSS对象存储,发现了自身的一些不足,趁着有空在此做个总结,希望能够帮助到大家!!! 首先解释下OSS,Object Storage Service(对象存储服务),一般的云公司,都会提供OS ...

  7. 阿里云oss对象存储配置CDN

    阿里云oss对象存储配置CDN 1.打开阿里云CDN 2.填写信息,这个地方要注意,我的备案域名是www.ljwXXX.work,我们可以自定义一个域名,test.ljwXXX.work作为加速域名. ...

  8. SpringBoot整合阿里云OSS对象存储实现文件上传

    1. 准备工作: 一.首先登录阿里云OSS对象存储控制台创建一个Bucket作为你的存储空间. 二.创建Access Keyan按要求创建进行,这里的方法步骤我就不展现出来了,你们可以自行查询阿里云文 ...

  9. OSS对象存储

    OSS对象存储 当项目以微服务搭建时,多个服务往往运行在多台服务器上,此时针对存储文件的获取和保存,难以确定具体的位置: 针对这个问题,一般有两个办法: 搭建独立的文件存储服务器,用 FastDFS等 ...

随机推荐

  1. 关于.NET中迭代器的实现以及集合扩展方法的理解

    在C#中所有的数据结构类型都实现IEnumerable或IEnumerable<T>接口(实现迭代器模式),可以实现对集合遍历(集合元素顺序访问).换句话可以这么说,只要实现上面这两个接口 ...

  2. 【poj 2478】Farey Sequence(数论--欧拉函数 找规律求前缀和)

    题意:定义 Fn 序列表示一串 <1 的分数,分数为最简分数,且分母 ≤n .问该序列的个数.(2≤N≤10^6) 解法:先暴力找规律(代码见屏蔽处),发现 Fn 序列的个数就是 Φ(1)~Φ( ...

  3. P1714 切蛋糕 dp+单调队列

    题意: 题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精. 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸.于是琪露诺决定到 ...

  4. STL中pair容器的用法

    1.定义pair容器 1 pair <int, int> p, p1; 2 //定义 [int,int] 型容器 //直接初始化了p的内容 pair<string,int>p( ...

  5. Acwing 154 滑动窗口(单调队列)经典模板

    给定一个大小为n≤106n≤106的数组. 有一个大小为k的滑动窗口,它从数组的最左边移动到最右边. 您只能在窗口中看到k个数字. 每次滑动窗口向右移动一个位置. 以下是一个例子: 该数组为[1 3 ...

  6. 牛客编程巅峰赛S1第11场 - 黄金&钻石 A.牛牛的01游戏 (模拟栈)

    题意:有一个\(01\)串,两个相邻的\(0\)可以变成一个\(1\),两个相邻的\(1\)可以直接消除,问操作后的字符串. 题解:数组模拟栈直接撸,上代码吧. 代码: class Solution ...

  7. git忽略规则以及.gitignore文件不生效解决办法

    正文 Git忽略规则: #此为注释 – 内容被 Git 忽略 .sample # 忽略所有 .sample 结尾的文件 !lib.sample # 但 lib.sample 除外 /TODO # 仅仅 ...

  8. Eazfuscator.NET(.net混淆工具)

    软件功能 调试支持: 在你的程序集被Eazfuscator.NET混淆后,它不会成为不可调试混乱的砖块.你总是可以得到一个行号,出现未处理的异常,查看可读的堆栈跟踪,甚至附加调试器来遍历你的模糊代码. ...

  9. WOJ1022 Competition of Programming 贪心 WOJ1023 Division dp

    title: WOJ1022 Competition of Programming 贪心 date: 2020-03-19 13:43:00 categories: acm tags: [acm,wo ...

  10. C++中二维数组作为函数参数

    在平时,我们经常会遇到将整个数组作为函数参数的情况,一维数组的情况,就是用数组名当形参和实参,传递的是数组的首地址.二维数组我们用的也很多,但是总是有各种问题,今天我总结一下 有个很重要的一点,字符串 ...