user


URI

<users_uri>/{userName}[.<format>]

支持的方法

GETPUTDELETEHEAD

父资源

users

介绍

user 资源为具体的用户资源,通过 user 资源您不仅可以获取、修改用户的配置信息,还可以直接删除该用户。

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。

http://supermapiserver:8090/iserver/manager/security/users/{userName}.rjson

GET 请求

获取用户的配置信息。

响应结构

对 user 资源执行 GET 请求,返回指定用户的配置信息,由以下几个字段组成:

字段 类型 说明
description String 用户描述信息。
email String 用户的邮箱地址。
name String 用户名称。
ownRoles String[] 用户自己的角色,不包括所属用户组关联的角色。
password String 用户密码。密码要求至少包含大、小写字母、数字或特殊字符中的三种。
roles String[] 用户关联角色。
userGroups String[] 用户隶属的用户组。
isLocked boolean 用户是否被锁定,默认值为:false,未被锁定。
passwordLastModified Date 用户上一次修改密码的时间。
expirationTime Long 用户账号的过期时间。

响应示例

对 user 资源 http://localhost:8090/iserver/manager/security/users/guest1.rjson 执行 GET 请求,返回 rjson 格式的资源表述如下:

{

    "userGroups": [],

    "password": "$shiro1$SHA-256$500000$oQBDj9fO4UhhIcV824Wmag==$NjV9XPQ57E+Rr9glmsK1VtbP2MPQf1q60La0Pc2ryNU=",

    "ownRoles": [

        "PUBLISHER"

    ],

    "expirationTime": 1618588799000,

    "isLocked": true,

    "roles": [

        "PUBLISHER"

    ],

    "name": "guest",

    "description": "",

    "passwordLastModified": {

        "date": 15,

        "hours": 18,

        "seconds": 29,

        "month": 3,

        "year": 121,

        "minutes": 45,

        "time": 1618483529917

    },

    "email": null

}

PUT 请求

修改用户的配置信息。

请求参数

发送请求时,需要在请求体中包含如下参数。其中,用户名不可更改,其他参数都为可选参数。

名称 类型 含义
name String 用户名称。
password String 用户密码。密码要求6-18位, 至少包含大、小写字母、数字或特殊字符中的三种。
description String 用户描述信息。
roles String[] 用户关联角色。
userGroups String[] 用户隶属的用户组。
expirationTime Long 用户账号的过期时间。
isLocked boolean 用户是否被锁定,默认值为:false,未被锁定。

响应结构

执行 PUT 请求后,返回的资源表述结构如下:

字段 类型 说明

succeed

boolean 是否成功修改指定用户的配置信息。

响应示例

对 user 资源 http://localhost:8090/iserver/manager/security/users/guest1.rjson 执行 PUT 请求,可以修改与该用户相关的配置信息。修改用户密码和描述信息时,发送的请求体如下:

{

    "name": "guest",

    "password": "Super123.",

    "description": "匿名用户",

    "roles": [

        "PUBLISHER"

    ],

    "userGroups": [],

    "expirationTime": 1618588799000

}

返回的 rjson 格式响应结果如下:

{

    "succeed": true

}

DELETE 请求

删除用户。

响应结构

执行 DELETE 请求后,返回的资源表述结构如下:

字段 类型 说明

succeed

boolean 是否成功删除用户。

响应示例

对 user 资源 http://localhost:8090/iserver/manager/security/users/guest1.rjson 执行 DELETE 请求,可以删除由用户名指定的用户,返回的 rjson 格式响应结果如下:

{

    "succeed": true

}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 user 资源是否存在,或者客户端是否有权限访问 user 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 user 资源是否支持<format>格式的表述。

请参见