142 lines
2.9 KiB
Markdown
142 lines
2.9 KiB
Markdown
---
|
|
sidebar_position: 4
|
|
title: 重新加载权限配置接口
|
|
description: ZHub 权限配置重新加载接口
|
|
---
|
|
|
|
# 重新加载权限配置接口
|
|
|
|
## 接口说明
|
|
|
|
- **路径**: `GET /auth/reload`
|
|
- **功能**: 重新加载 `auth.yml` 权限配置文件
|
|
- **用途**: 修改权限配置后无需重启服务即可生效
|
|
|
|
## 使用示例
|
|
|
|
```bash
|
|
# 重新加载权限配置
|
|
curl http://127.0.0.1:711/auth/reload
|
|
```
|
|
|
|
## 使用场景
|
|
|
|
- 修改了 `auth.yml` 文件中的权限配置
|
|
- 添加或删除了用户权限
|
|
- 修改了连接授权规则
|
|
- 更新了角色权限设置
|
|
|
|
## 操作步骤
|
|
|
|
1. **修改配置**: 编辑 `auth.yml` 配置文件
|
|
2. **执行重载**: 调用 `/auth/reload` 接口
|
|
3. **验证生效**: 新的权限配置立即生效
|
|
|
|
## 权限配置文件
|
|
|
|
### auth.yml 结构
|
|
|
|
权限配置存储在 `auth.yml` 文件中,主要包含以下配置:
|
|
|
|
```yaml
|
|
# 用户权限配置
|
|
users:
|
|
- username: admin
|
|
password: admin123
|
|
roles: [admin]
|
|
|
|
- username: user1
|
|
password: user123
|
|
roles: [user]
|
|
|
|
# 角色权限配置
|
|
roles:
|
|
admin:
|
|
permissions:
|
|
- "topic:read"
|
|
- "topic:write"
|
|
- "admin:*"
|
|
|
|
user:
|
|
permissions:
|
|
- "topic:read"
|
|
|
|
# 连接授权规则
|
|
connection_rules:
|
|
- pattern: "admin.*"
|
|
required_roles: [admin]
|
|
|
|
- pattern: "user.*"
|
|
required_roles: [user]
|
|
```
|
|
|
|
### 配置示例
|
|
|
|
```yaml
|
|
# 添加新用户
|
|
users:
|
|
- username: newuser
|
|
password: newpass123
|
|
roles: [operator]
|
|
|
|
# 添加新角色
|
|
roles:
|
|
operator:
|
|
permissions:
|
|
- "topic:read"
|
|
- "topic:write"
|
|
- "monitor:*"
|
|
```
|
|
|
|
## 应用场景
|
|
|
|
1. **用户管理**: 添加或删除系统用户
|
|
2. **权限调整**: 修改用户或角色的权限设置
|
|
3. **安全策略**: 更新连接授权规则
|
|
4. **临时权限**: 为特定操作临时调整权限
|
|
|
|
## 权限类型
|
|
|
|
### 主题权限
|
|
|
|
- `topic:read`: 读取主题消息权限
|
|
- `topic:write`: 发布主题消息权限
|
|
- `topic:subscribe`: 订阅主题权限
|
|
|
|
### 管理权限
|
|
|
|
- `admin:*`: 所有管理权限
|
|
- `admin:config`: 配置管理权限
|
|
- `admin:monitor`: 监控管理权限
|
|
|
|
### 系统权限
|
|
|
|
- `system:*`: 系统级权限
|
|
- `system:shutdown`: 系统关闭权限
|
|
- `system:restart`: 系统重启权限
|
|
|
|
## 注意事项
|
|
|
|
:::warning 安全提醒
|
|
- 权限配置重载会立即生效,请谨慎操作
|
|
- 建议在非业务高峰期执行重载操作
|
|
- 重载前请备份当前的权限配置
|
|
- 确保不会意外撤销重要权限
|
|
:::
|
|
|
|
## 错误处理
|
|
|
|
如果重载过程中出现错误:
|
|
|
|
1. **配置检查**: 验证 `auth.yml` 文件格式是否正确
|
|
2. **权限验证**: 确保配置的权限和角色有效
|
|
3. **日志查看**: 检查服务日志中的错误信息
|
|
4. **配置恢复**: 如有必要,恢复之前的配置文件
|
|
|
|
## 安全建议
|
|
|
|
1. **定期审核**: 定期审核用户权限配置
|
|
2. **最小权限**: 遵循最小权限原则
|
|
3. **密码策略**: 使用强密码策略
|
|
4. **访问日志**: 记录权限相关的访问日志
|