|
|
@ -25,5 +25,39 @@ |
|
|
|
- `KeyRotationDays`: 密钥轮换周期(天) |
|
|
|
- `MinKeyLength`: 最小密钥长度 |
|
|
|
|
|
|
|
## WebSocket 配置 |
|
|
|
- `Port`: WebSocket 服务端口 |
|
|
|
- `Path`: WebSocket 连接路径 |
|
|
|
|
|
|
|
## 认证配置 (Auth) |
|
|
|
- `MaxLoginAttempts`: 最大登录尝试次数 |
|
|
|
- `LoginAttemptsWindowMinutes`: 登录尝试窗口时间(分钟) |
|
|
|
- `LoginAttemptsCacheKeyFormat`: 登录尝试缓存键格式 |
|
|
|
- `DefaultUserRole`: 默认用户角色 |
|
|
|
- `AccessTokenExpirationMinutes`: 访问令牌过期时间(分钟) |
|
|
|
- `RefreshTokenExpirationDays`: 刷新令牌过期时间(天) |
|
|
|
|
|
|
|
## 其他配置 |
|
|
|
- `AllowedHosts`: 允许的主机 |
|
|
|
- `AllowedHosts`: 允许的主机 |
|
|
|
|
|
|
|
## 环境变量配置 |
|
|
|
以下环境变量可以在不同环境中覆盖配置文件中的设置: |
|
|
|
|
|
|
|
- `ASPNETCORE_ENVIRONMENT` - 设置运行环境(Development/Production) |
|
|
|
- `DatabaseOptions__DefaultConnection` - 数据库连接字符串 |
|
|
|
- `JwtOptions__SecretKey` - JWT密钥 |
|
|
|
- `WebSocket__Port` - WebSocket端口 |
|
|
|
- `Auth__MaxLoginAttempts` - 最大登录尝试次数 |
|
|
|
|
|
|
|
## 配置优先级 |
|
|
|
1. 环境变量 |
|
|
|
2. 命令行参数 |
|
|
|
3. 环境特定配置文件(appsettings.{Environment}.json) |
|
|
|
4. 基础配置文件(appsettings.json) |
|
|
|
|
|
|
|
## 安全注意事项 |
|
|
|
1. 生产环境中不要将敏感信息(如密钥、连接字符串)直接写入配置文件 |
|
|
|
2. 使用环境变量或安全的密钥管理服务来存储敏感信息 |
|
|
|
3. 确保配置文件不会被提交到版本控制系统 |
|
|
|
4. 定期轮换JWT密钥 |
|
|
|
5. 根据环境调整日志级别和敏感数据记录 |