0.11.2: 旗舰版第三轮完善(通用聊天/企微钉钉飞书扫码登录/个人安全策略)
- 门户通用聊天:选择已批准模型直接对话,审批通过后自动开通用户级运行时 API Key(加密落库,限额取批准值),聊天经受管网关统一认证/限流/配额/审计; 会话哈希链完整性 + busy 租约防并发,失败不落库。 - 扫码登录:identity_providers 扩展 wecom/dingtalk/feishu,管理端配置 (AppID/AppSecret/AgentID/回调/自动开户/默认部门),登录页自动展示; one-time state 防 CSRF,provider_uid 全局唯一防多账号绑定,平台端点 固定公网 URL 复用 public-only 拨号。 - 个人安全策略:账号安全页(登录设备管理/吊销非当前会话/登录提醒开关/ 扫码绑定解绑),登录成功发布 security.login_detected 事件按偏好落站内信 (新增 security 类别),会话索引只存令牌摘要并惰性清理。 - 迁移 000038-000041;修复 social update 参数越界/凭据回读/路由挂载缺失; 全量测试 25 包通过,前端 admin/portal 构建通过,端到端验证完成。
This commit is contained in:
@@ -160,3 +160,50 @@ export function createSAMLProvider(data: SAMLProviderInput) {
|
||||
export function updateSAMLProvider(id: string, data: SAMLProviderInput) {
|
||||
return request.put<SAMLProviderRecord>({ url: `/api/v1/admin/saml-providers/${id}`, params: data })
|
||||
}
|
||||
|
||||
export interface SocialProviderRecord {
|
||||
id: string
|
||||
code: string
|
||||
kind: 'wecom' | 'dingtalk' | 'feishu'
|
||||
display_name: string
|
||||
client_id: string
|
||||
agent_id: string
|
||||
secret_configured: boolean
|
||||
redirect_uri: string
|
||||
portal_return_url: string
|
||||
auto_provision: boolean
|
||||
default_department_id?: string
|
||||
enabled: boolean
|
||||
revision: number
|
||||
created_at: string
|
||||
updated_at: string
|
||||
}
|
||||
|
||||
export interface SocialProviderInput {
|
||||
code: string
|
||||
display_name: string
|
||||
client_id: string
|
||||
agent_id?: string
|
||||
secret?: string
|
||||
redirect_uri: string
|
||||
portal_return_url: string
|
||||
auto_provision: boolean
|
||||
default_department_id?: string
|
||||
enabled: boolean
|
||||
}
|
||||
|
||||
export function fetchSocialProviders() {
|
||||
return request.get<SocialProviderRecord[]>({ url: '/api/v1/admin/social-providers' })
|
||||
}
|
||||
|
||||
export function createSocialProvider(kind: string, data: SocialProviderInput) {
|
||||
return request.post<SocialProviderRecord>({ url: '/api/v1/admin/social-providers', params: { kind }, data })
|
||||
}
|
||||
|
||||
export function updateSocialProvider(kind: string, data: SocialProviderInput) {
|
||||
return request.put<SocialProviderRecord>({ url: `/api/v1/admin/social-providers/${kind}`, params: data })
|
||||
}
|
||||
|
||||
export function deleteSocialProvider(kind: string) {
|
||||
return request.del({ url: `/api/v1/admin/social-providers/${kind}` })
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user