Skip to content

user manage

qifeng dai edited this page Jun 13, 2017 · 19 revisions

1.新增用户

说明:"系统管理员" 才有权限增加用户。代理用户列表支持 "*",来匹配所有用户。注意,代理用户不能为 root 等用户,具体可以参见配置 common/base_config.properties 中的 prohibit.user.list

POST  /users/:name
Parameters: email={email}&desc={desc}&password={password}&phone={phone}&proxyUsers={proxyUsers}

Response:
Status: 201 Created
{
  "name": "bdi_user",
  "email": "[email protected]",
  "desc": "bdi 用户",
  "phone": "22222222",
  "proxyUsers": ["hadoop","bdi"],
  "createTime": 1468391778000,
  "modifyTime": 1468391778000
}

请求说明:

参数 类型 是否必选 描述 说明
email string 用户邮箱 邮箱会进行校验
desc string 用户描述 描述信息,长度限制为 [0,256]
password string 登陆密码, 长度限制为 [2,20]
phone string 用户电话号码,长度限制为 [0,18]
proxyUsers jsonArray 代理执行用户列表,支持 * 用于全匹配, 有 * 的时候,不应该出现其它用户

2.修改用户

说明:"系统管理员和用户自己" 有权限修改用户信息,另外用户自己无权限修改 proxyUsers 信息, 注意修改是部分修改,传什么修改什么。

PATCH	 /users/:name
Parameters: email={email}&desc={desc}&password={password}&phone={phone}&proxyUsers={proxyUsers}

Response:
Status: 200 OK

请求说明:所有参数都是可选的。

返回同上。

3.删除用户

说明:"系统管理员" 才有权限删除用户信息,必须保证用户没有参与到任何的项目开发中,才能删除。

DELETE /users/:name

Response:
Status: 200 OK

4.查询用户

说明:"系统管理员" 有权限查询所有用户信息,用户可以查看自己的用户信息。

GET  /users
Parameters: allUser=true

Response:
Status: 200 OK
[
  {
    "name": "bdi_user",
    "email": "[email protected]",
    "phone": "13876544222",
    "proxyUsers": ["hadoop","bdi"],
    "createTime": 1468391778000, 
    "modifyTime": 1468391778000
  }
]

请求说明:

参数 类型 是否必选 描述 说明
allUser bool 是否查询所有用户 默认为 false,只有当是管理员的时候,传 true 有效

5.用户认证

说明:登陆才能认证。

POST/GET  /login
Parameters: name={name}&email={email}&password={password}

Response:
Status: 201 Created
{
  "user": {
    "name": "bdi_user",
    "desc": "bdi 用户",
    "email": "[email protected]",
    "phone": "22222222",
    "proxyUsers": ["hadoop","bdi"],
    "createTime": 1468391778000,
    "modifyTime": 1468391778000
  },
  "sessionId": "the session id"
}

请求说明:

参数 类型 是否必选 描述 说明
name string 用户名称 用户名和邮箱必须至少出现一个
email string 用户邮箱 用户名和邮箱必须至少出现一个
password string 登录密码

返回说明:

参数 类型 是否必选 描述 说明
user jsonObject 返回当前登录用户序列化以后的 user 实体
sessionId string 返回当前登录分配的 sessionId
Clone this wiki locally