管理用户、角色和权限

适用于私有云的 Edge v4.18.05

Apigee 文档网站提供了有关管理用户角色和 权限。您可以使用 Edge 界面和 Management API 来管理用户;角色和 权限只能通过 Management API 进行管理。

如需了解用户和创建用户,请参阅:

您执行的许多用户管理操作都需要系统管理员 权限。在基于 Cloud 的 Edge 安装中,Apigee 扮演着系统角色 管理员。在私有云安装边缘中,您的系统管理员必须 执行这些任务,如下所述。

添加用户

您可以使用 Edge API、Edge 界面或 Edge 命令创建用户。这个 部分介绍了如何使用 Edge API 和 Edge 命令。有关如何在 Edge 界面,请参阅创建 全球用户

在组织中创建用户后,您必须为该用户分配角色。角色 确定用户在 Edge 上的访问权限。

使用以下命令通过 Edge API 创建用户:

curl -H "Content-Type:application/xml" \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
  -d '<User> \
    <FirstName>New</FirstName> \
    <LastName>User</LastName> \
    <Password>NEW_USER_PASSWORD</Password> \
    <EmailId>foo@bar.com</EmailId> \
  </User>'

或者使用以下 Edge 命令创建用户:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

configFile 创建用户的位置,如以下示例所示:

APIGEE_ADMINPW=SYS_ADMIN_PASSWORD    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="NEW_USER_PASSWORD"
ORG_NAME=myorg

然后,您可以使用此调用来查看用户的相关信息:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com

在 组织

新用户必须先获得组织中的角色,然后才能执行任何操作。您 可以为用户分配不同的角色,包括:orgadminbusinessuseropsadminuser 或组织中定义的自定义角色。

为用户分配组织中的角色后,系统会自动将该用户添加到 组织。通过将用户分配到各个组织中的角色,将用户分配到多个组织 组织。

使用以下命令为用户分配组织中的角色:

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

此调用会显示分配给用户的所有角色。如果您想添加用户,但 仅显示新角色,请使用以下调用:

curl -X POST -H "Content-Type: application/xml" \
  http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \
  -d '<Roles><Role name="role"/><Roles>' \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

您可以使用以下命令查看用户的角色:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles

要从组织中移除用户,请移除用户在相应组织中的所有角色。 使用以下命令移除用户的角色:

curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com

添加系统管理员

系统管理员可以执行以下操作:

  • 创建组织
  • 向 Edge 安装添加路由器、消息处理器和其他组件
  • 配置 TLS/SSL
  • 创建其他系统管理员
  • 执行所有 Edge 管理任务

虽然只有一个用户是执行管理任务的默认用户,但用户可能拥有不止一个用户 一名系统管理员任何隶属于“系统管理员”的用户角色已满 对所有资源的权限。

您可以在 Edge 界面或 API 中为系统管理员创建用户。不过, 您必须使用 Edge API 为用户分配“系统管理员”角色。将 将用户重定向到“系统管理员”角色无法在 Edge 界面中完成。

要添加系统管理员,请执行以下操作:

  1. 在 Edge 界面或 API 中创建用户。
  2. 将用户添加到“系统管理员”角色:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
  3. 确保新用户在“系统管理员”中角色:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

    返回用户的电子邮件地址:

    [ " foo@bar.com " ]
  4. 检查新用户的权限:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions

    返回:

    {
      "resourcePermission" : [ {
      "path" : "/",
        "permissions" : [ "get", "put", "delete" ]
      } ]
    }
  5. 添加新的系统管理员后,您可以将该用户添加到任何单位。
  6. 如果您日后想要移除用户的系统管理员角色,可以使用 以下 API:
    curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com

    请注意,此调用仅会从角色中移除用户,不会删除用户。

更改默认系统管理员 用户

安装 Edge 时,您需要指定系统管理员的电子邮件地址。边缘 使用该电子邮件地址创建用户,并将该用户设置为默认系统 管理员。以后,您可以如上文所述添加其他系统管理员。

本节介绍了如何将默认系统管理员更改为其他用户, 以及如何更改当前默认系统的用户账号电子邮件地址 管理员。

要查看当前配置为系统管理员的用户的列表,请使用以下 API 致电:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

要确定当前的默认系统管理员,请查看 /opt/apigee/customer/defaults.sh 文件。该文件包含以下行,显示了 当前默认系统管理员的电子邮件地址:

ADMIN_EMAIL=foo@bar.com

要将默认系统管理员更改为其他用户,请执行以下操作:

  1. 按照上述说明创建新的系统管理员,或确保 新的系统管理员已配置为系统管理员。
  2. /opt/apigee/customer/defaults.sh修改为 将 ADMIN_EMAIL 设置为新系统管理员的电子邮件地址。
  3. 修改用于安装 Edge 界面的静默配置文件,以设置以下内容 属性:
    ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL
    APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y

    请注意,您必须添加 SMTP 属性,因为用户界面上的所有属性 重置。

  4. 重新配置 Edge 界面:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui start

如果您只想更改当前默认 用户账号的电子邮件地址 系统管理员,请先更新用户账号以设置新的电子邮件地址,然后将 默认的系统管理员电子邮件地址:

  1. 使用新电子邮件地址更新当前默认系统管理员用户的用户账号 地址:
    curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \
      -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}'
  2. 重复前一过程的第 2 步、第 3 步和第 4 步, /opt/apigee/customer/defaults.sh 文件,并更新 Edge 界面。

指定系统的电子邮件域 管理员

您可以指定 Edge 系统所需的电子邮件网域,进一步提高安全性。 管理员。在添加系统管理员时,如果用户的电子邮件地址不在 指定网域,然后将用户添加到“系统管理员”角色失败。

默认情况下,所需的域名为空,表示您可以将任何电子邮件地址添加到 “系统管理员”角色。

如需设置电子邮件域名,请执行以下操作:

  1. 在编辑器中打开 management-server.properties 文件:
    vi /opt/apigee/customer/application/management-server.properties

    如果此文件不存在,请创建它。

  2. 设置 conf_security_rbac.global.roles.allowed.domains 属性添加到以逗号分隔的允许网域列表。例如:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. 保存更改。
  4. 重启边缘管理服务器:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    如果您现在尝试将用户添加到“系统管理员”角色以及用户的电子邮件地址 不属于任何指定网域,则添加失败。

删除用户

您可以使用 Edge API 或 Edge 界面创建用户。不过,您只能 使用 API 删除用户。

要查看当前用户列表,包括电子邮件地址,请使用以下 curl 命令:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users

使用以下 curl 命令删除用户:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL