文档首页/ 虚拟专用网络 VPN/ API参考/ 应用示例/ 示例六:创建用户和用户组
更新时间:2024-08-02 GMT+08:00
分享

示例六:创建用户和用户组

操作场景

本章节指导用户通过调用API来创建VPN用户和用户组。

前提条件

  • 已创建终端入云VPN网关。
  • 已创建VPN服务端,且服务端的认证方式为口令认证,具体参见创建服务端
  • 您需要确定调用API的Endpoint。
  • 当您使用Token认证方式完成认证鉴权时,需要获取用户Token并在调用接口时增加“X-Auth-Token”到业务接口请求消息头中。Token认证,具体操作请参考认证鉴权章节。

    通过IAM服务获取到的Token有效期为24小时,需要使用同一个Token鉴权时,可以先将Token缓存,避免频繁调用。

    用户和用户组相关API属于异步流程,配置后需要一段时间才会实际生效,如果连续短时间频繁操作用户或者用户组配置,可能会出现系统内部排队执行超限,返回错误:VPN.0030, The system is busy, please try later. 需要等待一段时间后再次调用。

数据准备

表1 创建用户组请求关键参数

参数

说明

取值样例

vpn_server_id

VPN服务端ID

0e325fb6-83b9-4004-a343-8b6fc714a5d9

表2 创建用户请求关键参数

参数

说明

取值样例

vpn_server_id

VPN服务端ID

0e325fb6-83b9-4004-a343-8b6fc714a5d9

操作步骤

  1. 创建用户组
    1. 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。
    2. 在Request Header中增加“X-Auth-Token”。
    3. 在Request Body中传入参数。
      {
        "user_group": {
          "name": "user-group1",
          "description": "用户组1"
        }
      }
    4. 查看请求响应结果。
      • 请求成功时,响应参数如下,id为创建的用户组ID
        {
            "user_group": {
                "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8"
            },
            "request_id": "94d271493e144135423e7377e40127cf"
        }
  2. 查询用户组
    1. 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}”,project_id为项目ID。{group_id}为已创建的用户组ID。
    2. 在Request Header中增加“X-Auth-Token”。
    3. 查看请求响应结果。
      {
          "user_group": {
              "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8",
              "name": "user-group1",
              "description": "用户组1",
              "type": "Custom",
              "user_number": 0,
              "created_at": "2024-06-17T09:48:27.548Z",
              "updated_at": "2024-06-17T09:48:27.548Z"
          },
          "request_id": "6735d32bb3e35e9154caba1dbc6c2dc6"
      }
  3. 创建用户
    1. 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。
    2. 在Request Header中增加“X-Auth-Token”。
    3. 在Request Body中传入参数。
      {
        "user": {
          "name": "user001",
          "password": "Qwerasdf",
          "description": "用户1",
          "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8"
        }
      }
    4. 查看请求响应结果。
      • 请求成功时,响应参数如下,id为创建的用户ID
        {
          "user": {
            "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d"
          },
          "request_id": "b19ba5a0be8f7b7f664b14596f8f35db"
        }
  4. 查询用户
    1. 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。{user_id}为已创建的用户ID。
    2. 在Request Header中增加“X-Auth-Token”。
    3. 查看请求响应结果。
      {
          "user": {
              "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d",
              "name": "user001",
              "description": "用户1",
              "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8",
              "user_group_name": "user-group1",
              "created_at": "2024-06-17T06:53:46.302Z",
              "updated_at": "2024-06-17T06:53:46.302Z"
          },
          "request_id": "926a0edb3bf432943e2399b700173add"
      }

相关文档