MCPcopy Create free account
hub / github.com/bytebase/bytebase / GetPermissions

Method GetPermissions

backend/component/iam/manager.go:91–101  ·  view source on GitHub ↗

GetPermissions returns all permissions for the given role. Role format is roles/{role}.

(ctx context.Context, workspaceID string, roleName string)

Source from the content-addressed store, hash-verified

89// GetPermissions returns all permissions for the given role.
90// Role format is roles/{role}.
91func (m *Manager) GetPermissions(ctx context.Context, workspaceID string, roleName string) (map[permission.Permission]bool, error) {
92 resourceID := strings.TrimPrefix(roleName, "roles/")
93 role, err := m.store.GetRoleSnapshot(ctx, workspaceID, resourceID)
94 if err != nil {
95 return nil, err
96 }
97 if role == nil {
98 return nil, nil
99 }
100 return maps.Clone(role.Permissions), nil
101}
102
103func (m *Manager) GetUserGroups(ctx context.Context, workspaceID string, email string) ([]string, error) {
104 return m.store.GetUserGroupsSnapshot(ctx, workspaceID, common.FormatUserEmail(email))

Callers 4

CheckPermissionMethod · 0.95
CreateRoleMethod · 0.45
UpdateRoleMethod · 0.45

Calls 1

GetRoleSnapshotMethod · 0.80

Tested by

no test coverage detected