mirror of https://github.com/databricks/cli.git
17 lines
555 B
Go
17 lines
555 B
Go
package iamutil
|
|
|
|
import (
|
|
"github.com/databricks/databricks-sdk-go/service/iam"
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
// Determines whether a given user is a service principal.
|
|
// This function uses a heuristic: if the user name is a UUID, then we assume
|
|
// it's a service principal. Unfortunately, the service principal listing API is too
|
|
// slow for our purposes. And the "users" and "service principals get" APIs
|
|
// only allow access by workspace admins.
|
|
func IsServicePrincipal(user *iam.User) bool {
|
|
_, err := uuid.Parse(user.UserName)
|
|
return err == nil
|
|
}
|