支持设置linuxdo信任等级

This commit is contained in:
mtvpls
2025-12-26 16:57:08 +08:00
parent 0b37e663fe
commit df78abaf11
7 changed files with 54 additions and 2 deletions
+1
View File
@@ -213,6 +213,7 @@ export async function GET(request: NextRequest) {
sub: oidcSub,
email: userInfo.email,
name: userInfo.name,
trust_level: userInfo.trust_level, // 提取trust_level字段
timestamp: Date.now(),
};
@@ -102,6 +102,18 @@ export async function POST(request: NextRequest) {
);
}
// 检查最低信任等级
const minTrustLevel = siteConfig.OIDCMinTrustLevel || 0;
if (minTrustLevel > 0) {
const userTrustLevel = oidcSession.trust_level ?? 0;
if (userTrustLevel < minTrustLevel) {
return NextResponse.json(
{ error: `您的信任等级(${userTrustLevel})不满足最低要求(${minTrustLevel})` },
{ status: 403 }
);
}
}
// 检查是否与站长同名
if (username === process.env.USERNAME) {
return NextResponse.json(
@@ -35,6 +35,7 @@ export async function GET(request: NextRequest) {
return NextResponse.json({
email: oidcSession.email,
name: oidcSession.name,
trust_level: oidcSession.trust_level,
});
} catch (error) {
return NextResponse.json(