跳到主要内容

角色 API

基础路径: /api/v1/roles
认证: ✅ 所有接口需要 JWT Token
权限: ⚠️ 所有接口都需要 ADMIN 角色


POST /

创建角色

curl -X POST http://localhost:8080/api/v1/roles \
-H "Authorization: Bearer {admin_token}" \
-H "Content-Type: application/json" \
-d '{
"roleName": "编辑",
"roleKey": "EDITOR",
"description": "文章编辑权限"
}'

请求参数

字段类型必填说明
roleNameString角色名称
roleKeyString角色标识(大写字母)
descriptionString角色描述
statusInteger0=禁用, 1=启用(默认)

响应: 返回新角色 ID


GET /{id}

获取角色详情

curl -X GET http://localhost:8080/api/v1/roles/1 \
-H "Authorization: Bearer {admin_token}"

PUT /{id}

更新角色信息

curl -X PUT http://localhost:8080/api/v1/roles/3 \
-H "Authorization: Bearer {admin_token}" \
-H "Content-Type: application/json" \
-d '{"description": "文章编辑和审核权限"}'

DELETE /{id}

删除角色

curl -X DELETE http://localhost:8080/api/v1/roles/3 \
-H "Authorization: Bearer {admin_token}"
删除前检查

建议先禁用角色(status=0),确认无影响后再删除


POST /{roleId}/users/{userId}

为用户分配角色

curl -X POST http://localhost:8080/api/v1/roles/3/users/5 \
-H "Authorization: Bearer {admin_token}"

DELETE /{roleId}/users/{userId}

移除用户角色

curl -X DELETE http://localhost:8080/api/v1/roles/3/users/5 \
-H "Authorization: Bearer {admin_token}"

预定义角色

roleKey名称说明
ADMIN管理员系统管理员
USER普通用户默认角色
EDITOR编辑文章编辑权限

角色命名规范

  • 使用大写字母 + 下划线
  • 示例: ADMIN, CONTENT_EDITOR, COMMENT_MODERATOR
  • Spring Security 自动添加 ROLE_ 前缀