mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 20:37:30 +00:00
feat: specify login UI version on instance and apps (#9071)
# Which Problems Are Solved To be able to migrate or test the new login UI, admins might want to (temporarily) switch individual apps. At a later point admin might want to make sure all applications use the new login UI. # How the Problems Are Solved - Added a feature flag `` on instance level to require all apps to use the new login and provide an optional base url. - if the flag is enabled, all (OIDC) applications will automatically use the v2 login. - if disabled, applications can decide based on their configuration - Added an option on OIDC apps to use the new login UI and an optional base url. - Removed the requirement to use `x-zitadel-login-client` to be redirected to the login V2 and retrieve created authrequest and link them to SSO sessions. - Added a new "IAM_LOGIN_CLIENT" role to allow management of users, sessions, grants and more without `x-zitadel-login-client`. # Additional Changes None # Additional Context closes https://github.com/zitadel/zitadel/issues/8702
This commit is contained in:
@@ -49,6 +49,7 @@ const (
|
||||
UserTypeIAMOwner
|
||||
UserTypeOrgOwner
|
||||
UserTypeLogin
|
||||
UserTypeNoPermission
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -196,6 +197,7 @@ func (i *Instance) setupInstance(ctx context.Context, token string) {
|
||||
i.createMachineUserInstanceOwner(ctx, token)
|
||||
i.createMachineUserOrgOwner(ctx)
|
||||
i.createLoginClient(ctx)
|
||||
i.createMachineUserNoPermission(ctx)
|
||||
i.createWebAuthNClient()
|
||||
}
|
||||
|
||||
@@ -238,7 +240,17 @@ func (i *Instance) createMachineUserOrgOwner(ctx context.Context) {
|
||||
}
|
||||
|
||||
func (i *Instance) createLoginClient(ctx context.Context) {
|
||||
i.createMachineUser(ctx, UserTypeLogin)
|
||||
_, err := i.Client.Admin.AddIAMMember(ctx, &admin.AddIAMMemberRequest{
|
||||
UserId: i.createMachineUser(ctx, UserTypeLogin),
|
||||
Roles: []string{"IAM_LOGIN_CLIENT"},
|
||||
})
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
|
||||
func (i *Instance) createMachineUserNoPermission(ctx context.Context) {
|
||||
i.createMachineUser(ctx, UserTypeNoPermission)
|
||||
}
|
||||
|
||||
func (i *Instance) setClient(ctx context.Context) {
|
||||
|
Reference in New Issue
Block a user