利用 Amazon S3 解决大规模数据访问挑战

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 在 [Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail) 上构建数据湖或共享数据集时,管理访问是必不可少的。您需要强大的护栏,保护数据。在组织中,您需要对数据进行细粒度的访问控制,并对身份验证、授权、加密和审核进行强有力的控制。参加本论坛,了解在不同粒度和规模级别上实现访问控制以保持对数据的严格控制的常见成功模式。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共1300字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 亚马逊云科技的re:Invent中,一场名为"破解大规模数据访问难题:[Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail)的新视角"的演讲由S3团队的产品经理Rob Wilson开启,吸引了约500名听众的参与。他向观众介绍了另一位主讲人,亚马逊云科技公司的副总裁和资深工程师Becky Weiss,她在身份和访问管理领域拥有丰富的专业知识。 Rob首先解释了他们将要探讨的主题——亚马逊S3的全新访问授权功能,这项功能于2022年11月28日推出。他建议在亲自尝试这个新功能之前,观众们先等待观看演讲,并在演讲结束后在会场内外与他在走廊上进行交流。 为了更好地理解这一新功能,Rob首先回顾了在使用[Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail)时权限和访问控制的基本概念。他强调,S3存储桶默认是安全的,只有初始创建者可以访问,他们需要明确授予其他人访问权限。Rob建议大多数情况下采用两种最佳实践:启用S3阻止公共访问以限制公共可见性,并禁用存储桶ACL而使用IAM策略进行访问控制。事实上,自2022年4月以来,亚马逊云科技已为新的S3存储桶默认启用这些设置,以提高客户的安全性。 接着,Rob谈论了关于如何使用IAM策略来授予S3存储桶访问权限的一些基础知识。IAM策略可以允许或拒绝特定的API操作,如GetObject或PutObject。它们可以指定单个对象或使用前缀来匹配存储桶内的多个对象。例如,一个政策可能允许对具有前缀“submarine/”的所有对象进行GetObject和PutObject访问。 Rob解释道,基于前缀的策略在工作负载有限或需要访问的情况下效果良好。然而,由于每个Allow语句大约使用251个字符,因此当需要获取、放置和列出权限时,策略的大小限制为20KB。这大约只能容纳约30个前缀。 如需更精细的控制,可使用IAM用户策略而非存储桶策略。然而,这需要为用户所需访问的所有前缀组合设立独立的IAM角色。由于每个亚马逊云科技账户最多可允许1000个IAM角色(其中最大数量为5000),这种排列组合将迅速增加。一名名为Rob的客户在存储多个团队的数据时遇到了困难,因为每个团队需要访问的前缀组合导致了IAM角色的泛滥。 为了解决这个问题,Rob引入了访问点(Access Points),其为访问管理提供了一个抽象层。请求首先经过访问点,访问点会在访问底层存储桶之前检查策略。这使得在不扩大存储桶策略的情况下实现非常精细的控制成为可能。每个账户在每个区域可以拥有多达10,000个访问点,提供充足的策略空间。然而,缺点是应用程序需在访问数据之前先发现和选择合适的正确访问点。 目前,Rob正在关注结构化数据集的访问控制问题,这些数据集具有行和列,而不仅仅是简单的对象。例如,亚马逊云科技 Lake Formation这样的工具可以在列或行级别授予访问权限,这与S3仅支持对象级别的权限不同。 Rob通过一个例子进行了解释,一家公司将其客户购买交易存储在S3中,包括客户名称、购买的物品、价格、位置等列。不同的用户需要访问不同的列——例如,管理员用户需要完全访问,而“数据用户”只能看到交易ID和价格。使用Lake Formation、亚马逊云科技 Glue和[Amazon Athena](https: //aws.amazon.com/cn/athena/?trk=cndc-detail),查询可以自动过滤,以便只向每个用户返回许可的列。因此,尽管数据存储在S3存储桶中,Lake Formation提供了直接通过S3权限无法实现的上下文感知的访问控制。 回到主题,Rob介绍了一种称为IAM会话代理的常见模式,用于动态访问控制。在这种模型中,应用程序从自定义代理服务请求临时凭证,该服务验证用户并确定他们的访问权限。代理在亚马逊云科技安全令牌服务中担任一个角色,以授予有限时间的凭证来访问S3。 该应用程序会申请临时凭证,以便为用户提供身份识别以及针对所需S3资源的访问权限。在这个过程中,系统将验证用户的访问授权,核对相匹配的授权许可,然后在可定制的时限(例如分钟或小时)内为用户分配一个特定角色,从而生成临时凭证。一旦应用程序获得了这些凭证,它就可以在所授予的权限范围内对S3对象进行访问。CloudTrail日志将记录原始用户的访问情况,并通过"代表"项来追踪对数据的访问路径。 她表示,每个亚马逊云科技账户和区域都可以访问授予实例,跨账户访问则需要IAM权限。授予操作类似于为S3前缀创建文件夹。默认情况下,授予将与一个IAM角色关联,但也可以选择使用不同角色来定义自定义位置。 贝基通过示例向观众展示了如何使用亚马逊云科技CLI为IAM用户和身份提供者创建访问授予。她还解释了应用程序如何通过GetDataAccess API为用户请求临时凭证的过程。 接着,她介绍了访问授予与其他服务的集成情况: - KMS加密可以正常工作,已授予的凭证具有所需的权限。 - Lake Formation更适用于基于SQL的访问,而访问授予则更适合API/SDK访问。 - EMR和Spark已经与访问授予和用户级别权限进行了集成。 总的来说,贝基解释道,相较于传统IAM策略和自定义中介解决方案,S3访问授予解决了很多关于规模、灵活性和可审计性的关键挑战。当需要以精细和动态的方式将许多用户和组映射到S3前缀时,它非常适用。 这段视频全面地探讨了在亚马逊S3中存储数据的大规模提供安全访问的考虑因素和选项。主讲人详细介绍了新的S3访问授予功能如何帮助客户满足其在S3数据湖达到PB级规模时的复杂许可要求。她的见解有助于观众了解除了传统IAM策略和会话中介之外,何时可能使用访问授予。 **下面是一些演讲现场的精彩瞬间:** 在亚马逊云科技会议的一场会议上,Rob Wilson代表身份和访问管理团队,向与会者介绍了他们自己以及Becky Weiss等其他团队成员。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_0.png) 在这次演讲中,他们将概述亚马逊云科技中各种访问控制选项的内容,以迎接S3访问授予的推出。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_1.png) 由于越来越多使用场景的添加,单一S3 Bucket策略的管理权限变得越来越复杂,这给管理者带来了挑战。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_2.png) 随着生成性AI的不断发展,越来越多的用户需要访问S3数据湖,因此企业希望通过一种超过IAM的可扩展方式来将用户和组映射到数据集。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_3.png) 领导者们强调,将用户身份完全传播到CloudTrail的重要性,以提高可审计性。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_4.png) 与仅使用单独的IAM策略相比,S3访问授予提供了更详细的S3 Bucket访问控制。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_5.png) 通过S3访问授予,您可以在亚马逊云科技账户和组织之间安全地大规模共享数据。 ![](https://d1trpeugzwbig5.cloudfront.net/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3/images/rebranded/STG337-Solving_large_scale_data_access_challenges_with_Amazon_S3_6.png) ## 总结 The video presents a new feature of [Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail) – S3 Access Authorization, which provides fine-grained and dynamic access control for data stored in S3 buckets. Its purpose is to address the challenges of managing large-scale and complex access patterns. S3 Access Authorization allows the creation of discrete authorizations between S3 objects and IAM entities or identities from external identity providers. This simplifies access management compared to using a single bucket policy. It enables user identities to be mapped to datasets consistently and centrally rather than individually implemented within applications. The user identities will also be displayed in CloudTrail logs for auditing purposes. Internally, S3 Access Authorization works like a session broker pattern, providing temporary credentials to access S3 after evaluating access authorizations. It integrates with Amazon Web Services (亚马逊云科技) Cognito to introduce external user identities. The video provides an example of using S3 Access Authorization in an application and demonstrates how it works together with IAM and other access control options, such as Lake Formation. ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站! [2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站") [点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯! [点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯! ## 即刻注册亚马逊云科技账户,开启云端之旅! [【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“") [【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭