v4.17.0
gtsteffaniak/filebrowserv4.17.0Aug 12, 2026by github-actions[bot]
AI Summary
A major feature release for Zitadel adding Zitadel Identity Provider support and numerous authentication fixes.
Key Highlights
- Added 'Sign in with Zitadel' functionality
- Added API definitions for Zitadel IdP providers
- Fixed passkey native app links
New Features
- Zitadel IdP login support
- Dynamic client registration (RFC 7591/7592)
- Passkey native app links
- MFA session validity check with passkeys
Full Release Notes
# [4.17.0](https://github.com/zitadel/zitadel/compare/v4.16.3...v4.17.0) (2026-08-12) ### Bug Fixes * **actions:** allow adding raw metadata values via appendMetadataRaw ([#12567](https://github.com/zitadel/zitadel/issues/12567)) ([c1b9885](https://github.com/zitadel/zitadel/commit/c1b9885de1baf899c923de86d77ff434bf21a724)), closes [#10666](https://github.com/zitadel/zitadel/issues/10666) [#5526](https://github.com/zitadel/zitadel/issues/5526) [#10470](https://github.com/zitadel/zitadel/issues/10470) [#5526](https://github.com/zitadel/zitadel/issues/5526) * allow invite codes for users whose auth methods were all removed ([#12453](https://github.com/zitadel/zitadel/issues/12453)) ([eb7af25](https://github.com/zitadel/zitadel/commit/eb7af256a42bff3e428f57b9fd221553709475db)) * **api:** accept SetSecuritySettings on /v2/settings/security ([#12518](https://github.com/zitadel/zitadel/issues/12518)) ([6e07fb7](https://github.com/zitadel/zitadel/commit/6e07fb756898fce72836b33d818d1f3c54098e4a)), closes [#12313](https://github.com/zitadel/zitadel/issues/12313) * **console:** change username abort dialog and set email as verified [#10803](https://github.com/zitadel/zitadel/issues/10803) [#12146](https://github.com/zitadel/zitadel/issues/12146) ([#12155](https://github.com/zitadel/zitadel/issues/12155)) ([8e2dc18](https://github.com/zitadel/zitadel/commit/8e2dc18136af0f8af848e64701ce59fc1b79fe44)) * **database:** skip CREATE USER when role exists to avoid password in Postgres logs ([#12538](https://github.com/zitadel/zitadel/issues/12538)) ([207f14a](https://github.com/zitadel/zitadel/commit/207f14abbb9f989bac603f0dbc8ce51c67b42c0a)), closes [#12178](https://github.com/zitadel/zitadel/issues/12178) * **login:** honour login_hint and skip the auto-submit loop in OIDC flow ([#12431](https://github.com/zitadel/zitadel/issues/12431)) ([3bb23d2](https://github.com/zitadel/zitadel/commit/3bb23d243516725954f0ffafe339795a3e709ccb)), closes [#12346](https://github.com/zitadel/zitadel/issues/12346) * **login:** provide hidden username on password set/change forms ([#12490](https://github.com/zitadel/zitadel/issues/12490)) ([e82b845](https://github.com/zitadel/zitadel/commit/e82b8455320db441c8cad069cec29f38a9f6133a)) * **login:** resolve unknownContext error on password page caused by inconsistent ignoreUnknownUsernames handling ([#12512](https://github.com/zitadel/zitadel/issues/12512)) ([65e50fc](https://github.com/zitadel/zitadel/commit/65e50fcf12b826a4817bf67e9869d9d18b947a11)) * **login:** treat user-verified passkey as fulfilling MFA in session validity check ([#12575](https://github.com/zitadel/zitadel/issues/12575)) ([4f3a1dd](https://github.com/zitadel/zitadel/commit/4f3a1dd032ba607262115dcd3ad4342cc720490a)) ### Features * add api definition to update Zitadel IdP ([#12371](https://github.com/zitadel/zitadel/issues/12371)) ([8106304](https://github.com/zitadel/zitadel/commit/8106304a18fad1fc2e8e2039947280b8adebf596)) * API definition to add new Zitadel providers ([#12018](https://github.com/zitadel/zitadel/issues/12018)) ([9996463](https://github.com/zitadel/zitadel/commit/9996463c9f6fd9859e033e1013b55268923b5187)) * command layer implementation for AddZitadelProvider ([#12020](https://github.com/zitadel/zitadel/issues/12020)) ([a45ac66](https://github.com/zitadel/zitadel/commit/a45ac66cfb28b22cb88199c435d0ad4ed444b016)) * **eventstore:** autovacuum tuning for events2 table ([#12449](https://github.com/zitadel/zitadel/issues/12449)) ([0011448](https://github.com/zitadel/zitadel/commit/001144819d1d3e16fad93c699d068ca908d254ab)), closes [#12448](https://github.com/zitadel/zitadel/issues/12448) [#10754](https://github.com/zitadel/zitadel/issues/10754) [#10260](https://github.com/zitadel/zitadel/issues/10260) [#8585](https://github.com/zitadel/zitadel/issues/8585) [#9239](https://github.com/zitadel/zitadel/issues/9239) * extend DeleteProvider to include Zitadel IdP ([#12396](https://github.com/zitadel/zitadel/issues/12396)) ([29ec5b0](https://github.com/zitadel/zitadel/commit/29ec5b0db3676c7762b5857123abd7e9a3eecc0a)) * extend start/retrieve idp intent for Zitadel provider ([#12424](https://github.com/zitadel/zitadel/issues/12424)) ([df97d7d](https://github.com/zitadel/zitadel/commit/df97d7dc013b9855afe55d08b6410d47ec8c720c)) * get/list Zitadel IdP ([#12394](https://github.com/zitadel/zitadel/issues/12394)) ([825dbf5](https://github.com/zitadel/zitadel/commit/825dbf5175fb4fc6fbe74c0bab2ac0f6b28001cc)) * handle Zitadel provider IdP login via login v1 ([#12469](https://github.com/zitadel/zitadel/issues/12469)) ([9173927](https://github.com/zitadel/zitadel/commit/91739275e5461e4052e589850912cbe8124ce25a)) * implement AddZitadelProvider in ManagementService ([#12056](https://github.com/zitadel/zitadel/issues/12056)) ([29196dc](https://github.com/zitadel/zitadel/commit/29196dcff4aa85a973658c1d02af78c983d5134e)) * implement instance-level UpdateZitadelProvider ([#12378](https://github.com/zitadel/zitadel/issues/12378)) ([deaa1a3](https://github.com/zitadel/zitadel/commit/deaa1a3e9e9318141ba98ac806618baf200bfc75)) * implement UpdateZitadelProvider in ManagementService ([#12384](https://github.com/zitadel/zitadel/issues/12384)) ([de87ee0](https://github.com/zitadel/zitadel/commit/de87ee07e09eb147b272ad0c51e77a2084e38856)) * **login:** hu translations + I18n consistency v2 ([#12447](https://github.com/zitadel/zitadel/issues/12447)) ([f60a4d2](https://github.com/zitadel/zitadel/commit/f60a4d24773b61d988d036eaf523edb10083722d)) * **login:** idp userAction oneof ([#12433](https://github.com/zitadel/zitadel/issues/12433)) ([b33f2d5](https://github.com/zitadel/zitadel/commit/b33f2d59aa774e52f9fb9d960232c11605658f4c)), closes [#11369](https://github.com/zitadel/zitadel/issues/11369) * **login:** Sign in with Zitadel ([#12530](https://github.com/zitadel/zitadel/issues/12530)) ([e1a924b](https://github.com/zitadel/zitadel/commit/e1a924b27b3beaa15843cc42db05125228acb82f)), closes [#11824](https://github.com/zitadel/zitadel/issues/11824) [#5127](https://github.com/zitadel/zitadel/issues/5127) * **login:** synchronize instance roles for Zitadel identity provider ([#12568](https://github.com/zitadel/zitadel/issues/12568)) ([929cfc1](https://github.com/zitadel/zitadel/commit/929cfc10fa887762a3b000c613c85f28283bdd73)), closes [#5127](https://github.com/zitadel/zitadel/issues/5127) * native app links for passkeys ([#12580](https://github.com/zitadel/zitadel/issues/12580)) ([da16af1](https://github.com/zitadel/zitadel/commit/da16af17923e41826c93b2c621d5549b8c1a19dc)), closes [#12497](https://github.com/zitadel/zitadel/issues/12497) [#12531](https://github.com/zitadel/zitadel/issues/12531) [#12532](https://github.com/zitadel/zitadel/issues/12532) [#12536](https://github.com/zitadel/zitadel/issues/12536) [#12537](https://github.com/zitadel/zitadel/issues/12537) [#12547](https://github.com/zitadel/zitadel/issues/12547) * **oidc:** add RFC 7591 dynamic client registration ([#12313](https://github.com/zitadel/zitadel/issues/12313)) ([6a02b7e](https://github.com/zitadel/zitadel/commit/6a02b7e6ad2eb073654b2d53f3a8575ba46b89b5)), closes [#9810](https://github.com/zitadel/zitadel/issues/9810) [#12315](https://github.com/zitadel/zitadel/issues/12315) [#12316](https://github.com/zitadel/zitadel/issues/12316) [/github.com/zitadel/zitadel/issues/9810#issuecomment-4891176997](https://github.com//github.com/zitadel/zitadel/issues/9810/issues/issuecomment-4891176997) * **oidc:** add RFC 7592 dynamic client management ([#12315](https://github.com/zitadel/zitadel/issues/12315)) ([443783a](https://github.com/zitadel/zitadel/commit/443783aae3732f326ddfb09e81e83f9cce45add9)), closes [#12313](https://github.com/zitadel/zitadel/issues/12313) [#12313](https://github.com/zitadel/zitadel/issues/12313) [#9810](https://github.com/zitadel/zitadel/issues/9810) [#12313](https://github.com/zitadel/zitadel/issues/12313) [#12313](https://github.com/zitadel/zitadel/issues/12313) * **oidc:** provide actor information in userinfo actions ([#12566](https://github.com/zitadel/zitadel/issues/12566)) ([c2a55d2](https://github.com/zitadel/zitadel/commit/c2a55d2e6cec2e1354e5f279b0e5bf520be614d0)) * projection layer implementation to add Zitadel provider ([#12055](https://github.com/zitadel/zitadel/issues/12055)) ([7a2f331](https://github.com/zitadel/zitadel/commit/7a2f3310e7e33425d3e1eec466122fa0caec5ef4)) * update GetActiveIdentityProviders to return Zitadel in the IdP list ([#12422](https://github.com/zitadel/zitadel/issues/12422)) ([8898e08](https://github.com/zitadel/zitadel/commit/8898e082b6abbac924c6a7afae1c7247e19239e5))