@@ -39,14 +39,15 @@ type DBTokenProvider struct {
39
39
Logger slog.Logger
40
40
41
41
// DashboardURL is the main dashboard access URL for error pages.
42
- DashboardURL * url.URL
43
- Authorizer rbac.Authorizer
44
- Auditor * atomic.Pointer [audit.Auditor ]
45
- Database database.Store
46
- DeploymentValues * codersdk.DeploymentValues
47
- OAuth2Configs * httpmw.OAuth2Configs
48
- WorkspaceAgentInactiveTimeout time.Duration
49
- Keycache cryptokeys.SigningKeycache
42
+ DashboardURL * url.URL
43
+ Authorizer rbac.Authorizer
44
+ Auditor * atomic.Pointer [audit.Auditor ]
45
+ Database database.Store
46
+ DeploymentValues * codersdk.DeploymentValues
47
+ OAuth2Configs * httpmw.OAuth2Configs
48
+ WorkspaceAgentInactiveTimeout time.Duration
49
+ WorkspaceAppAuditSessionTimeout time.Duration
50
+ Keycache cryptokeys.SigningKeycache
50
51
}
51
52
52
53
var _ SignedTokenProvider = & DBTokenProvider {}
@@ -59,22 +60,27 @@ func NewDBTokenProvider(log slog.Logger,
59
60
cfg * codersdk.DeploymentValues ,
60
61
oauth2Cfgs * httpmw.OAuth2Configs ,
61
62
workspaceAgentInactiveTimeout time.Duration ,
63
+ workspaceAppAuditSessionTimeout time.Duration ,
62
64
signer cryptokeys.SigningKeycache ,
63
65
) SignedTokenProvider {
64
66
if workspaceAgentInactiveTimeout == 0 {
65
67
workspaceAgentInactiveTimeout = 1 * time .Minute
66
68
}
69
+ if workspaceAppAuditSessionTimeout == 0 {
70
+ workspaceAppAuditSessionTimeout = time .Hour
71
+ }
67
72
68
73
return & DBTokenProvider {
69
- Logger : log ,
70
- DashboardURL : accessURL ,
71
- Authorizer : authz ,
72
- Auditor : auditor ,
73
- Database : db ,
74
- DeploymentValues : cfg ,
75
- OAuth2Configs : oauth2Cfgs ,
76
- WorkspaceAgentInactiveTimeout : workspaceAgentInactiveTimeout ,
77
- Keycache : signer ,
74
+ Logger : log ,
75
+ DashboardURL : accessURL ,
76
+ Authorizer : authz ,
77
+ Auditor : auditor ,
78
+ Database : db ,
79
+ DeploymentValues : cfg ,
80
+ OAuth2Configs : oauth2Cfgs ,
81
+ WorkspaceAgentInactiveTimeout : workspaceAgentInactiveTimeout ,
82
+ WorkspaceAppAuditSessionTimeout : workspaceAppAuditSessionTimeout ,
83
+ Keycache : signer ,
78
84
}
79
85
}
80
86
@@ -446,7 +452,7 @@ func (p *DBTokenProvider) auditInitAutocommitRequest(ctx context.Context, w http
446
452
UserID : userID ,
447
453
Ip : aReq .ip ,
448
454
UpdatedAt : aReq .time ,
449
- StaleIntervalMS : ( 2 * time . Hour ) .Milliseconds (),
455
+ StaleIntervalMS : p . WorkspaceAppAuditSessionTimeout .Milliseconds (),
450
456
})
451
457
if err != nil {
452
458
return xerrors .Errorf ("update workspace app audit session: %w" , err )
0 commit comments