1
0
mirror of https://github.com/rancher/types.git synced 2025-07-08 11:08:37 +00:00
types/user/manager.go

18 lines
755 B
Go

package user
import (
"github.com/rancher/norman/types"
"github.com/rancher/types/apis/management.cattle.io/v3"
apitypes "k8s.io/apimachinery/pkg/types"
)
type Manager interface {
SetPrincipalOnCurrentUser(apiContext *types.APIContext, principal v3.Principal) (*v3.User, error)
GetUser(apiContext *types.APIContext) string
EnsureToken(tokenName, description, userName string) (string, error)
EnsureUser(principalName, displayName string) (*v3.User, error)
CheckAccess(accessMode string, allowedPrincipalIDs []string, user v3.Principal, groups []v3.Principal) (bool, error)
SetPrincipalOnCurrentUserByUserID(userID string, principal v3.Principal) (*v3.User, error)
CreateNewUserClusterRoleBinding(userName string, userUID apitypes.UID) error
}