# SCP(Service control policies)示例策略

在云计算和网络安全领域，SCP通常指的是服务控制策略（Service Control Policies）。服务控制策略是一种用于管理云服务使用和访问权限的工具，特别是在多账户环境中。以下是SCP的一些关键点：

SCP 是一种组织策略，可用于管理您的组织权限，并控制主体的最大可用权限。SCP 允许对您的组织中所有账户的最大可用权限进行集中控制。配置为[拒绝列表](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_scps_strategies.html#orgs_policies_denylist)的 SCP可限制对您的组织或特定帐户内的资源或来源网络的访问范围。请务必注意，[SCP 不适用于](https://docs.amazonaws.cn/organizations/latest/userguide/orgs_manage_policies_scps.html#scp-effects-on-permissions)[服务关联角色](https://docs.amazonaws.cn/IAM/latest/UserGuide/using-service-linked-roles.html) (SLR) 或[ 亚马逊云服务主体](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services) 。

SCP 主要使用 aws:ResourceOrgId 条件来实现仅可信资源，使用 aws:SourceIp 、 aws:SourceVpc 和 aws:ViaAWSService 作为实现**仅预期网络**，以及管理策略中所需的例外情况的条件。有关更多详情，请参阅[数据边界策略示例存储库](https://github.com/aws-samples/data-perimeter-policy-examples)中的[服务控制策略](https://github.com/aws-samples/data-perimeter-policy-examples/tree/main/service_control_policies) 。

| name                                                                                                                                                                                                                                                                                                                                         | note                                                                                                 |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| [通过Service Control Policies(SCP)限制只能使用某个区域的AWS服务](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/tong-guo-service-control-policiesscp-xian-zhi-zhi-neng-shi-yong-mou-ge-qu-yu-de-aws-fu-wu) | 通过Service Control Policies(SCP)限制只能使用xx区域的AWS服务，**避免资源开错Region造成一些安全合规问题。**                          |
| [限制高危操作使用条件](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/xian-zhi-gao-wei-cao-zuo)                                                                                                       | 限制一些关键服务的使用，例如 关闭服务器，IAM管理，创建RDS，创建S3等等，因为这些资源需要给予极其小心和慎重的管理。可以仅允许安全团队使用的角色访问关键服务。                   |
| [tagging：阻止标记被修改，除非由授权委托人修改](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/tagging-zu-zhi-biao-ji-bei-xiu-gai-chu-fei-you-shou-quan-wei-tuo-ren-xiu-gai)                                   | 通过该策略可以阻止未授权人员修改标签，确保ABAC访问控制有效。                                                                     |
| [tagging：要求创建/运行某类资源时必须打了标签](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/tagging-yao-qiu-chuang-jian-yun-xing-mou-lei-zi-yuan-shi-bi-xu-da-le-biao-qian)                                 | 如果请求不包含指定的标签，以下 SCP 将阻止受影响账户中的 IAM 用户和角色创建特定资源类型。                                                    |
| [iam：阻止根用户的访问](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/iam-zu-zhi-gen-yong-hu-de-fang-wen)                                                                                           | 成员账户中也存在根用户，SCP可以限制成员账号中根用户的使用。最佳安全实践建议不要使用根用户，特权管理员拆分权限后使用。因此可以通过SCP 阻止您的账户使用根用户，除了特定条件下才可以。        |
| [ec2：防止在没有 IMDSv2 的情况下启动 EC2 实例](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/ec2-fang-zhi-zai-mei-you-imdsv2-ebs-wei-jia-mi-de-qing-kuang-xia-qi-dong-ec2-shi-li)                        | 使用IMDSv1版本的实例非常容易被攻击者获取到安全凭据也就是IAM的AKSK，因此为了避免严重的安全事件，建议所有的EC2实例都使用IMDSv2。                           |
| [RAM： 阻止外部共享](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/ram-zu-zhi-wai-bu-gong-xiang)                                                                                                  | SCP 阻止用户与组织外的 IAM 用户和角色进行资源共享。                                                                       |
| [S3：防止上传 Amazon S3 未加密对象](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/s3-fang-zhi-shang-chuan-amazon-s3-wei-jia-mi-dui-xiang)                                                            | 以下策略限制所有用户将未加密的对象上传到 S3 存储桶。                                                                         |
| [S3：关键S3存储桶保护](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/s3-guan-jian-s3-cun-chu-tong-bao-hu)                                                                                          | 禁止更改在生产账号/日志归档账号中的Amazon S3存储桶的安全配置，日志配置，存储桶策略等。                                                     |
| [S3：防止开放到公网](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/s3-fang-zhi-kai-fang-dao-gong-wang)                                                                                             | 防止修改S3的公开存储桶设置。                                                                                      |
| [安全日志管理涉及的安全控制](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/an-quan-ri-zhi-guan-li-she-ji-de-an-quan-kong-zhi)                                                                           | 防止日志存储配置变更，比如防止缩短日志保存时长，日志加密配置的误删除等。                                                                 |
| [安全产品管理涉及的安全控制](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/an-quan-chan-pin-guan-li-she-ji-de-an-quan-kong-zhi)                                                                         | 防止安全产品被非安全管理员修改                                                                                      |
| [阻止 IaC 已经支持的所有行动](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/zu-zhi-iac-yi-jing-zhi-chi-de-suo-you-xing-dong)                                                                          | 如果已经使用了基础架构即代码，那么自动流程执行的操作就不允许在控制台手动操作。因为在已有的流水线中，我们可以保证资源已采取安全加固措施并获得很好的保护。您一定不希望员工随意修改资源并将其置于风险之中。 |
| [拒绝生产账户使用 DisableKey 和 ScheduleKeyDeletion](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/ju-jue-sheng-chan-zhang-hu-shi-yong-disablekey-he-schedulekeydeletion)                           | 删除密钥是非常危险的行为，一旦删除，所有使用密码加密过的数据就无法恢复。因此建议限制仅允许指定角色可以做操作，并且在特定的条件下操作。                                  |
| [仅可信网络/预期网络](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/jin-ke-xin-wang-luo-yu-qi-wang-luo)                                                                                             | 设置SCP限制仅可信网络可以访问请求企业的AWS云上资源。                                                                        |
| [仅访问可信资源](https://aws-gcr-wwso-security.gitbook.io/an-quan-zui-jia-shi-jian/1.-iam-shen-fen-shi-bie-yu-fang-wen-kong-zhi/data-perimeters-shu-ju-fang-hu-bian-jie/scpservice-control-policies-shi-li-ce-le/jin-fang-wen-ke-xin-zi-yuan)                                                                                                       | 设置SCP限制仅允许访问组织内的资源，防止与不属于特定账户的资源进行交互。                                                                |

## 参考资料

\[AWS Docs] [Service control policy examples](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_examples.html)

\[workshop] [Data Perimeter Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/a11f0f32-cc23-4c95-b243-43c53bdc7177/en-US)

{% embed url="<https://github.com/aws-samples/data-perimeter-policy-examples/tree/main/service_control_policies>" %}
