在数据开发过程中,部分对权限控制较为严格的用户要求RAM子账号仅能通过公司内某个特定IP进行登录。本文将为您介绍如何实现RAM子账号仅从特定本地IP登录DataWorks。

前提条件

您需要首先参见准备RAM子账号,创建RAM子账号,并且给子账号授权。权限AliyunDataWorksFullAccess为系统默认权限,无法修改,您需要额外创建一个自定义授权策略。

创建自定义策略

  1. 云账号登录RAM控制台
  2. 在左侧导航栏的权限管理菜单下,单击权限策略管理
  3. 单击新建权限策略
  4. 新建自定义权限策略对话框中,填写策略名称dataworksIPlimit1,勾选配置模式脚本配置,配置您的自定义权限。

    脚本配置

    自定义权限的完整内容如下所示,"acs:SourceIP"后填写的IP,即为您允许访问DataWorks的IP,本示例设置为100.1.1.1/32

    {
          "Version": "1",
          "Statement":
            [{
              "Effect": "Deny",
                "Action": ["dataworks:*"],
                "Resource": ["acs:dataworks:*:*:*"],
                "Condition":
                 {
                    "NotIpAddress":
                     {
                        "acs:SourceIp": "100.1.1.1/32"
                      }
                  }
             }]
    }
    说明
    • acs:SourceIP只能为一个IP或一个网段,不允许填写多个IP或网段。
    • 自定义权限配置项说明请参见Policy基本元素
  5. 单击确认

授权自定义策略给RAM用户

  1. 在左侧导航栏的人员管理菜单下,单击用户
  2. 用户登录名称/显示名称列表下,找到目标RAM用户。
  3. 单击添加权限,被授权主体会自动填入。
  4. 在左侧权限策略名称列表下,单击需要授予RAM用户的权限策略。
    说明 在右侧区域框,选择某条策略并单击×,可撤销该策略。
  5. 单击确定
  6. 单击完成

验证结果

使用不同于100.1.1.1/32的地址登录DataWorks控制台,发现登录失败。
登录失败