对象存储 sts,对象存储oss是什么
- 综合资讯
- 2024-10-01 09:10:09
- 5

***:对象存储OSS是一种海量、安全、低成本、高可靠的云存储服务,能提供多种数据存储类型,适用于多种场景如网站静态资源存储等。而STS(Security Token...
***:对象存储OSS是一种海量、安全、低成本、高可靠的云存储服务,能提供多种存储类型以满足不同场景需求,适用于多种数据存储与管理场景。安全令牌服务STS则是一种临时授权机制。它为用户提供短期访问权限,可有效控制对OSS等资源的访问权限,提高安全性,二者在云存储体系中各自发挥着重要且相互关联的作用。
《深入探究对象存储OSS与STS:原理、应用及安全机制》
一、对象存储OSS概述
(一)定义与概念
对象存储OSS(Object Storage Service)是一种面向海量数据存储的分布式存储服务,它将数据以对象的形式存储在扁平的命名空间中,每个对象都包含数据本身、元数据(如对象的大小、创建时间等)以及唯一的标识符,与传统的文件存储和块存储不同,对象存储更适合于处理大规模的非结构化数据,如图片、视频、音频、日志文件等。
(二)架构与原理
1、数据存储
- 在OSS的架构中,数据被分散存储在多个数据节点上,这些数据节点组成一个庞大的存储集群,当用户上传一个对象时,OSS会根据一定的算法将对象分配到合适的数据节点进行存储,通过对对象的键(Key)进行哈希运算,确定其存储位置。
- 为了保证数据的可靠性,OSS通常采用多副本存储策略,一般会在不同的物理设备甚至不同的数据中心存储对象的多个副本,一份数据可能会在三个不同的存储节点上保存副本,当一个节点出现故障时,仍然可以从其他副本恢复数据。
2、元数据管理
- 元数据在OSS中起着至关重要的作用,它与对象的数据分开存储,但又紧密关联,元数据存储着对象的各种属性信息,如对象的名称、大小、类型、创建时间、最后修改时间等,这些元数据信息有助于用户快速定位和管理对象,当用户需要查找特定大小范围内的对象时,可以通过元数据中的大小属性进行筛选。
(三)OSS的优势
1、海量存储能力
- OSS能够轻松应对海量数据的存储需求,无论是大型互联网企业的海量用户数据,还是科研机构的大规模实验数据,OSS都可以提供足够的存储空间,一个拥有数亿用户的社交媒体平台,每天产生的图片、视频等数据量极其庞大,OSS可以有效地存储这些数据,并且随着数据量的增长可以方便地进行扩容。
2、高可靠性
- 基于多副本存储和数据冗余技术,OSS的可靠性极高,即使在面对硬件故障、自然灾害等情况时,数据仍然能够保持完整和可用,在数据中心遭遇火灾或地震等不可抗力事件时,由于数据的副本分布在不同的位置,数据不会丢失。
3、高可扩展性
- OSS可以根据用户的需求灵活扩展存储容量,用户不需要预先购买大量的存储空间,而是可以随着业务的发展逐步增加存储容量,这对于创业公司或者业务增长迅速的企业来说非常有利,它们可以根据实际的数据增长情况来控制成本。
4、低成本
- 相比传统的存储方式,OSS的成本更低,因为它采用了分布式架构和大规模存储技术,可以降低单位存储成本,对于中小企业和创业公司来说,使用OSS可以在满足存储需求的同时,有效控制存储成本。
二、安全令牌服务STS(Security Token Service)
(一)定义与作用
1、STS是一种为临时访问权限提供安全保障的服务,在对象存储OSS的应用场景中,STS可以为用户或应用程序提供临时的访问凭证(如临时的访问密钥和安全令牌),使得它们能够在限定的时间和权限范围内访问OSS资源。
2、一个移动应用程序可能需要访问OSS中的用户图片资源,通过STS,应用程序可以获取临时的访问权限,而不需要长期持有固定的OSS访问密钥,这样可以提高安全性,防止访问密钥泄露导致的安全风险。
(二)工作原理
1、身份验证
- 当用户或应用程序请求STS服务获取临时访问凭证时,首先需要进行身份验证,这可以通过多种方式实现,如使用用户名和密码、数字证书等,在一个企业内部的应用系统中,员工使用企业内部的账号密码登录后,向STS服务发起获取临时访问OSS权限的请求,STS服务会验证员工的账号密码是否正确。
2、权限定义
- 在身份验证通过后,STS会根据预定义的权限策略为用户或应用程序生成临时访问凭证,这些权限策略可以精确地定义用户能够访问的OSS资源(如特定的存储桶或对象)、操作类型(如读、写、删除等)以及访问的有效时间,一个临时的图片处理应用程序可能只被授予对某个存储桶中特定类型图片的只读权限,并且这个权限的有效时间可能只有几个小时。
3、令牌生成与分发
- STS根据权限定义生成包含临时访问密钥和安全令牌的访问凭证,并将其分发给请求者,这个访问凭证在有效期内可以被用于访问OSS资源,当一个第三方服务提供商需要临时访问企业的OSS资源来进行数据备份时,STS会生成相应的临时访问凭证并发送给该服务提供商,服务提供商可以使用这个凭证在规定的时间和权限范围内进行数据备份操作。
(三)STS在OSS中的应用场景
1、第三方应用集成
- 许多企业会与第三方应用进行集成,这些第三方应用可能需要访问企业的OSS资源,通过STS,企业可以为第三方应用提供临时的、有限制的访问权限,一家电商企业与物流供应商的应用进行集成,物流供应商的应用需要访问电商企业OSS中的订单相关图片(如商品发货单图片等),电商企业可以通过STS为物流供应商的应用提供临时的只读权限,确保数据安全的同时实现业务协同。
2、移动应用开发
- 在移动应用开发中,为了保护用户数据的安全,移动应用不能长期持有OSS的固定访问密钥,STS可以为移动应用提供临时的访问权限,使得移动应用能够安全地访问OSS中的用户数据,如用户上传的头像、照片等,一个社交类移动应用,用户在登录时,应用向STS请求临时访问权限,然后使用这个权限从OSS中获取用户的头像显示在应用界面上。
3、跨账号资源共享
- 在企业内部或者合作伙伴之间,可能存在跨账号共享OSS资源的需求,STS可以为不同账号之间的资源共享提供安全的临时访问机制,企业内部的不同部门可能有各自的账号,当一个部门需要临时共享数据给另一个部门时,可以通过STS为对方提供临时的访问权限,方便资源共享的同时保证数据的安全性。
三、对象存储OSS与STS的结合使用
(一)数据访问流程
1、初始请求
- 当用户或应用程序需要访问OSS资源时,首先向STS服务发出获取临时访问凭证的请求,这个请求包含了身份验证信息(如用户名、密码或其他认证标识)以及对所需OSS资源访问权限的描述(如需要访问的存储桶名称、操作类型等)。
2、STS响应
- STS服务接收到请求后,根据预先设定的身份验证机制对请求者进行身份验证,如果身份验证成功,STS根据请求中对权限的描述和预定义的权限策略生成临时访问凭证,包括临时的访问密钥和安全令牌,然后将这些凭证返回给请求者。
3、OSS访问
- 请求者收到STS返回的临时访问凭证后,使用这些凭证向OSS发起资源访问请求,OSS接收到请求后,会验证临时访问凭证的有效性,包括验证令牌的签名、检查权限是否匹配等,如果验证通过,OSS允许请求者进行相应的操作,如读取对象数据、上传新对象或删除对象等。
(二)安全保障机制
1、最小权限原则
- 通过STS与OSS的结合,可以实现最小权限原则,即每个用户或应用程序只被授予完成其任务所需的最小权限,一个只需要读取OSS中特定报表数据的数据分析应用程序,通过STS只会被授予对这些报表数据的只读权限,而不会被授予其他不必要的权限,如写入或删除权限,从而降低了安全风险。
2、短期有效凭证
- STS生成的临时访问凭证是有有效期的,通常是几个小时到几天不等,这意味着即使临时访问凭证不小心泄露,攻击者也只能在有限的时间内利用这些凭证进行非法访问,一个临时的访问凭证有效期为3小时,即使在这3小时内凭证被泄露,3小时后凭证就会失效,无法再用于访问OSS资源。
3、权限动态调整
- 企业或应用系统可以根据业务需求动态调整STS的权限策略,如果一个第三方应用的业务范围发生了变化,需要增加对OSS中某些新对象的访问权限,企业可以通过修改STS的权限策略来实现,而不需要重新为第三方应用分配固定的OSS访问密钥。
(三)性能与成本优化
1、减少长期密钥管理风险
- 在没有使用STS的情况下,长期使用固定的OSS访问密钥存在较大的安全风险,一旦密钥泄露,可能会导致严重的安全问题,使用STS后,通过临时访问凭证的方式,可以减少长期密钥管理的风险,从而降低因安全问题可能带来的潜在成本,如数据泄露后的恢复成本、声誉损失成本等。
2、优化资源访问效率
- STS与OSS的结合可以根据实际需求灵活分配访问权限,避免了不必要的权限检查和资源浪费,对于只需要偶尔访问OSS资源的应用程序,通过STS获取临时的、精准的访问权限,可以提高资源访问的效率,同时也不会因为长期持有大量不必要的权限而影响系统的整体性能。
四、实际案例分析
(一)互联网媒体公司
1、背景
- 一家互联网媒体公司,每天产生大量的图片、视频和文章内容,这些内容都需要存储在对象存储OSS中,该公司与多个第三方内容分发网络(CDN)和广告合作伙伴进行合作,这些合作伙伴需要访问公司OSS中的部分内容。
2、解决方案
- 使用STS为合作伙伴提供临时访问权限,对于CDN合作伙伴,公司通过STS为其提供对存储桶中特定媒体文件(如视频文件)的只读权限,以便CDN能够将这些文件分发到全球各地的用户,对于广告合作伙伴,根据合作协议,为其提供对特定广告素材(存储在OSS中的图片和视频)的读权限,并且通过设置STS的权限策略,限制其访问的有效时间为每天的特定时间段(如广告投放时间段)。
3、效果
- 通过这种方式,公司既保证了自身数据的安全,又实现了与合作伙伴的高效协作,减少了因长期为合作伙伴提供固定访问密钥可能带来的安全风险,同时也能够根据业务需求灵活调整合作伙伴的访问权限。
(二)电商企业
1、背景
- 电商企业拥有海量的商品图片、用户评价图片等数据存储在OSS中,其移动应用需要频繁访问这些图片来展示给用户,企业还与物流、支付等第三方服务提供商进行合作,这些合作伙伴也需要访问OSS中的相关数据。
2、解决方案
- 在移动应用方面,每次用户登录移动应用时,应用向STS请求临时的访问权限来获取用户相关的图片资源,对于第三方服务提供商,如物流提供商需要访问商品发货单图片,企业通过STS为其提供临时的只读权限,支付提供商需要验证商品金额相关的图片信息时,也通过STS获取相应的临时访问权限。
3、效果
- 提高了数据的安全性,特别是对于移动应用,避免了移动应用长期持有固定访问密钥可能导致的安全隐患,也方便了与第三方服务提供商的合作,能够根据业务变化快速调整合作伙伴的访问权限。
五、未来发展趋势
(一)智能化权限管理
- 随着人工智能和机器学习技术的发展,STS与OSS的结合有望实现智能化的权限管理,通过分析用户的行为模式,可以自动调整临时访问凭证的权限,如果一个应用程序在一段时间内只进行了读取操作,系统可以自动减少其写入和删除等不必要的权限,进一步提高安全性。
(二)与区块链技术的融合
- 区块链技术的分布式账本和不可篡改特性可以为OSS和STS的安全提供新的保障,将STS的权限分配记录存储在区块链上,可以确保权限分配的透明性和不可篡改性,防止内部人员恶意修改权限策略。
(三)跨云平台的统一管理
- 在多云环境下,企业希望能够实现对不同云平台的OSS资源和STS服务进行统一管理,未来可能会出现跨云平台的管理工具,使得企业可以更方便地在不同云平台之间进行数据迁移、权限管理等操作,提高企业的灵活性和竞争力。
对象存储OSS与安全令牌服务STS的结合为企业和开发者提供了一种高效、安全、灵活的海量数据存储和访问解决方案,在不断发展的数字化时代,它们的应用和发展前景将更加广阔。
本文链接:https://www.zhitaoyun.cn/108425.html
发表评论