mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 21:17:32 +00:00
cherry pick changes from main (#3371)
* feat: remove exif data from uploaded images (#3221) * feat: remove exif tags from images * feat: remove exif data * feat: remove exif * fix: add preferredLoginName to user grant response (#3271) * chore: log webauthn parse error (#3272) * log error * log error * feat: Help link in privacy policy * fix: convert correct detail data on organization (#3279) * fix: handle empty editor users * fix: add some missing translations (#3291) * fix: org policy translations * fix: metadata event types translation * fix: translations * fix: filter resource owner correctly on project grant members (#3281) * fix: filter resource owner correctly on project grant members * fix: filter resource owner correctly on project grant members * fix: add orgIDs to zitadel permissions request Co-authored-by: fabi <fabienne.gerschwiler@gmail.com> * fix: get IAM memberships correctly in MyZitadelPermissions (#3309) * fix: correct login names on auth and notification users (#3349) * fix: correct login names on auth and notification users * fix: migration * fix: handle resource owner in action flows (#3361) * fix merge * fix: exchange exif library (#3366) * fix: exchange exif library * ignore tiffs * requested fixes * feat: Help link in privacy policy Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com> Co-authored-by: fabi <fabienne.gerschwiler@gmail.com>
This commit is contained in:
@@ -32,6 +32,7 @@ var (
|
||||
", projections.users_humans.email" +
|
||||
", projections.users_humans.display_name" +
|
||||
", projections.users_humans.avatar_key" +
|
||||
", projections.login_names.login_name" +
|
||||
", projections.user_grants.resource_owner" +
|
||||
", projections.orgs.name" +
|
||||
", projections.orgs.primary_domain" +
|
||||
@@ -41,7 +42,9 @@ var (
|
||||
" LEFT JOIN projections.users ON projections.user_grants.user_id = projections.users.id" +
|
||||
" LEFT JOIN projections.users_humans ON projections.user_grants.user_id = projections.users_humans.user_id" +
|
||||
" LEFT JOIN projections.orgs ON projections.user_grants.resource_owner = projections.orgs.id" +
|
||||
" LEFT JOIN projections.projects ON projections.user_grants.project_id = projections.projects.id")
|
||||
" LEFT JOIN projections.projects ON projections.user_grants.project_id = projections.projects.id" +
|
||||
" LEFT JOIN projections.login_names ON projections.user_grants.user_id = projections.login_names.user_id" +
|
||||
" WHERE projections.login_names.is_primary = $1")
|
||||
userGrantCols = []string{
|
||||
"id",
|
||||
"creation_date",
|
||||
@@ -59,6 +62,7 @@ var (
|
||||
"email",
|
||||
"display_name",
|
||||
"avatar_key",
|
||||
"login_name",
|
||||
"resource_owner", //user_grant resource owner
|
||||
"name", //org name
|
||||
"primary_domain",
|
||||
@@ -82,6 +86,7 @@ var (
|
||||
", projections.users_humans.email" +
|
||||
", projections.users_humans.display_name" +
|
||||
", projections.users_humans.avatar_key" +
|
||||
", projections.login_names.login_name" +
|
||||
", projections.user_grants.resource_owner" +
|
||||
", projections.orgs.name" +
|
||||
", projections.orgs.primary_domain" +
|
||||
@@ -92,7 +97,9 @@ var (
|
||||
" LEFT JOIN projections.users ON projections.user_grants.user_id = projections.users.id" +
|
||||
" LEFT JOIN projections.users_humans ON projections.user_grants.user_id = projections.users_humans.user_id" +
|
||||
" LEFT JOIN projections.orgs ON projections.user_grants.resource_owner = projections.orgs.id" +
|
||||
" LEFT JOIN projections.projects ON projections.user_grants.project_id = projections.projects.id")
|
||||
" LEFT JOIN projections.projects ON projections.user_grants.project_id = projections.projects.id" +
|
||||
" LEFT JOIN projections.login_names ON projections.user_grants.user_id = projections.login_names.user_id" +
|
||||
" WHERE projections.login_names.is_primary = $1")
|
||||
userGrantsCols = append(
|
||||
userGrantCols,
|
||||
"count",
|
||||
@@ -152,6 +159,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -161,27 +169,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
),
|
||||
},
|
||||
object: &UserGrant{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -208,6 +217,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
nil,
|
||||
nil,
|
||||
nil,
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -217,27 +227,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
),
|
||||
},
|
||||
object: &UserGrant{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "",
|
||||
LastName: "",
|
||||
Email: "",
|
||||
DisplayName: "",
|
||||
AvatarURL: "",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "",
|
||||
LastName: "",
|
||||
Email: "",
|
||||
DisplayName: "",
|
||||
AvatarURL: "",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -264,6 +275,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
nil,
|
||||
nil,
|
||||
@@ -273,27 +285,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
),
|
||||
},
|
||||
object: &UserGrant{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "",
|
||||
OrgPrimaryDomain: "",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "",
|
||||
OrgPrimaryDomain: "",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -320,6 +333,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -329,27 +343,86 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
),
|
||||
},
|
||||
object: &UserGrant{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "prepareUserGrantQuery (no loginname) found",
|
||||
prepare: prepareUserGrantQuery,
|
||||
want: want{
|
||||
sqlExpectations: mockQuery(
|
||||
userGrantStmt,
|
||||
userGrantCols,
|
||||
[]driver.Value{
|
||||
"id",
|
||||
testNow,
|
||||
testNow,
|
||||
20211111,
|
||||
"grant-id",
|
||||
pq.StringArray{"role-key"},
|
||||
domain.UserGrantStateActive,
|
||||
"user-id",
|
||||
"username",
|
||||
domain.UserTypeHuman,
|
||||
"resource-owner",
|
||||
"first-name",
|
||||
"last-name",
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
nil,
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
"project-id",
|
||||
"project-name",
|
||||
},
|
||||
),
|
||||
},
|
||||
object: &UserGrant{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -406,6 +479,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -421,27 +495,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -471,6 +546,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
nil,
|
||||
nil,
|
||||
nil,
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -486,27 +562,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "",
|
||||
LastName: "",
|
||||
Email: "",
|
||||
DisplayName: "",
|
||||
AvatarURL: "",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "",
|
||||
LastName: "",
|
||||
Email: "",
|
||||
DisplayName: "",
|
||||
AvatarURL: "",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -536,6 +613,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
nil,
|
||||
nil,
|
||||
@@ -551,27 +629,28 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "",
|
||||
OrgPrimaryDomain: "",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeMachine,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "",
|
||||
OrgPrimaryDomain: "",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -601,6 +680,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -616,27 +696,95 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "prepareUserGrantsQuery one grant (no loginname)",
|
||||
prepare: prepareUserGrantsQuery,
|
||||
want: want{
|
||||
sqlExpectations: mockQueries(
|
||||
userGrantsStmt,
|
||||
userGrantsCols,
|
||||
[][]driver.Value{
|
||||
{
|
||||
"id",
|
||||
testNow,
|
||||
testNow,
|
||||
20211111,
|
||||
"grant-id",
|
||||
pq.StringArray{"role-key"},
|
||||
domain.UserGrantStateActive,
|
||||
"user-id",
|
||||
"username",
|
||||
domain.UserTypeHuman,
|
||||
"resource-owner",
|
||||
"first-name",
|
||||
"last-name",
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
nil,
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
"project-id",
|
||||
"project-name",
|
||||
},
|
||||
},
|
||||
),
|
||||
},
|
||||
object: &UserGrants{
|
||||
SearchResponse: SearchResponse{
|
||||
Count: 1,
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -666,6 +814,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -689,6 +838,7 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
"email",
|
||||
"display-name",
|
||||
"avatar-key",
|
||||
"login-name",
|
||||
"ro",
|
||||
"org-name",
|
||||
"primary-domain",
|
||||
@@ -704,50 +854,52 @@ func Test_UserGrantPrepares(t *testing.T) {
|
||||
},
|
||||
UserGrants: []*UserGrant{
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
{
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
ID: "id",
|
||||
CreationDate: testNow,
|
||||
ChangeDate: testNow,
|
||||
Sequence: 20211111,
|
||||
Roles: []string{"role-key"},
|
||||
GrantID: "grant-id",
|
||||
State: domain.UserGrantStateActive,
|
||||
UserID: "user-id",
|
||||
Username: "username",
|
||||
UserType: domain.UserTypeHuman,
|
||||
UserResourceOwner: "resource-owner",
|
||||
FirstName: "first-name",
|
||||
LastName: "last-name",
|
||||
Email: "email",
|
||||
DisplayName: "display-name",
|
||||
AvatarURL: "avatar-key",
|
||||
PreferredLoginName: "login-name",
|
||||
ResourceOwner: "ro",
|
||||
OrgName: "org-name",
|
||||
OrgPrimaryDomain: "primary-domain",
|
||||
ProjectID: "project-id",
|
||||
ProjectName: "project-name",
|
||||
},
|
||||
},
|
||||
},
|
||||
|
Reference in New Issue
Block a user