From 6acf26966fc2d56b6c49d4c52ef4e51cd53befc1 Mon Sep 17 00:00:00 2001
From: Gavan <994259213@qq.com>
Date: Tue, 15 Jul 2025 11:10:14 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E5=85=81=E8=AE=B8?=
=?UTF-8?q?=E6=88=90=E5=91=98=E8=87=AA=E4=B8=BB=E6=B3=A8=E5=86=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ui/src/api/types.ts | 46 +++++++++++++++++--
ui/src/pages/user-management/index.tsx | 9 ++++
ui/src/pages/user-management/loginHistory.tsx | 2 +-
3 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/ui/src/api/types.ts b/ui/src/api/types.ts
index 7b73905..34adf65 100644
--- a/ui/src/api/types.ts
+++ b/ui/src/api/types.ts
@@ -190,7 +190,7 @@ export interface DomainCustomOAuth {
access_token_url?: string;
/** 自定义OAuth授权URL */
authorize_url?: string;
- /** 用户信息回包中的头像URL字段名` */
+ /** 用户信息回包中的头像URL字段名 */
avatar_field?: string;
/** 自定义客户端ID */
client_id?: string;
@@ -202,7 +202,32 @@ export interface DomainCustomOAuth {
enable?: boolean;
/** 用户信息回包中的ID字段名 */
id_field?: string;
- /** 用户信息回包中的用户名字段名` */
+ /** 用户信息回包中的用户名字段名 */
+ name_field?: string;
+ /** 自定义OAuth Scope列表 */
+ scopes?: string[];
+ /** 自定义OAuth用户信息URL */
+ userinfo_url?: string;
+}
+
+export interface DomainCustomOAuthReq {
+ /** 自定义OAuth访问令牌URL */
+ access_token_url?: string;
+ /** 自定义OAuth授权URL */
+ authorize_url?: string;
+ /** 用户信息回包中的头像URL字段名 */
+ avatar_field?: string;
+ /** 自定义客户端ID */
+ client_id?: string;
+ /** 自定义客户端密钥 */
+ client_secret?: string;
+ /** 用户信息回包中的邮箱字段名 */
+ email_field?: string;
+ /** 自定义OAuth开关 */
+ enable?: boolean;
+ /** 用户信息回包中的ID字段名 */
+ id_field?: string;
+ /** 用户信息回包中的用户名字段名 */
name_field?: string;
/** 自定义OAuth Scope列表 */
scopes?: string[];
@@ -219,6 +244,15 @@ export interface DomainDingtalkOAuth {
enable?: boolean;
}
+export interface DomainDingtalkOAuthReq {
+ /** 钉钉客户端ID */
+ client_id?: string;
+ /** 钉钉客户端密钥 */
+ client_secret?: string;
+ /** 钉钉OAuth开关 */
+ enable?: boolean;
+}
+
export interface DomainIPInfo {
/** ASN */
asn?: string;
@@ -397,6 +431,8 @@ export interface DomainSetting {
dingtalk_oauth?: DomainDingtalkOAuth;
/** 是否禁用密码登录 */
disable_password_login?: boolean;
+ /** 是否开启自动登录 */
+ enable_auto_login?: boolean;
/** 是否开启SSO */
enable_sso?: boolean;
/** 是否强制两步验证 */
@@ -484,11 +520,13 @@ export interface DomainUpdateModelReq {
export interface DomainUpdateSettingReq {
/** 自定义OAuth配置 */
- custom_oauth?: DomainCustomOAuth;
+ custom_oauth?: DomainCustomOAuthReq;
/** 钉钉OAuth配置 */
- dingtalk_oauth?: DomainDingtalkOAuth;
+ dingtalk_oauth?: DomainDingtalkOAuthReq;
/** 是否禁用密码登录 */
disable_password_login?: boolean;
+ /** 是否开启自动登录 */
+ enable_auto_login?: boolean;
/** 是否开启SSO */
enable_sso?: boolean;
/** 是否强制两步验证 */
diff --git a/ui/src/pages/user-management/index.tsx b/ui/src/pages/user-management/index.tsx
index b5db601..ba1b1a0 100644
--- a/ui/src/pages/user-management/index.tsx
+++ b/ui/src/pages/user-management/index.tsx
@@ -110,6 +110,15 @@ const User = () => {
配置
+
+ 允许成员自主注册
+
+ updateSetting({ enable_auto_login: e.target.checked })
+ }
+ />
+
diff --git a/ui/src/pages/user-management/loginHistory.tsx b/ui/src/pages/user-management/loginHistory.tsx
index ef67063..0468865 100644
--- a/ui/src/pages/user-management/loginHistory.tsx
+++ b/ui/src/pages/user-management/loginHistory.tsx
@@ -61,7 +61,7 @@ const LoginHistory = () => {
},
];
return (
-
+