<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>服务器安全维护工作室 &#187; AWS Organizations —— 管理众多账号</title>
	<atom:link href="https://www.fuwuqiok.com/tag/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.fuwuqiok.com</link>
	<description></description>
	<lastBuildDate>Sun, 01 Mar 2020 07:28:40 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.26</generator>
	<item>
		<title>AWS Organizations —— 管理众多账号</title>
		<link>https://www.fuwuqiok.com/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/</link>
		<comments>https://www.fuwuqiok.com/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/#comments</comments>
		<pubDate>Fri, 23 Mar 2018 01:50:28 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[服务器代维]]></category>
		<category><![CDATA[服务器代维护]]></category>
		<category><![CDATA[服务器安全代维]]></category>
		<category><![CDATA[服务器安全设置]]></category>
		<category><![CDATA[服务器维护]]></category>
		<category><![CDATA[服务器运维]]></category>
		<category><![CDATA[系统安全代维]]></category>
		<category><![CDATA[网站代维]]></category>
		<category><![CDATA[网站防挂马]]></category>
		<category><![CDATA[AWS Organizations —— 管理众多账号]]></category>

		<guid isPermaLink="false">https://www.fuwuqiok.com/?p=3465</guid>
		<description><![CDATA[<p>AWS Organizations简述 AWS Organizations 可为多个 AWS 账户提供基于策略 [&#8230;]</p>
<p><a rel="nofollow" href="https://www.fuwuqiok.com/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/">AWS Organizations —— 管理众多账号</a>，首发于<a rel="nofollow" href="https://www.fuwuqiok.com">服务器安全维护工作室</a>。</p>
]]></description>
				<content:encoded><![CDATA[<h3>AWS Organizations简述</h3>
<p>AWS Organizations 可为多个 AWS 账户提供基于策略的管理。借助 AWS Organizations，您可以创建账户组，然后将策略应用于这些组。Organizations 支持您针对多个账户集中管理策略，无需使用自定义脚本和手动操作流程。</p>
<p>使用 AWS Organizations，您可以创建服务控制策略 (SCP)，从而集中控制多个 AWS 账户对 AWS 服务的使用。Organizations 支持您通过 包括API，SDK和Console界面创建新账户。Organizations 还有助于简化多个账户的计费模式，即您可以通过整合账单(Consolidated Billing)为您组织中的所有账户设置一种付费方式。所有 AWS 客户都可以使用 AWS Organizations，且无需额外付费。要注意的是任意的AWS账户只能存在一个Organization中。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-1.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-1.png" alt="0122-1" width="1298" height="760" /></a></p>
<h3>AWS Organizations关键性概念</h3>
<p>在正式接触AWS Organizations之前我们必须要先弄清楚其中的关键性名词和概念</p>
<p><strong>Organization – 组织</strong></p>
<ul>
<li>组织是指一系列AWS账户，您可以将其整理为一个层次结构并进行集中式管理</li>
</ul>
<p><strong>AWS account – 账户</strong></p>
<ul>
<li>AWS账户是您AWS资源的容器，例如： Amazon S3 存储桶、 Amazon EC2 实例等</li>
<li>通过AWS Identity and Access Management (IAM) 规则  (users, roles) 管理AWS资源</li>
<li>AWS Organizations中最小的管理单元</li>
</ul>
<p><strong>Master account – 主账户</strong></p>
<ul>
<li>在组织中为所有账户付款的账户</li>
<li>管理您的组织的Hub（中心）节点</li>
</ul>
<p><strong>Organizational unit (OU) – 组织单元</strong></p>
<ul>
<li>组织单元是组织内的一组AWS账户</li>
<li>把AWS账户添加到逻辑组中，账号管理更方便</li>
<li>AWS账户和组织单元OU可以是另外一个组织单元OU的成员</li>
<li>一个AWS账户可以是多个组织单元OU的成员</li>
</ul>
<p><strong>Administrative root – 管理根</strong></p>
<ul>
<li>管理根是整理AWS账户的起始点，也是整个组织层次架构中的最顶层的容器。</li>
</ul>
<p><strong>Organization control policy (OCP) – 组织控制策略</strong></p>
<ul>
<li>含有一个或多个语句的配置，这些语句用于定义您要应用于某组AWS账户的控制策略</li>
<li>不同应用场景使用不同的组织控制策略</li>
</ul>
<p>下图可以帮助您更直观的理解这些概念之间的关系：</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-2.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-2.png" alt="0122-2" width="806" height="654" /></a></p>
<p>下面我会更详细的介绍以上提出的这些概念：</p>
<h3>Account加入Organization的方式</h3>
<p>1.从Organization中创建新账户</p>
<p>1.1 新的AWS账户只能通过主账户来创建</p>
<p>1.2 在创建账户的过程中，您可以配置下面的信息：</p>
<p>电子邮件地址 (必须)</p>
<p>账户名称 (必须)</p>
<p>IAM 角色名称 (可选 – 默认的名称是 OrganizationAccountAccessRole)</p>
<ul>
<li>为主账户通过AssumeRole方式访问当前账户开启信任权限</li>
<li>权限设置为完全控制</li>
<li>IAM 访问账单 (可选) 。注意! IAM 用户仍然需要相关的IAM权限才可以访问账单</li>
</ul>
<p>1.3 新AWS账户</p>
<p>自动成为您组织的一部分</p>
<p>可以从组织中删除，但是可以通过策略让其没有执行Leave Organization的权限</p>
<p>2. 让已有账户加入Organization</p>
<p>2.1 邀请只能通过主账户发起</p>
<p>2.2 被邀请的AWS账户可以选择接受或者拒绝邀请</p>
<p>默认的行为是拒绝</p>
<p>可以通过IAM权限来控制</p>
<p>2.3 当邀请被接受</p>
<p>这个AWS账户就成为组织的一个成员</p>
<p>可应用的OCP规则会被自动引用到这个账户</p>
<p>2.4 被邀请的AWS账户可以被从组织中移除，但是可以通过策略让其没有执行Leave Organization的权限</p>
<h3>AWS Account的逻辑组(OU)</h3>
<ul>
<li>把AWS账户添加到逻辑组中，账号管理更方便</li>
<li>AWS账户和组织单元OU可以是另外一个组织单元OU的成员</li>
<li>一个AWS账户可以是多个组织单元OU的成员</li>
</ul>
<p>如下图所示：</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-3.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-3.png" alt="0122-3" width="870" height="381" /></a></p>
<h3>OCP(Organization Control Policy)</h3>
<p>1. 描述要应用的控制策略</p>
<p>2. 不同的使用场景有不同的应用控制策略 OCP</p>
<p>3. 应用控制策略OCP可以被附加到</p>
<ul>
<li>组织(Organization)</li>
<li>组织单元(OU)</li>
<li>AWS账户(Account)</li>
</ul>
<p>4. OCP拥有继承属性(AWS账户, 组织单元OU, 组织)</p>
<ul>
<li>Policy是继承关系的，也就是说OU会继承organization的policy，而AWS Account会继承OU的policy</li>
<li>Account的policy会跟随其移动，如果这个Account从一个OU移动到另一个OU，那么属于这个Account的Policy也会移动。但是它不会再接收之前OU的Policy，而是会接收新OU的Policy</li>
</ul>
<h3>OCP support in V1：Service Control Policies(SCPs)</h3>
<p>1. 允许您对AWS服务 API进行访问控制</p>
<ul>
<li>定义一个允许访问的API列表 – 白名单</li>
<li>定义一个禁止访问的API列表 – 黑名单</li>
</ul>
<p>2. 服务控制策略无法被本地管理员覆盖</p>
<p>3. 对于IAM用户和角色，最终生效的权限是服务控制策略和相关的IAM权限的交集</p>
<p>4. 必要但不充分，本地用户拥有某行为权限，必须要同时拥有SCP权限和IAM权限</p>
<p>5. IAM 规则模拟器对SCP有感知</p>
<p>6. SCP的控制权限大于本地administrator的权限</p>
<p>下图是使用白名单和使用黑名单写SCP的案例:</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-4.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-4.png" alt="0122-4" width="756" height="426" /></a></p>
<p>SCP使用的是IAM policy的语法，和IAM Policy一样，但是有以下两点不同</p>
<ul>
<li>Resource必须是”*”</li>
<li>没有condition</li>
</ul>
<p>一定注意，允许最终用户行为的话，必须要SCP和IAM Permission同时拥有。下图所示，如果在SCP允许S3和EC2，但是在IAM Permission允许EC2和SQS。那么最终用户只能拥有EC2的权限。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-5.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-5.png" alt="0122-5" width="479" height="347" /></a></p>
<h3>简单化的账单管理</h3>
<ul>
<li>单个付款账户为所有账户付款</li>
<li>组织内所有的AWS账户的资源被核算到统一的账单中并应用相关的阶梯价</li>
<li>所有已存在的整合账单家族将会被迁移到组织的账单模式中</li>
</ul>
<h3>Organization不同的管理级别</h3>
<p>您可以在创建新组织的时候选择不同的管理级别</p>
<p>1. 账单模式(Billing mode)</p>
<ul>
<li>和当前的整合账单模式向下兼容 (CB)</li>
<li>从整合账单家族中创建的的组织自动被设置为账单模式</li>
</ul>
<p>2. 完全控制模式(Full-control mode)</p>
<ul>
<li>账单模式中的所有功能</li>
<li>开启所有类型的OCP管理功能</li>
<li>从账单模式转换成完全控制模式需要得到组织中所有AWS账户同意</li>
</ul>
<h3>动手利用AWS Organizations来管理您的组织</h3>
<p>下面我就给大家演示一下，使用AWS Organizations服务如何能做到快速，方便，准确的来管理您的多个账户</p>
<p>1. 进入AWS Organizations服务</p>
<p>进入AWS Organizations服务的方式，可以通过在service上搜索的方式进入，或者通过在Account菜单下点击My Organization进入。在Service的下拉菜单中没有这项服务。</p>
<p>服务栏搜索：</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-6.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-6.png" alt="0122-6" width="2156" height="330" /></a></p>
<p>账号栏下拉：</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-7.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-7.png" alt="0122-7" width="483" height="266" /></a></p>
<p>2. 创建新的Organization</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-8.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-8.png" alt="0122-8" width="1666" height="606" /></a></p>
<p>在AWS Organizations服务界面上选择创建组织，选择希望创建的组织的种类，这里我演示时选择Full Control模式，如果希望仅进行账单整合(Consolidated Billing)，那么选择右边的“Enable Only Consolidated Billing”。无论是哪种模式，账单都会是整合的。区别只在于Master Account能不能对加入的账号进行控制</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-9.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-9.png" alt="0122-9" width="1114" height="864" /></a></p>
<p>注意：现在Consolidated Billing功能已经迁移到AWS Organization下了，如果点击主账号下的My Account-&gt; Consolidated Billing，可以看到该提示，并且点击View Linked accounts也是直接就会跳转到AWS Organization界面</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-10.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-10.png" alt="0122-10" width="1006" height="496" /></a></p>
<p>创建完毕之后，会出现组织架构管理界面，前面带星号的账号就是Master Account</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-11.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-11.png" alt="0122-11" width="1762" height="570" /></a></p>
<p>3. 添加新Account到Organization下</p>
<p>在创建完Organization之后，添加账号到Organization下有两种方式</p>
<ul>
<li>直接添加账户</li>
<li>邀请其他账户加入</li>
</ul>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-12.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-12.png" alt="0122-12" width="845" height="149" /></a></p>
<p>3.1 直接添加账户(Account)</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-13.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-13.png" alt="0122-13" width="740" height="203" /></a></p>
<p>填写你希望添加的账号的全名和邮箱，并分配一个IAM Role，这个IAM Role是用来给予这个新Account一个full administrative control的权限。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-14.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-14.png" alt="0122-14" width="933" height="298" /></a></p>
<p>大约等待几秒钟，Account即可创建。对比如果是要自己在AWS网页创建账号，速度上提升了非常多。不过创建时没有设置密码，需要用户登录时在控制台点击忘记密码来重置。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-15.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-15.png" alt="0122-15" width="906" height="144" /></a></p>
<p>在Global根账号控制台登录新创建的账号，因为不知道密码，所以需要点击忘记密码来重置。随后会在注册邮箱收到重置密码的链接，点击重置密码之后，重新登录即可。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-16.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-16.png" alt="0122-16" width="760" height="512" /></a></p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-17.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-17.png" alt="0122-17" width="746" height="360" /></a></p>
<p>登录账户之后，可以看到这个新账号已经可以工作，并且Consolidated Billing功能是默认开启的。并指示该账户已经在一个Organization下了。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-18.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-18.png" alt="0122-18" width="2506" height="660" /></a></p>
<p>3. 2 邀请其他账户(Account)加入</p>
<p>点击Invite account来邀请其他账号加入，添加账号号码或者邮箱，并点击邀请即可</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-19.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-19.png" alt="0122-19" width="786" height="332" /></a></p>
<p>在界面右侧，点击Invitations可以看到已经邀请的账号的信息</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-20.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-20.png" alt="0122-20" width="1293" height="279" /></a></p>
<p>此时在被邀请的账号的注册邮箱中会收到来自Master Account的邀请邮件，如果希望接受这个邀请加入Organization。那么可以选择点击邮件中的链接或者直接进入自己账号下的Organization界面接受也可以。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-21.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-21.png" alt="0122-21" width="434" height="157" /></a></p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-22.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-22.png" alt="0122-22" width="646" height="334" /></a></p>
<p>在Invitation界面中可以看见Organization的ID，邀请人的Account以及申请控制的类型，最后还有申请加入时的留言(Notes)</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-23.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-23.png" alt="0122-23" width="686" height="385" /></a></p>
<p>最后回到主账号下，可以看见包括Master Account，主动创建的Account以及受邀请加入的Account的信息</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-24.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-24.png" alt="0122-24" width="867" height="299" /></a></p>
<h3>从Organization删除Account</h3>
<p>有两种方式可以从Organization下面删除加入的Account：</p>
<p>1. Master Account主动从Organization删除Account，点击单个或多个Account，点击删除即可</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-25.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-25.png" alt="0122-25" width="953" height="361" /></a></p>
<p>2. 加入Organization的Account脱离Organization，在该Account下选择My Organization，可以看见其加入的Organization信息以及选择离开该Organization</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-26.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-26.png" alt="0122-26" width="951" height="326" /></a></p>
<h3>利用OU(Organization Unit)来管理多个Account</h3>
<p>开始时Organization下是没有任何OU的，需要用户自己手动去添加。每一级OU又可以添加自己下一级的OU，从而形成一个树状结构</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-27.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-27.png" alt="0122-27" width="612" height="338" /></a></p>
<p>你可以创建一个多级OU组织，包括一个根OU，两个一级OU和两个二级OU</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-28.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-28.png" alt="0122-28" width="927" height="287" /></a></p>
<p>所有的Account默认都在根OU下，你可以选择一个或者多个Account，并把他们移动到任意OU下。目前只能移动Account到OU，不能从OU主动加Account</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-29.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-29.png" alt="0122-29" width="723" height="547" /></a></p>
<p>针对不同的OU可以开启不同的Policy来控OU下面的Account，不过要开启这个feature，必须首先在Root OU下启动这个功能</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-30.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-30.png" alt="0122-30" width="1037" height="427" /></a></p>
<h3>利用Policy(Service Control Policy)来管理Account的行为</h3>
<p>在使用Policy开管理Account时，始终记住两个原则：</p>
<p>1. Policy是继承关系，并且可以随Account移动</p>
<ul>
<li>Policy是继承关系的，也就是说OU会继承organization的policy，而AWS Account会继承OU的policy</li>
<li>Account的Policy会跟随其移动，如果这个Account从一个OU移动到另一个OU，那么属于这个Account的Policy也会移动。但是它不会再接收之前OU的Policy，而是会接收新OU的Policy</li>
</ul>
<p>2. 最终Account下的User的行为是SCP和IAM Permission共同决定的</p>
<p>一定注意，允许最终用户行为的话，必须要SCP和IAM Permission同时拥有。下图所示，如果在SCP允许S3和EC2，但是在IAM Permission允许EC2和SQS。那么最终用户只能拥有EC2的权限</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-31.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-31.png" alt="0122-31" width="479" height="347" /></a></p>
<p>Service Control Policy在Policies下面可以进行设置，默认情况就有一个什么权限都有的FullAWSAccess Policy并且是attach到Root OU的。这也就意味着默认情况下，只有有Account加入这个Organization，那么这个Account就拥有操作所有AWS服务的权限。如果希望修改SCP，那么可以点击右侧的Policy editor进行修改</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-32.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-32.png" alt="0122-32" width="1232" height="320" /></a></p>
<p>SCP的格式和IAM Policy格式一致，但有下面两点不同。在修改完或创建完Policy之后，可以attach给任何OU或Account</p>
<ul>
<li>Resource必须是”*”</li>
<li>没有condition</li>
</ul>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-33.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-33.png" alt="0122-33" width="856" height="474" /></a></p>
<p>点击Policies界面下左上角的Create Policy可以从头创建一个SCP，你既可以选择使用Policy generator帮助你生成一个新的SCP，也可以从你已经创建的一个SCP中进行复制。在创建时，你可以选择白名单模式或者黑名单模式</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-34.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-34.png" alt="0122-34" width="892" height="562" /></a></p>
<p>这里我选择白名单模式，创建一个名为“SCP_Allow_access_VPC_subnet”的SCP，仅允许Account创建和查看VPC和Subnet，其余动作都禁止</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-35.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-35.png" alt="0122-35" width="768" height="375" /></a></p>
<p>将创建的SCP分配给OU，进而这个SCP会传递给下面添加的Account</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-36.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-36.png" alt="0122-36" width="1308" height="406" /></a></p>
<p>在SCP配置界面下，将原来的FullAWSAccess策略解除，添加新创建的“SCP_Allow_access_VPC_subnet”策略。这个时候问题就来了，因为这个Account会继承所在OU的SCP，而所在OU又会继承上层OU的SCP。所以其实目前来说，这个Phoenix Yao的Account是会拥有两个SCP，包括拥有所有权限的“FullAWSAccess”和限制权限的“SCP_Allow_access_VPC_subnet”</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-37.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-37.png" alt="0122-37" width="355" height="513" /></a></p>
<p>在这种情况下会怎么样呢？其实和IAM Policy一样，SCP只会允许最小权限，所以当你用Phoenix Yao账号打开VPC界面时，会发现你无法查看除了VPC和Subnet的任何信息。另外，注意一下，这个Policy生效有时候需要一些时间，不是马上能看到结果。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-38.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-38.png" alt="0122-38" width="1253" height="358" /></a></p>
<p>我们再来看下IAM policy和SCP一起作用的结果。使用Phoenix Yao这个root账号创建一个User，并赋予其除了查看Subnet其余动作都可以做的IAM Policy。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-39.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-39.png" alt="0122-39" width="417" height="279" /></a></p>
<p>将这个Policy绑定到新创建的IAM User的IAM Permission中</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-40.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-40.png" alt="0122-40" width="698" height="341" /></a></p>
<p>将SCP恢复成“FullAWSAccess”以单独测试IAM Permission是否生效，发现已经生效。</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-41.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-41.png" alt="0122-41" width="954" height="437" /></a></p>
<p>最后将SCP和IAM Permission一起使用。得到的结果应该是取最小权限，即只能查看VPC的情况</p>
<p><a href="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-42.png"><img class="attachment-medium" src="https://www.fuwuqiok.com/wp-content/uploads/2018/03/0122-42.png" alt="0122-42" width="974" height="471" /></a></p>
<p>使用AWS Organizations时的最佳实践</p>
<p>下面介绍一些在使用AWS Organizations服务时的最佳实践：</p>
<p>1. 使用CloudTrail服务监控Master Account的行为活动</p>
<p>2. 不要通过Master Account来管理资源</p>
<p>3. 在管理你的组织时要采用”最小权限分配”的原则</p>
<p>4. 使用OU来对账号进行权限的分配管理</p>
<p>5. 仅给Organizations的根账号(root)分配仅需要的权限</p>
<p>6. 在测试权限时先使用单个AWS Account来测试</p>
<p>7. 避免在一个组织中同时使用”白名单”策略和”黑名单”策略</p>
<p>8. 每创建一个新的AWS Account都需要有足够合理的原因</p>
<h3>给予Organization最小权限</h3>
<ul>
<li>对所有AWS组织行为设置相对应的IAM权限</li>
<li>您也可以把AWS组织相关的元素（组织，组织单元，AWS账户）作为IAM规则的资源进行管理</li>
<li>您可以把管理您组织的权限通过IAM role功能委托给一个在其他AWS账号中的IAM用户</li>
<li>所有的组织管理行为可以通过AWS CloudTrail服务记录</li>
</ul>
<p><a rel="nofollow" href="https://www.fuwuqiok.com/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/">AWS Organizations —— 管理众多账号</a>，首发于<a rel="nofollow" href="https://www.fuwuqiok.com">服务器安全维护工作室</a>。</p>
]]></content:encoded>
			<wfw:commentRss>https://www.fuwuqiok.com/aws-organizations-%e7%ae%a1%e7%90%86%e4%bc%97%e5%a4%9a%e8%b4%a6%e5%8f%b7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
