IAM: Add and use identity ref (#92978)

* Add and use identity ref

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
This commit is contained in:
Karl Persson
2024-09-05 16:10:23 +02:00
committed by GitHub
co-authored by Ryan McKinley
parent 95ef2a1eb2
commit bc20592fd4
9 changed files with 132 additions and 74 deletions
+7 -5
View File
@@ -98,11 +98,13 @@ var cfg = &setting.Cfg{}
func mapToTeamMember(m legacy.TeamMember) iamv0.TeamMember {
return iamv0.TeamMember{
IdentityDisplay: iamv0.IdentityDisplay{
IdentityType: claims.TypeUser,
UID: m.UserUID,
Display: m.Name,
AvatarURL: dtos.GetGravatarUrlWithDefault(cfg, m.Email, m.Name),
InternalID: m.UserID,
Identity: iamv0.IdentityRef{
Type: claims.TypeUser,
Name: m.UserUID,
},
DisplayName: m.Name,
AvatarURL: dtos.GetGravatarUrlWithDefault(cfg, m.Email, m.Name),
InternalID: m.UserID,
},
External: m.External,
Permission: mapPermisson(m.Permission),
+5 -2
View File
@@ -137,7 +137,7 @@ func mapToBindingObject(ns claims.NamespaceInfo, b legacy.TeamBinding) iamv0.Tea
CreationTimestamp: metav1.NewTime(ct),
},
Spec: iamv0.TeamBindingSpec{
TeamRef: iamv0.TeamRef{
Team: iamv0.TeamRef{
Name: b.TeamUID,
},
Subjects: mapToSubjects(b.Members),
@@ -149,7 +149,10 @@ func mapToSubjects(members []legacy.TeamMember) []iamv0.TeamSubject {
out := make([]iamv0.TeamSubject, 0, len(members))
for _, m := range members {
out = append(out, iamv0.TeamSubject{
Name: m.MemberID(),
Identity: iamv0.IdentityRef{
Type: claims.TypeUser,
Name: m.UserUID,
},
Permission: common.MapTeamPermission(m.Permission),
})
}