mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-22 16:43:35 +00:00
- 统一用户创建和admin创建API Key的逻辑 - 修复admin更新用户创建的API Key功能 - 用户创建API Key名称改为displayName - 默认无限制配置 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
54 lines
1.6 KiB
JavaScript
54 lines
1.6 KiB
JavaScript
const jwt = require('jsonwebtoken');
|
||
const config = require('./config/config');
|
||
const fetch = require('node-fetch');
|
||
|
||
// 模拟创建一个包含displayName的JWT token
|
||
const userInfo = {
|
||
type: 'ad_user',
|
||
username: 'zhangji',
|
||
displayName: '张佶',
|
||
email: 'zhangji@weidian.com',
|
||
groups: ['CN=Weidian-IT组,OU=Weidian Groups,OU=微店,DC=corp,DC=weidian-inc,DC=com'],
|
||
loginTime: new Date().toISOString()
|
||
};
|
||
|
||
const token = jwt.sign(userInfo, config.security.jwtSecret, {
|
||
expiresIn: '8h'
|
||
});
|
||
|
||
console.log('测试修正后的自动关联功能');
|
||
console.log('用户displayName: 张佶');
|
||
|
||
async function testFixedAutoLink() {
|
||
try {
|
||
console.log('\n=== 测试获取用户API Keys ===');
|
||
|
||
const response = await fetch('http://localhost:3000/admin/ldap/user/api-keys', {
|
||
headers: {
|
||
'Authorization': `Bearer ${token}`
|
||
}
|
||
});
|
||
|
||
const result = await response.json();
|
||
|
||
console.log('\n结果:', JSON.stringify(result, null, 2));
|
||
|
||
if (result.success && result.apiKeys && result.apiKeys.length > 0) {
|
||
console.log('\n✅ 成功!找到了关联的API Key:');
|
||
result.apiKeys.forEach(key => {
|
||
console.log(`- ID: ${key.id}`);
|
||
console.log(`- Name: ${key.name}`);
|
||
console.log(`- Key: ${key.key.substring(0, 10)}...${key.key.substring(key.key.length-10)}`);
|
||
console.log(`- Limit: ${key.limit}`);
|
||
console.log(`- Status: ${key.status}`);
|
||
});
|
||
} else {
|
||
console.log('\n❌ 没有找到关联的API Key');
|
||
}
|
||
|
||
} catch (error) {
|
||
console.error('测试错误:', error.message);
|
||
}
|
||
}
|
||
|
||
testFixedAutoLink(); |