update
This commit is contained in:
@@ -206,6 +206,7 @@ export const verifyPasskeyAuthenticationHandler = async (req: Request, res: Resp
|
||||
reason: 'Verification failed',
|
||||
ip: clientIp
|
||||
});
|
||||
notificationService.sendNotification('PASSKEY_AUTH_FAILURE', { credentialId: authenticationResponseJSON?.id || 'unknown', reason: 'Verification failed', ip: clientIp });
|
||||
res.status(401).json({ verified: false, message: 'Passkey 认证失败。' });
|
||||
}
|
||||
} catch (error: any) {
|
||||
@@ -216,6 +217,7 @@ export const verifyPasskeyAuthenticationHandler = async (req: Request, res: Resp
|
||||
reason: error.message,
|
||||
ip: clientIp
|
||||
});
|
||||
notificationService.sendNotification('PASSKEY_AUTH_FAILURE', { credentialId: authenticationResponseJSON?.id || 'unknown', reason: error.message, ip: clientIp });
|
||||
res.status(500).json({ verified: false, message: '验证 Passkey 认证失败。', error: error.message });
|
||||
}
|
||||
};
|
||||
|
||||
@@ -268,16 +268,19 @@ const canTestUnsaved = computed(() => {
|
||||
|
||||
// Define all possible events (aligned with AuditLogView's allActionTypes)
|
||||
const allNotificationEvents: NotificationEvent[] = [
|
||||
'LOGIN_SUCCESS', 'LOGIN_FAILURE', 'LOGOUT', 'PASSWORD_CHANGED', // Added LOGOUT, PASSWORD_CHANGED
|
||||
'2FA_ENABLED', '2FA_DISABLED', // Added 2FA,
|
||||
'LOGIN_SUCCESS', 'LOGIN_FAILURE', 'LOGOUT', 'PASSWORD_CHANGED',
|
||||
'2FA_ENABLED', '2FA_DISABLED',
|
||||
// Passkey Events
|
||||
'PASSKEY_AUTH_SUCCESS',
|
||||
'PASSKEY_AUTH_FAILURE',
|
||||
'CONNECTION_CREATED', 'CONNECTION_UPDATED', 'CONNECTION_DELETED',
|
||||
'PROXY_CREATED', 'PROXY_UPDATED', 'PROXY_DELETED', // Changed _ADDED
|
||||
'TAG_CREATED', 'TAG_UPDATED', 'TAG_DELETED', // Changed _ADDED
|
||||
'SETTINGS_UPDATED', 'IP_WHITELIST_UPDATED', // Added IP_WHITELIST_UPDATED
|
||||
'NOTIFICATION_SETTING_CREATED', 'NOTIFICATION_SETTING_UPDATED', 'NOTIFICATION_SETTING_DELETED', // Added NOTIFICATION types
|
||||
'SSH_CONNECT_SUCCESS', 'SSH_CONNECT_FAILURE', 'SSH_SHELL_FAILURE', // Added SSH types
|
||||
'DATABASE_MIGRATION', 'ADMIN_SETUP_COMPLETE'
|
||||
// Removed IP_BLACKLISTED as it's not in the Audit Log list source
|
||||
'PROXY_CREATED', 'PROXY_UPDATED', 'PROXY_DELETED',
|
||||
'TAG_CREATED', 'TAG_UPDATED', 'TAG_DELETED',
|
||||
'SETTINGS_UPDATED', 'IP_WHITELIST_UPDATED', 'IP_BLOCKED', // Added IP_BLOCKED as it's in backend types
|
||||
'NOTIFICATION_SETTING_CREATED', 'NOTIFICATION_SETTING_UPDATED', 'NOTIFICATION_SETTING_DELETED',
|
||||
'SSH_CONNECT_SUCCESS', 'SSH_CONNECT_FAILURE', 'SSH_SHELL_FAILURE',
|
||||
'DATABASE_MIGRATION', 'ADMIN_SETUP_COMPLETE'
|
||||
// Removed IP_BLACKLISTED as it's not in the Audit Log list source, but IP_BLOCKED is present in backend types
|
||||
];
|
||||
|
||||
// Reactive form data structure
|
||||
|
||||
@@ -611,6 +611,10 @@
|
||||
"PASSWORD_CHANGED": "Password Changed",
|
||||
"2FA_ENABLED": "2FA Enabled",
|
||||
"2FA_DISABLED": "2FA Disabled",
|
||||
"PASSKEY_REGISTERED": "Passkey Registered",
|
||||
"PASSKEY_AUTH_SUCCESS": "Passkey Authentication Successful",
|
||||
"PASSKEY_AUTH_FAILURE": "Passkey Authentication Failed",
|
||||
"PASSKEY_DELETED": "Passkey Deleted",
|
||||
"CONNECTION_CREATED": "Connection Created",
|
||||
"CONNECTION_UPDATED": "Connection Updated",
|
||||
"CONNECTION_DELETED": "Connection Deleted",
|
||||
@@ -622,6 +626,7 @@
|
||||
"TAG_DELETED": "Tag Deleted",
|
||||
"SETTINGS_UPDATED": "Settings Updated",
|
||||
"IP_WHITELIST_UPDATED": "IP Whitelist Updated",
|
||||
"IP_BLOCKED": "IP Blocked",
|
||||
"NOTIFICATION_SETTING_CREATED": "Notification Setting Created",
|
||||
"NOTIFICATION_SETTING_UPDATED": "Notification Setting Updated",
|
||||
"NOTIFICATION_SETTING_DELETED": "Notification Setting Deleted",
|
||||
|
||||
@@ -758,6 +758,10 @@
|
||||
"events": {
|
||||
"2FA_DISABLED": "2段階認証無効",
|
||||
"2FA_ENABLED": "2段階認証有効",
|
||||
"PASSKEY_REGISTERED": "パスキー登録済み",
|
||||
"PASSKEY_AUTH_SUCCESS": "パスキー認証成功",
|
||||
"PASSKEY_AUTH_FAILURE": "パスキー認証失敗",
|
||||
"PASSKEY_DELETED": "パスキー削除済み",
|
||||
"ADMIN_SETUP_COMPLETE": "初期管理者設定完了",
|
||||
"CONNECTIONS_EXPORTED": "接続がエクスポートされました",
|
||||
"CONNECTION_CREATED": "接続作成",
|
||||
@@ -765,6 +769,7 @@
|
||||
"CONNECTION_UPDATED": "接続更新",
|
||||
"DATABASE_MIGRATION": "データベース移行",
|
||||
"IP_WHITELIST_UPDATED": "IP ホワイトリスト更新",
|
||||
"IP_BLOCKED": "IPブロック済み",
|
||||
"LOGIN_FAILURE": "ログイン失敗",
|
||||
"LOGIN_SUCCESS": "ログイン成功",
|
||||
"LOGOUT": "ログアウト",
|
||||
|
||||
@@ -609,6 +609,10 @@
|
||||
"PASSWORD_CHANGED": "密码已修改",
|
||||
"2FA_ENABLED": "两步验证已启用",
|
||||
"2FA_DISABLED": "两步验证已禁用",
|
||||
"PASSKEY_REGISTERED": "Passkey 已注册",
|
||||
"PASSKEY_AUTH_SUCCESS": "Passkey 认证成功",
|
||||
"PASSKEY_AUTH_FAILURE": "Passkey 认证失败",
|
||||
"PASSKEY_DELETED": "Passkey 已删除",
|
||||
"CONNECTION_CREATED": "连接已创建",
|
||||
"CONNECTION_UPDATED": "连接已更新",
|
||||
"CONNECTION_DELETED": "连接已删除",
|
||||
@@ -621,6 +625,7 @@
|
||||
"TAG_DELETED": "标签已删除",
|
||||
"SETTINGS_UPDATED": "设置已更新",
|
||||
"IP_WHITELIST_UPDATED": "IP 白名单已更新",
|
||||
"IP_BLOCKED": "IP 已封禁",
|
||||
"NOTIFICATION_SETTING_CREATED": "通知设置已创建",
|
||||
"NOTIFICATION_SETTING_UPDATED": "通知设置已更新",
|
||||
"NOTIFICATION_SETTING_DELETED": "通知设置已删除",
|
||||
|
||||
@@ -22,17 +22,18 @@ export type NotificationChannelType = 'webhook' | 'email' | 'telegram';
|
||||
export type NotificationEvent =
|
||||
| 'LOGIN_SUCCESS' | 'LOGIN_FAILURE' | 'LOGOUT' | 'PASSWORD_CHANGED'
|
||||
| '2FA_ENABLED' | '2FA_DISABLED'
|
||||
// Passkey Events
|
||||
| 'PASSKEY_REGISTERED'
|
||||
| 'PASSKEY_AUTH_SUCCESS'
|
||||
| 'PASSKEY_AUTH_FAILURE'
|
||||
| 'PASSKEY_DELETED'
|
||||
| 'CONNECTION_CREATED' | 'CONNECTION_UPDATED' | 'CONNECTION_DELETED'
|
||||
| 'PROXY_CREATED' | 'PROXY_UPDATED' | 'PROXY_DELETED'
|
||||
| 'TAG_CREATED' | 'TAG_UPDATED' | 'TAG_DELETED'
|
||||
| 'SETTINGS_UPDATED' | 'IP_WHITELIST_UPDATED'
|
||||
| 'SETTINGS_UPDATED' | 'IP_WHITELIST_UPDATED' | 'IP_BLOCKED'
|
||||
| 'NOTIFICATION_SETTING_CREATED' | 'NOTIFICATION_SETTING_UPDATED' | 'NOTIFICATION_SETTING_DELETED'
|
||||
// SSH Actions
|
||||
| 'SSH_CONNECT_SUCCESS' | 'SSH_CONNECT_FAILURE' | 'SSH_SHELL_FAILURE'
|
||||
// System/Error
|
||||
| 'DATABASE_MIGRATION' | 'ADMIN_SETUP_COMPLETE';
|
||||
// Settings (Specific) - Keep aligned with AuditLogActionType
|
||||
// Note: IP_BLACKLISTED was in NotificationEvent but not AuditLogActionType, removed for consistency based on user request
|
||||
|
||||
export interface WebhookConfig {
|
||||
url: string;
|
||||
|
||||
Reference in New Issue
Block a user