mirror of
https://github.com/coder/coder.git
synced 2026-10-25 09:42:55 +08:00
chore: create type for unique role names (#13506)
* chore: create type for unique role names Using `string` was confusing when something should be combined with org context, and when not to. Naming this new name, "RoleIdentifier"
This commit is contained in:
@@ -58,7 +58,7 @@ var builtinScopes = map[ScopeName]Scope{
|
||||
// authorize checks it is usually not used directly and skips scope checks.
|
||||
ScopeAll: {
|
||||
Role: Role{
|
||||
Name: fmt.Sprintf("Scope_%s", ScopeAll),
|
||||
Identifier: RoleIdentifier{Name: fmt.Sprintf("Scope_%s", ScopeAll)},
|
||||
DisplayName: "All operations",
|
||||
Site: Permissions(map[string][]policy.Action{
|
||||
ResourceWildcard.Type: {policy.WildcardSymbol},
|
||||
@@ -71,7 +71,7 @@ var builtinScopes = map[ScopeName]Scope{
|
||||
|
||||
ScopeApplicationConnect: {
|
||||
Role: Role{
|
||||
Name: fmt.Sprintf("Scope_%s", ScopeApplicationConnect),
|
||||
Identifier: RoleIdentifier{Name: fmt.Sprintf("Scope_%s", ScopeApplicationConnect)},
|
||||
DisplayName: "Ability to connect to applications",
|
||||
Site: Permissions(map[string][]policy.Action{
|
||||
ResourceWorkspace.Type: {policy.ActionApplicationConnect},
|
||||
@@ -87,7 +87,7 @@ type ExpandableScope interface {
|
||||
Expand() (Scope, error)
|
||||
// Name is for logging and tracing purposes, we want to know the human
|
||||
// name of the scope.
|
||||
Name() string
|
||||
Name() RoleIdentifier
|
||||
}
|
||||
|
||||
type ScopeName string
|
||||
@@ -96,8 +96,8 @@ func (name ScopeName) Expand() (Scope, error) {
|
||||
return ExpandScope(name)
|
||||
}
|
||||
|
||||
func (name ScopeName) Name() string {
|
||||
return string(name)
|
||||
func (name ScopeName) Name() RoleIdentifier {
|
||||
return RoleIdentifier{Name: string(name)}
|
||||
}
|
||||
|
||||
// Scope acts the exact same as a Role with the addition that is can also
|
||||
@@ -114,8 +114,8 @@ func (s Scope) Expand() (Scope, error) {
|
||||
return s, nil
|
||||
}
|
||||
|
||||
func (s Scope) Name() string {
|
||||
return s.Role.Name
|
||||
func (s Scope) Name() RoleIdentifier {
|
||||
return s.Role.Identifier
|
||||
}
|
||||
|
||||
func ExpandScope(scope ScopeName) (Scope, error) {
|
||||
|
||||
Reference in New Issue
Block a user