diff --git a/src/handlers/geminiHandlers.js b/src/handlers/geminiHandlers.js index 05e3fd25..7774b9c6 100644 --- a/src/handlers/geminiHandlers.js +++ b/src/handlers/geminiHandlers.js @@ -862,7 +862,7 @@ async function handleKeyInfo(req, res) { res.json({ id: keyData.id, name: keyData.name, - permissions: keyData.permissions || 'all', + permissions: keyData.permissions, token_limit: keyData.tokenLimit, tokens_used: keyData.usage.total.tokens, tokens_remaining: diff --git a/src/routes/apiStats.js b/src/routes/apiStats.js index 62614b65..1ebf9be3 100644 --- a/src/routes/apiStats.js +++ b/src/routes/apiStats.js @@ -155,7 +155,7 @@ router.post('/api/user-stats', async (req, res) => { restrictedModels, enableClientRestriction: keyData.enableClientRestriction === 'true', allowedClients, - permissions: keyData.permissions || 'all', + permissions: keyData.permissions, // 添加激活相关字段 expirationMode: keyData.expirationMode || 'fixed', isActivated: keyData.isActivated === 'true', diff --git a/src/routes/openaiClaudeRoutes.js b/src/routes/openaiClaudeRoutes.js index 200ef94e..7dd42279 100644 --- a/src/routes/openaiClaudeRoutes.js +++ b/src/routes/openaiClaudeRoutes.js @@ -20,8 +20,7 @@ const { getEffectiveModel } = require('../utils/modelHelper') // 🔧 辅助函数:检查 API Key 权限 function checkPermissions(apiKeyData, requiredPermission = 'claude') { - const permissions = apiKeyData.permissions || 'all' - return permissions === 'all' || permissions === requiredPermission + return apiKeyService.hasPermission(apiKeyData?.permissions, requiredPermission) } function queueRateLimitUpdate(rateLimitInfo, usageSummary, model, context = '') { diff --git a/src/routes/openaiRoutes.js b/src/routes/openaiRoutes.js index 7f1b04f1..b222c1c5 100644 --- a/src/routes/openaiRoutes.js +++ b/src/routes/openaiRoutes.js @@ -904,7 +904,7 @@ router.get('/key-info', authenticateApiKey, async (req, res) => { id: keyData.id, name: keyData.name, description: keyData.description, - permissions: keyData.permissions || 'all', + permissions: keyData.permissions, token_limit: keyData.tokenLimit, tokens_used: keyData.usage.total.tokens, tokens_remaining: