AuthN: Set uid during authentication (#87797)
* Identity: Remove GetNamespacedUID and use GetUID instead * Authn: Set uid for users and service accounts
This commit is contained in:
@@ -364,7 +364,7 @@ func (s *UserSync) lookupByOneOf(ctx context.Context, params login.UserLookupPar
|
||||
var err error
|
||||
|
||||
// If not found, try to find the user by email address
|
||||
if usr == nil && params.Email != nil && *params.Email != "" {
|
||||
if params.Email != nil && *params.Email != "" {
|
||||
usr, err = s.userService.GetByEmail(ctx, &user.GetUserByEmailQuery{Email: *params.Email})
|
||||
if err != nil && !errors.Is(err, user.ErrUserNotFound) {
|
||||
return nil, err
|
||||
@@ -390,6 +390,7 @@ func (s *UserSync) lookupByOneOf(ctx context.Context, params login.UserLookupPar
|
||||
// This is used to update the identity with the latest user information.
|
||||
func syncUserToIdentity(usr *user.User, id *authn.Identity) {
|
||||
id.ID = authn.NewNamespaceID(authn.NamespaceUser, usr.ID)
|
||||
id.UID = authn.NewNamespaceIDString(authn.NamespaceUser, usr.UID)
|
||||
id.Login = usr.Login
|
||||
id.Email = usr.Email
|
||||
id.Name = usr.Name
|
||||
@@ -399,6 +400,14 @@ func syncUserToIdentity(usr *user.User, id *authn.Identity) {
|
||||
|
||||
// syncSignedInUserToIdentity syncs a user to an identity.
|
||||
func syncSignedInUserToIdentity(usr *user.SignedInUser, identity *authn.Identity) {
|
||||
var ns authn.Namespace
|
||||
if identity.ID.IsNamespace(authn.NamespaceServiceAccount) {
|
||||
ns = authn.NamespaceServiceAccount
|
||||
} else {
|
||||
ns = authn.NamespaceUser
|
||||
}
|
||||
identity.UID = authn.NewNamespaceIDString(ns, usr.UserUID)
|
||||
|
||||
identity.Name = usr.Name
|
||||
identity.Login = usr.Login
|
||||
identity.Email = usr.Email
|
||||
|
||||
Reference in New Issue
Block a user