mirror of
https://github.com/ZSCGR/CloudFlare-ImgBed.git
synced 2026-08-21 08:03:44 +08:00
- Extract shared authentication logic into utils/auth/authCore.js - Replace enableBasicAuth/enableAuthCode flags with clear authScope enum (ADMIN/USER/EITHER) - Move all auth-related files into utils/auth/ subdirectory - Eliminate duplicated admin auth logic between _middleware.js and dualAuth.js - Fix: user session no longer grants access to admin-only endpoints - Fix: dualAuth no longer bypasses authCode when admin is not configured - Update all 17 import references across the codebase - Preserve original function signatures (userAuthCheck, dualAuthCheck) for zero caller changes
24 lines
636 B
JavaScript
24 lines
636 B
JavaScript
/**
|
|
* 双重鉴权工具
|
|
* 基于统一认证核心,管理端和用户端认证一次完成
|
|
*/
|
|
|
|
import { authenticate, AUTH_SCOPE } from './authCore.js';
|
|
|
|
/**
|
|
* 双重鉴权检查:管理端或用户端任意一个通过即可
|
|
* @param {Object} env - 环境变量
|
|
* @param {URL} url - 请求的URL
|
|
* @param {Request} request - 请求对象
|
|
* @returns {Promise<{authorized: boolean, authType: string|null}>}
|
|
*/
|
|
export async function dualAuthCheck(env, url, request) {
|
|
return await authenticate({
|
|
env,
|
|
request,
|
|
url,
|
|
requiredPermission: null,
|
|
authScope: AUTH_SCOPE.EITHER,
|
|
});
|
|
}
|