移除旧版用户兼容
This commit is contained in:
+7
-51
@@ -267,32 +267,9 @@ async function getInitConfig(configFile: string, subConfig: {
|
||||
LiveConfig: [],
|
||||
};
|
||||
|
||||
// 补充用户信息
|
||||
let userNames: string[] = [];
|
||||
try {
|
||||
userNames = await db.getAllUsers();
|
||||
} catch (e) {
|
||||
console.error('获取用户列表失败:', e);
|
||||
}
|
||||
|
||||
// localStorage 模式下,只使用环境变量中的站长账号
|
||||
const storageType = process.env.NEXT_PUBLIC_STORAGE_TYPE || 'localstorage';
|
||||
if (storageType === 'localstorage') {
|
||||
userNames = [];
|
||||
}
|
||||
|
||||
const ownerUsername = process.env.USERNAME || 'default';
|
||||
const allUsers = userNames.filter((u) => u !== ownerUsername).map((u) => ({
|
||||
username: u,
|
||||
role: 'user',
|
||||
banned: false,
|
||||
}));
|
||||
allUsers.unshift({
|
||||
username: ownerUsername,
|
||||
role: 'owner',
|
||||
banned: false,
|
||||
});
|
||||
adminConfig.UserConfig.Users = allUsers as any;
|
||||
// 用户信息已迁移到新版数据库,不再填充 UserConfig.Users
|
||||
// 保持为空数组,避免与新版用户系统冲突
|
||||
adminConfig.UserConfig.Users = [];
|
||||
|
||||
// 从配置文件中补充源信息
|
||||
Object.entries(cfgFile.api_site || []).forEach(([key, site]) => {
|
||||
@@ -488,35 +465,14 @@ export function configSelfCheck(adminConfig: AdminConfig): AdminConfig {
|
||||
adminConfig.LiveConfig = [];
|
||||
}
|
||||
|
||||
// 站长变更自检
|
||||
// 用户信息已迁移到新版数据库
|
||||
// 这里只保留站长用户用于兼容性,其他用户从数据库读取
|
||||
const ownerUser = process.env.USERNAME;
|
||||
|
||||
// 去重
|
||||
const seenUsernames = new Set<string>();
|
||||
adminConfig.UserConfig.Users = adminConfig.UserConfig.Users.filter((user) => {
|
||||
if (seenUsernames.has(user.username)) {
|
||||
return false;
|
||||
}
|
||||
seenUsernames.add(user.username);
|
||||
return true;
|
||||
});
|
||||
// 过滤站长
|
||||
const originOwnerCfg = adminConfig.UserConfig.Users.find((u) => u.username === ownerUser);
|
||||
adminConfig.UserConfig.Users = adminConfig.UserConfig.Users.filter((user) => user.username !== ownerUser);
|
||||
// 其他用户不得拥有 owner 权限
|
||||
adminConfig.UserConfig.Users.forEach((user) => {
|
||||
if (user.role === 'owner') {
|
||||
user.role = 'user';
|
||||
}
|
||||
});
|
||||
// 重新添加回站长
|
||||
adminConfig.UserConfig.Users.unshift({
|
||||
adminConfig.UserConfig.Users = [{
|
||||
username: ownerUser!,
|
||||
role: 'owner',
|
||||
banned: false,
|
||||
enabledApis: originOwnerCfg?.enabledApis || undefined,
|
||||
tags: originOwnerCfg?.tags || undefined,
|
||||
});
|
||||
}];
|
||||
|
||||
// 采集源去重
|
||||
const seenSourceKeys = new Set<string>();
|
||||
|
||||
Reference in New Issue
Block a user