mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
feat: add workspace agent connect and app open audit types (#16493)
This commit adds new audit resource types for workspace agents and workspace apps, as well as connect/disconnect and open/close actions. The idea is that we will log new audit events for connecting to the agent via SSH/editor. Likewise, we will log openings of `coder_app`s. This change also introduces support for filtering by `request_id`. Updates #15139
This commit is contained in:
@@ -37,6 +37,8 @@ const (
|
||||
ResourceTypeIdpSyncSettingsOrganization ResourceType = "idp_sync_settings_organization"
|
||||
ResourceTypeIdpSyncSettingsGroup ResourceType = "idp_sync_settings_group"
|
||||
ResourceTypeIdpSyncSettingsRole ResourceType = "idp_sync_settings_role"
|
||||
ResourceTypeWorkspaceAgent ResourceType = "workspace_agent"
|
||||
ResourceTypeWorkspaceApp ResourceType = "workspace_app"
|
||||
)
|
||||
|
||||
func (r ResourceType) FriendlyString() string {
|
||||
@@ -87,6 +89,10 @@ func (r ResourceType) FriendlyString() string {
|
||||
return "settings"
|
||||
case ResourceTypeIdpSyncSettingsRole:
|
||||
return "settings"
|
||||
case ResourceTypeWorkspaceAgent:
|
||||
return "workspace agent"
|
||||
case ResourceTypeWorkspaceApp:
|
||||
return "workspace app"
|
||||
default:
|
||||
return "unknown"
|
||||
}
|
||||
@@ -104,6 +110,10 @@ const (
|
||||
AuditActionLogout AuditAction = "logout"
|
||||
AuditActionRegister AuditAction = "register"
|
||||
AuditActionRequestPasswordReset AuditAction = "request_password_reset"
|
||||
AuditActionConnect AuditAction = "connect"
|
||||
AuditActionDisconnect AuditAction = "disconnect"
|
||||
AuditActionOpen AuditAction = "open"
|
||||
AuditActionClose AuditAction = "close"
|
||||
)
|
||||
|
||||
func (a AuditAction) Friendly() string {
|
||||
@@ -126,6 +136,14 @@ func (a AuditAction) Friendly() string {
|
||||
return "registered"
|
||||
case AuditActionRequestPasswordReset:
|
||||
return "password reset requested"
|
||||
case AuditActionConnect:
|
||||
return "connected"
|
||||
case AuditActionDisconnect:
|
||||
return "disconnected"
|
||||
case AuditActionOpen:
|
||||
return "opened"
|
||||
case AuditActionClose:
|
||||
return "closed"
|
||||
default:
|
||||
return "unknown"
|
||||
}
|
||||
@@ -184,6 +202,7 @@ type CreateTestAuditLogRequest struct {
|
||||
Time time.Time `json:"time,omitempty" format:"date-time"`
|
||||
BuildReason BuildReason `json:"build_reason,omitempty" enums:"autostart,autostop,initiator"`
|
||||
OrganizationID uuid.UUID `json:"organization_id,omitempty" format:"uuid"`
|
||||
RequestID uuid.UUID `json:"request_id,omitempty" format:"uuid"`
|
||||
}
|
||||
|
||||
// AuditLogs retrieves audit logs from the given page.
|
||||
|
||||
Reference in New Issue
Block a user