From e8cd8fa040593334e52549963bd4f9a375b0cdb8 Mon Sep 17 00:00:00 2001 From: Isaiah Becker-Mayer Date: Tue, 8 Feb 2022 09:24:16 -0500 Subject: [PATCH] adds cliipboard to userACL (#10207) --- lib/web/ui/usercontext.go | 4 ++++ lib/web/ui/usercontext_test.go | 2 ++ 2 files changed, 6 insertions(+) diff --git a/lib/web/ui/usercontext.go b/lib/web/ui/usercontext.go index cbaa6cb35f8..2de2519e2c9 100644 --- a/lib/web/ui/usercontext.go +++ b/lib/web/ui/usercontext.go @@ -82,6 +82,8 @@ type userACL struct { AccessRequests access `json:"accessRequests"` // Billing defines access to billing information. Billing access `json:"billing"` + // Clipboard defines whether the user can use a shared clipboard during windows desktop sessions. + Clipboard bool `json:"clipboard"` } type authType string @@ -220,6 +222,7 @@ func NewUserContext(user types.User, userRoles services.RoleSet, features proto. logins := getLogins(userRoles) accessStrategy := getAccessStrategy(userRoles) windowsLogins := getWindowsDesktopLogins(userRoles) + clipboard := userRoles.DesktopClipboard() acl := userACL{ AccessRequests: requestAccess, @@ -238,6 +241,7 @@ func NewUserContext(user types.User, userRoles services.RoleSet, features proto. Tokens: tokenAccess, Nodes: nodeAccess, Billing: billingAccess, + Clipboard: clipboard, } // local user diff --git a/lib/web/ui/usercontext_test.go b/lib/web/ui/usercontext_test.go index 90f6f2445e6..9e9fd9c839a 100644 --- a/lib/web/ui/usercontext_test.go +++ b/lib/web/ui/usercontext_test.go @@ -111,6 +111,7 @@ func (s *UserContextSuite) TestNewUserContext(c *check.C) { Prompt: "", }) c.Assert(userContext.ACL.Billing, check.DeepEquals, denied) + c.Assert(userContext.ACL.Clipboard, check.Equals, true) // test local auth type c.Assert(userContext.AuthType, check.Equals, authLocal) @@ -174,6 +175,7 @@ func (s *UserContextSuite) TestNewUserContextCloud(c *check.C) { Type: types.RequestStrategyOptional, Prompt: "", }) + c.Assert(userContext.ACL.Clipboard, check.Equals, true) // cloud-specific asserts c.Assert(userContext.ACL.Billing, check.DeepEquals, allowed)