角色 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": "文章编辑权限"
}'
请求参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| roleName | String | ✅ | 角色名称 |
| roleKey | String | ✅ | 角色标识(大写字母) |
| description | String | ❌ | 角色描述 |
| status | Integer | ❌ | 0=禁用, 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_前缀