feat(auth): add AUXILIARY_AUTH_ENABLE for user authentication

This commit is contained in:
InfinityPacer
2024-09-12 21:12:10 +08:00
parent 9a62feb9a9
commit 1ebec13afb
3 changed files with 6 additions and 2 deletions

View File

@@ -38,8 +38,8 @@ async def login_access_token(
otp_password=otp_password
)
if not success:
# 认证不成功
if not user:
# 认证不成功且开启了辅助认证
if not user and settings.AUXILIARY_AUTH_ENABLE:
# 未找到用户,请求协助认证
logger.warn(f"登录用户 {form_data.username} 本地不存在,尝试辅助认证 ...")
token = UserChain().user_authenticate(form_data.username, form_data.password)

View File

@@ -60,6 +60,8 @@ class Settings(BaseSettings):
CONFIG_DIR: Optional[str] = None
# 超级管理员
SUPERUSER: str = "admin"
# 辅助认证,允许通过媒体服务器认证并创建用户
AUXILIARY_AUTH_ENABLE: bool = True
# API密钥需要更换
API_TOKEN: str = "moviepilot"
# 网络代理 IP:PORT

View File

@@ -17,6 +17,8 @@ DB_MAX_OVERFLOW=5
DB_TIMEOUT=60
# 【*】超级管理员,设置后一但重启将固化到数据库中,修改将无效(初始化超级管理员密码仅会生成一次,请在日志中查看并自行登录系统修改)
SUPERUSER=admin
# 辅助认证,允许通过媒体服务器认证并创建用户
AUXILIARY_AUTH_ENABLE=false
# 大内存模式,开启后会增加缓存数量,但会占用更多内存
BIG_MEMORY_MODE=false
# 是否启用DOH域名解析启用后对于api.themovie.org等域名通过DOH解析避免域名DNS被污染