亚马逊AWS官方博客
新推出 AWS Resource Access Manager – 跨账户资源共享
我在过去已经讲过,由于多方面的原因,我们的客户会使用多个 AWS 账户。一些客户使用账户来创建管理和费用边界;另一些客户则使用账户来控制他们所犯任何错误的爆炸半径。
尽管所有这些隔离措施对客户的净效益为正,但事实上某种类型的共享也是非常有用和有益的。例如,许多客户希望集中创建资源并跨账户进行共享,从而减少管理开销和运营成本。
AWS Resource Access Manager
新推出的 AWS Resource Access Manager (RAM) 可以方便 AWS 账户之间的资源共享。通过它可以在您的 AWS 组织内部共享资源,可以从控制台、CLI或通过一组 API 来使用。我们现已推出对 Route 53 解析器规则的支持(昨天已在 Shaun 的优秀博文中宣布)并且将很快支持更多资源类型。
如要共享资源,您只需创建一个资源共享并为其命名,向其中添加一个或多个资源,然后向其他 AWS 账户授予访问权限即可。每个资源共享就好比一个购物车,可以容纳不同类型的资源。您可以共享您拥有的任何资源,但您无法再次共享他人向您共享的资源。您可以与组织、组织单元 (OU) 或 AWS 账户共享资源。您还可以控制是否可以将组织之外的账户添加到特定的资源共享中。
组织的主账户必须在 RAM 控制台的设置页面启用共享:
然后与组织内的其他账户共享资源,无需进一步的操作即可实现资源共享(RAM 利用了将账户添加到组织时完成的握手便利)。与组织之外的账户共享资源时将会发出一份邀请,必须接受该邀请才能向该账户共享资源。
与某个账户(姑且称之为消费账户)共享资源时,将会在相关控制台页面显示共享的资源以及消费账户拥有的资源。同样,Describe
/List
调用将会返回共享的资源和消费账户拥有的资源。
资源共享可以添加标签,您可以引用 IAM 策略中的标签来创建基于标签的权限系统。您可以随时添加和删除资源共享的账户和资源。
AWS Resource Access Manager 的使用
我会打开 RAM 控制台,然后单击 Create a resource share(创建资源共享)以开始使用:
我会输入我的共享名称 (CompanyResolvers) 然后选择我希望添加的资源:
如我早先所提到,我们将很快增加更多的资源类型!
我会输入我希望与之共享资源的主体(组织、组织单位或 AWS 账户),然后单击 Create resource share(创建资源共享):
我组织之外的其他账户将会收到邀请。邀请将在控制台中显示,并且可以在控制台中接受。接受邀请后,如果拥有恰当的 IAM 权限,这些账户将可以访问资源。
RAM 还允许我集中访问我共享的所有资源,以及向我共享的所有资源:
您还可以使用 CreateResourceShare
、UpdateResourceShare
、GetResourceShareInvitations
和 AcceptResourceShareInvitation
等函数实现共享过程的自动化。当然,您可以使用 IAM 策略来管理这些函数在交易两侧的使用。
资源共享不收取任何费用。
现已推出
AWS Resource Access Manager (RAM) 现已开放,您可以立即开始共享资源。