
# 网络控制策略(NCP)
#### 操作场景
网络控制策略（Network Control Policy，NCP）是一种基于组织的护栏控制策略，核心用于管控VPC 终端节点（VPC EP）的访问权限边界。支持关联至组织、OU或成员账号。当NCP关联组织或组织单元（OU）时，其下所有成员账号通过VPC EP发起的访问，均需遵循该策略约束；关联单个成员账号时，仅对该账号的VPC EP访问生效。
#### 前提条件
获取组织ID：以组织管理员、管理账号或成员账号的身份登录[组织管理控制台](https://console.huaweicloud.com/organizations/?&locale=zh-cn#/home)，进入控制面板页，即可查看组织ID、组织的URN、管理账号名称及管理账号ID等信息。
![](https://support.huaweicloud.com/usermanual2-swr/zh-cn_image_0000002574864121.png)
#### 权限控制原理
- **逐层检查权限**
  如果要允许通过成员账号内VPC EP可访问的云服务操作，在从组织的Root到账号直接路径中的每个OU（包括目标账号本身），每个层级都必须有显示允许该操作。
  图1在Root、OU 和账号y 处附加 Allow 语句的组织结构示例   
  ![](https://support.huaweicloud.com/usermanual2-swr/zh-cn_image_0000002483968790.png)
  如果要拒绝特定账号获取权限，在从组织的Root到账号直接路径中的每个OU（包括目标账号本身），任何NCP都可以拒绝该权限。
  图2OU 中附加了 Deny 语句的组织结构示例及其对账号 y 的影响   
  ![](https://support.huaweicloud.com/usermanual2-swr/zh-cn_image_0000002516092631.png) 

- **默认允许**
  组织启用NCP时，默认会为所有OU和账号附加全部权限（NCPFullAccess策略），默认允许所有操作。除非您为OU或账号附加其他的明确拒绝策略。
  
 
#### 策略语法示例
**配置示例1：** **组织内的账号通过VPCEP只能下载组织内的私有镜像，可以下载任意公开镜像。**
下面策略的含义：通过该策略绑定的OU或账号下的vpcep下载镜像，不允许被组织外的账号下载，只能由组织(o-j1ftg6v1z9zldcg2o29ho0gvazswvia2)内的账号下载。
```
{
  "Version": "5.0",
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": [
        "swr:repository:downloadArtifact"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringNotEquals": {
          "g:ResourceOrgId": [
            "o-j1ftg6v1z9zldcg2o29ho0gvazswvia2"
          ]
        }
      }
    }
  ]
}
```
**配置示例2：** **组织内的账号通过VPCEP只能下载组织内的私有镜像，可以下载任意公开镜像。**
下面策略的含义：通过该策略绑定的OU或账号下的vpcep下载镜像，私有镜像不允许被组织外的账号下载，只能由组织(o-j1ftg6v1z9zldcg2o29ho0gvazswvia2)内的账号下载，公开镜像可以由任意账号下载。
```
{
  "Version": "5.0",
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": [
        "swr:repository:downloadArtifact"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "Bool": {
          "swr:RepositoryIsPublic": [
            "false"
          ]
        },
        "StringNotEquals": {
          "g:ResourceOrgId": [
            "o-j1ftg6v1z9zldcg2o29ho0gvazswvia2"
          ]
        }
      }
    }
  ]
}
```
![](https://support.huaweicloud.com/usermanual2-swr/public_sys-resources/note_3.0-zh-cn.png)
配置方法同[服务控制策略(SCP)](https://support.huaweicloud.com/usermanual2-swr/swr_02_0532.html)章节的配置方法。
#### 策略参数说明
表1策略参数说明 
| 参数                                                                                                              || 含义                                                                                                                                                                                            | 值                                                                                                                                                                                                                                                                                                           |
|:---|---|:---|:---|
| Version                                                                                                         || 身份策略的版本。                                                                                                                                                                                      | 固定为5.0，不支持修改：代表身份策略JSON语法的版本号。                                                                                                                                                                                                                                                                              |
| Statement： 身份策略的授权语句 | Sid：语句ID             | Sid（Statement ID）表示语句的可选标识符。                                                                                                                                                                  | 为一个由零个或多个字符组成的字符串。                                                                                                                                                                                                                                                                                          |
| Statement： 身份策略的授权语句 | Effect：作用            | 定义Action中的操作权限是否允许执行。                                                                                                                                                                         | 仅支持Deny：不允许执行。                                                                                                                                                                                                                                                                                              |
| Statement： 身份策略的授权语句 | Action/NotAction：授权项 | 操作权限。                                                                                                                                                                                         | 格式为"服务名:资源类型:操作"。授权项支持\*和?，\*表示任意个字符，?表示恰好一个字符。Action/NotAction不区分大小写。Action表示匹配列表中的所有授权项，NotAction表示匹配列表之外的所有授权项。 您可以打开[身份策略授权参考](https://support.huaweicloud.com/usermanual-permissions/iam_01_0003.html)，导航至云服务的"操作"小节，查看该服务所有授权项。 |
| Statement： 身份策略的授权语句 | Resource: 资源类型       | 身份策略所作用的资源。                                                                                                                                                                                   | 资源类型用资源URN表示，格式为"\<service-name\>:\<region\>:\<account-id\>:\<type-name\>:\<resource-path\>", 资源URN支持\*和?，\*表示任意个字符，?表示恰好一个字符。Resource不区分大小写。资源URN详情可参见[使用URN标识华为云资源](https://support.huaweicloud.com/usermanual-iam5/iam_01_1275.html)。                                                                    |
| Statement： 身份策略的授权语句 | Condition：条件         | 使身份策略生效的特定条件，包括[条件键](https://support.huaweicloud.com/usermanual-iam5/iam_01_1287.html)和[运算符](https://support.huaweicloud.com/usermanual-iam5/iam_01_1289.html#iam_01_1289__li13495143171719)。 | 格式为"运算符:{条件键：\[条件值1,条件值2\]}"。其中，条件键不区分大小写。 如果您设置多个条件，同时满足所有条件时，该身份策略才生效。                                                                                                                                                            |
   
#### 相关文档
[NCP原理介绍](https://support.huaweicloud.com/usermanual-organizations/org_03_2003.html)
[NCP语法介绍](https://support.huaweicloud.com/usermanual-organizations/org_03_2004.html)
[支持NCP的区域](https://support.huaweicloud.com/usermanual-organizations/org_03_2013.html)
