Files
CloudFlare-ImgBed/functions/utils/auth/dualAuth.js
T
MarSeventh 4d2796f54a refactor: unify auth logic into authCore with authScope parameter
- 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
2026-04-18 13:24:53 +08:00

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,
});
}