Livio Spring
14b8cf4894
feat(api): add OIDC session service ( #6157 )
...
This PR starts the OIDC implementation for the API V2 including the Implicit and Code Flow.
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Tim Möhlmann <tim+github@zitadel.com>
Co-authored-by: Stefan Benz <46600784+stebenz@users.noreply.github.com>
2023-07-10 13:27:00 +00:00
Elio Bischof
bb756482c7
feat: push telemetry ( #6027 )
...
* document analytics config
* rework configuration and docs
* describe HandleActiveInstances better
* describe active instances on quotas better
* only projected events are considered
* cleanup
* describe changes at runtime
* push milestones
* stop tracking events
* calculate and push 4 in 6 milestones
* reduce milestone pushed
* remove docs
* fix scheduled pseudo event projection
* push 5 in 6 milestones
* push 6 in 6 milestones
* ignore client ids
* fix text array contains
* push human readable milestone type
* statement unit tests
* improve dev and db performance
* organize imports
* cleanup
* organize imports
* test projection
* check rows.Err()
* test search query
* pass linting
* review
* test 4 milestones
* simplify milestone by instance ids query
* use type NamespacedCondition
* cleanup
* lint
* lint
* dont overwrite original error
* no opt-in in examples
* cleanup
* prerelease
* enable request headers
* make limit configurable
* review fixes
* only requeue special handlers secondly
* include integration tests
* Revert "include integration tests"
This reverts commit 96db9504ec
.
* pass reducers
* test handlers
* fix unit test
* feat: increment version
* lint
* remove prerelease
* fix integration tests
2023-07-06 08:38:13 +02:00
Livio Spring
bd5defa96a
fix: provide domain in session, passkey and u2f ( #6097 )
...
This fix provides a possibility to pass a domain on the session, which
will be used (as rpID) to create a passkey / u2f assertion and
attestation. This is useful in cases where the login UI is served under
a different domain / origin than the ZITADEL API.
2023-06-27 14:36:07 +02:00
Stefan Benz
1b5d6ce89e
feat: session checks with intent ( #6031 )
...
* feat: session checks with intent
* feat: session checks with intent
* fix: integration tests for intent session
* fix: integration tests for intent session
* fix merge
* fix: integration tests for intent session
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-06-21 14:06:18 +00:00
Livio Spring
82e7333169
feat(api): add password reset and change to user service ( #6036 )
...
* feat(api): add password reset and change to user service
* integration tests
* invalidate password check after password change
* handle notification type
* fix proto
2023-06-20 17:34:06 +02:00
Stefan Benz
66e639b5ad
fix: handling of org idp migrations and google events ( #5992 )
2023-06-08 14:08:13 +00:00
Stefan Benz
5562ee94a6
feat: migrate external idp to other types ( #5984 )
...
* feat: migrate instance oidc to azureAD
* feat: migrate instance oidc to azureAD
* feat: migrate org oidc to azureAD
* feat: migrate oidc to google
* fix: correct idp writemodels
* fix: review changes
2023-06-08 00:50:53 +02:00
Tim Möhlmann
f456168a74
feat: session v2 passkey authentication ( #5952 )
2023-06-07 17:28:42 +02:00
Livio Spring
c2cb84cd24
feat(api): new session service ( #5801 )
...
* backup new protoc plugin
* backup
* session
* backup
* initial implementation
* change to specific events
* implement tests
* cleanup
* refactor: use new protoc plugin for api v2
* change package
* simplify code
* cleanup
* cleanup
* fix merge
* start queries
* fix tests
* improve returned values
* add token to projection
* tests
* test db map
* update query
* permission checks
* fix tests and linting
* rework token creation
* i18n
* refactor token check and fix tests
* session to PB test
* request to query tests
* cleanup proto
* test user check
* add comment
* simplify database map type
* Update docs/docs/guides/integrate/access-zitadel-system-api.md
Co-authored-by: Tim Möhlmann <tim+github@zitadel.com>
* fix test
* cleanup
* docs
---------
Co-authored-by: Tim Möhlmann <tim+github@zitadel.com>
2023-05-05 15:34:53 +00:00
Tim Möhlmann
5819924275
feat: device authorization RFC 8628 ( #5646 )
...
* device auth: implement the write events
* add grant type device code
* fix(init): check if default value implements stringer
---------
Co-authored-by: adlerhurst <silvan.reusser@gmail.com>
2023-04-19 08:46:02 +00:00
Livio Spring
429a91518b
fix: remove idp templates when using old / deprecated delete method ( #5685 )
...
* fix: remove idp templates when using old / deprecated delete method
* fix: projection version
2023-04-17 08:20:49 +00:00
Livio Spring
8bf36301ed
feat: allow skip of success page for native apps ( #5627 )
...
add possibility to return to callback directly after login without rendering the successful login page
2023-04-11 15:07:32 +00:00
Livio Spring
ea9223a2b0
fix: remove instance IDPs correctly from org policies ( #5609 )
...
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2023-04-05 11:18:00 +00:00
Elio Bischof
887e2f474d
fix: use fixed active instances duration ( #5567 )
...
* fix: use fixed active instances duration
* fix active instances tests
* fix syntax error
* run pipeline
---------
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2023-03-30 13:01:27 +02:00
Elio Bischof
cccccd005c
feat: call webhooks at least once ( #5454 )
...
* feat: call webhooks at least once
* self review
* feat: improve notification observability
* feat: add notification tracing
* test(e2e): test at-least-once webhook delivery
* fix webhook notifications
* dedicated quota notifications handler
* fix linting
* fix e2e test
* wait less in e2e test
* fix: don't ignore failed events in handlers
* fix: don't ignore failed events in handlers
* faster requeues
* question
* fix retries
* fix retries
* retry
* don't instance ids query
* revert handler_projection
* statements can be nil
* cleanup
* make unit tests pass
* add comments
* add comments
* lint
* spool only active instances
* feat(config): handle inactive instances
* customizable HandleInactiveInstances
* call inactive instances quota webhooks
* test: handling with and w/o inactive instances
* omit retrying noop statements
* docs: describe projection options
* enable global handling of inactive instances
* self review
* requeue quota notifications every 5m
* remove caos_errors reference
* fix comment styles
* make handlers package flat
* fix linting
* fix repeating quota notifications
* test with more usage
* debug log channel init failures
2023-03-28 22:09:06 +00:00
Miguel Cabrerizo
1b9cea0e0c
feat: add Help/Support e-mail for instance/org ( #5445 )
...
feat: help and support email in privacy policy
2023-03-28 21:36:52 +02:00
Elio Bischof
62bd606593
feat: enable handling projections for inactive instances ( #5523 )
...
* fix: don't ignore failed events in handlers
* question
* fix retries
* don't instance ids query
* statements can be nil
* make unit tests pass
* add comments
* spool only active instances
* feat(config): handle inactive instances
* customizable HandleInactiveInstances
* test: handling with and w/o inactive instances
* docs: describe projection options
* enable global handling of inactive instances
* accept NowFunc, not Clock interface
* add comment about stringer usage
* remove enum stringer implementations
* fix enum format types
* Update internal/eventstore/repository/mock/repository.mock.impl.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
---------
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2023-03-27 12:34:01 +00:00
Stefan Benz
41ff0bbc63
feat: ldap provider login ( #5448 )
...
Add the logic to configure and use LDAP provider as an external IDP with a dedicated login GUI.
2023-03-24 15:18:56 +00:00
Livio Spring
fca6dd9613
fix: reduce correct type for jwt idps ( #5519 )
2023-03-22 15:46:59 +00:00
Livio Spring
1896f13952
fix: use idToken for mapping when using old configs ( #5458 )
...
* fix: use idToken for mapping when using old configs
* fix events and add tests
2023-03-16 16:47:22 +01:00
Livio Spring
5a307afe62
feat: add azure provider templates ( #5441 )
...
Adds possibility to manage and use Microsoft Azure template based providers
2023-03-15 07:48:37 +01:00
Elio Bischof
e00cc187fa
fix: make user creation errors helpful ( #5382 )
...
* fix: make user creation errors helpful
* fix linting and unit testing errors
* fix linting
* make zitadel config reusable
* fix human validations
* translate ssr errors
* make zitadel config reusable
* cover more translations for ssr
* handle email validation message centrally
* fix unit tests
* fix linting
* align signatures
* use more precise wording
* handle phone validation message centrally
* fix: return specific profile errors
* docs: edit comments
* fix unit tests
---------
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2023-03-14 19:20:38 +00:00
Livio Spring
c0843e6b4c
feat: add gitlab provider templates ( #5405 )
...
* feat(api): add google provider template
* refactor reduce functions
* handle removed event
* linting
* fix projection
* feat(api): add generic oauth provider template
* feat(api): add github provider templates
* feat(api): add github provider templates
* fixes
* proto comment
* fix filtering
* requested changes
* feat(api): add generic oauth provider template
* remove wrongly committed message
* increase budget for angular build
* fix linting
* fixes
* fix merge
* fix merge
* fix projection
* fix merge
* updates from previous PRs
* enable github providers in login
* fix merge
* fix test and add github styling in login
* cleanup
* feat(api): add gitlab provider templates
* fix: merge
* fix display of providers in login
* implement gitlab in login and make prompt `select_account` optional since gitlab can't handle it
* fix merge
* fix merge and add tests for command side
* requested changes
* requested changes
* Update internal/query/idp_template.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* fix merge
* requested changes
---------
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2023-03-13 17:34:29 +01:00
Livio Spring
3042d7ef5c
feat: add github provider template ( #5334 )
...
Adds possibility to manage and use GitHub (incl. Enterprise Server) template based providers
2023-03-08 10:17:28 +00:00
Livio Spring
b2786d8c68
fix: handling of (old) IDPConfigChangedEvent projection ( #5384 )
2023-03-07 11:35:47 +01:00
Livio Spring
2efa305e10
fix: use of generic oauth provider ( #5345 )
...
Adds a id_attribute to the GenericOAuthProvider, which is used to map the external User. Further mapping can be done in actions by using the `rawInfo` of the new `ctx.v1.providerInfo` field.
2023-03-03 10:38:49 +00:00
Livio Spring
48f9815b7c
feat(login): use new IDP templates ( #5315 )
...
The login uses the new template based IDPs with backwards compatibility for old IDPs
2023-02-28 21:20:58 +01:00
Silvan
e38abdcdf3
perf: query data AS OF SYSTEM TIME
( #5231 )
...
Queries the data in the storage layser at the timestamp when the call hit the API layer
2023-02-27 22:36:43 +01:00
Livio Spring
80003939ad
feat(api): add oidc and jwt provider template ( #5290 )
...
Adds possibility to manage OIDC and JWT template based providers
2023-02-27 16:32:18 +01:00
Livio Spring
737d14e81b
feat(api): add generic oauth provider template ( #5260 )
...
adds functionality to manage templates based OIDC IDPs
2023-02-24 15:16:06 +01:00
Livio Spring
40e7356f3e
feat(api): add google provider template ( #5247 )
...
add functionality to manage templates based Google IDP
2023-02-21 17:18:28 +00:00
Stefan Benz
586495a0be
feat: add management for ldap idp template ( #5220 )
...
Add management functionality for LDAP idps with templates and the basic functionality for the LDAP provider, which can then be used with a separate login page in the future.
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-02-15 08:14:59 +00:00
Elio Bischof
681541f41b
feat: add quotas ( #4779 )
...
adds possibilities to cap authenticated requests and execution seconds of actions on a defined intervall
2023-02-15 02:52:11 +01:00
Stefan Benz
3616b6b028
feat(api): allow specifying access_token type (opaque/JWT) for service users ( #5150 )
...
Add functionality to configure the access token type on the service accounts to provide the oidc library with the necessary information to create the right type of access token.
2023-02-08 08:06:34 +00:00
Stefan Benz
e2fdd3f077
feat: support client_credentials for service users ( #5134 )
...
Request an access_token for service users with OAuth 2.0 Client Credentials Grant. Added functionality to generate and remove a secret on service users.
2023-01-31 19:52:47 +00:00
Stefan Benz
19621acfd3
feat: add notification policy and password change message ( #5065 )
...
Implementation of new notification policy with functionality to send email when a password is changed
2023-01-25 09:49:41 +01:00
Livio Spring
d21bb902f1
fix: push timeout ( #4882 ) ( #4885 )
...
* push with timeout
* test: config for eventstore
(cherry picked from commit b9156da76d
)
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2022-12-15 09:40:13 +00:00
Livio Spring
632639ae7f
feat: enable iframe use ( #4766 )
...
* feat: enable iframe use
* cleanup
* fix mocks
* fix linting
* docs: add iframe usage to solution scenarios configurations
* improve api
* feat(console): security policy
* description
* remove unnecessary line
* disable input button and urls when not enabled
* add image to docs
Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-12-14 07:17:36 +01:00
Silvan
e7137dba60
fix(projection): new version of oidc_settings ( #4811 )
...
There was a field delete some commits back but the projection version was not updated, that's why we update now
2022-12-02 12:54:28 +00:00
Silvan
f3e6f3b23b
feat: remove org ( #4148 )
...
* feat(command): remove org
* refactor: imports, unused code, error handling
* reduce org removed in action
* add org deletion to projections
* add org removal to projections
* add org removal to projections
* org removed projection
* lint import
* projections
* fix: table names in tests
* fix: table names in tests
* logging
* add org state
* fix(domain): add Owner removed to object details
* feat(ListQuery): add with owner removed
* fix(org-delete): add bool to functions to select with owner removed
* fix(org-delete): add bools to user grants with events to determine if dependencies lost owner
* fix(org-delete): add unit tests for owner removed and org removed events
* fix(org-delete): add handling of org remove for grants and members
* fix(org-delete): correction of unit tests for owner removed
* fix(org-delete): update projections, unit tests and get functions
* fix(org-delete): add change date to authnkeys and owner removed to org metadata
* fix(org-delete): include owner removed for login names
* fix(org-delete): some column fixes in projections and build for queries with owner removed
* indexes
* fix(org-delete): include review changes
* fix(org-delete): change user projection name after merge
* fix(org-delete): include review changes for project grant where no project owner is necessary
* fix(org-delete): include auth and adminapi tables with owner removed information
* fix(org-delete): cleanup username and orgdomain uniqueconstraints when org is removed
* fix(org-delete): add permissions for org.remove
* remove unnecessary unique constraints
* fix column order in primary keys
* fix(org-delete): include review changes
* fix(org-delete): add owner removed indexes and chang setup step to create tables
* fix(org-delete): move PK order of instance_id and change added user_grant from review
* fix(org-delete): no params for prepareUserQuery
* change to step 6
* merge main
* fix(org-delete): OldUserName rename to private
* fix linting
* cleanup
* fix: remove org test
* create prerelease
* chore: delete org-delete as prerelease
Co-authored-by: Stefan Benz <stefan@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
Co-authored-by: Stefan Benz <46600784+stebenz@users.noreply.github.com>
2022-11-30 17:01:17 +01:00
Livio Spring
78ae64471a
fix: improve performance by reducing full table scans ( #4684 )
...
* use instance id on update in projections
* create index on domain in instance_domain projection
* add missing instanceID filter to app queries
2022-11-10 11:59:33 +01:00
Livio Spring
41c043bcd9
fix: remove userid unique constraint and fix user list query ( #4632 )
...
* fix: remove userid unique constraint and fix user list query
* fix: improve instances query
* improve user queries
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2022-11-07 10:33:22 +01:00
Livio Spring
c791f6de58
fix: improve startup times by initializing projection tables during setup ( #4642 )
...
* fix: improve startup times by initializing projections table during setup
* add missing file
2022-11-04 09:21:58 +00:00
Livio Spring
d721f725fd
fix: instance remove ( #4602 )
2022-10-26 13:06:48 +00:00
Stefan Benz
c2a5b785fb
feat: instance remove ( #4345 )
...
* feat(instance): add remove instance event with projections cleanup
* fix(instance): corrected used id to clean up projections
* fix merge
* fix: correct unit test projection names
* fix: current sequence of lists and query for ensuring keypair based projections
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-10-20 14:36:52 +02:00
Livio Spring
b0b1e94090
feat(login): additionally use email/phone for authentication ( #4563 )
...
* feat: add ability to disable login by email and phone
* feat: check login by email and phone
* fix: set verified email / phone correctly on notify users
* update projection version
* fix merge
* fix email/phone verified reduce tests
* fix user tests
* loginname check
* cleanup
* fix: update user projection version to handle fixed statement
2022-10-17 19:19:15 +00:00
Livio Spring
bffb10a4b4
feat: allow domain discovery for unknown usernames ( #4484 )
...
* fix: wait for projection initialization to be done
* feat: allow domain discovery for unknown usernames
* fix linting
* Update console/src/assets/i18n/de.json
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
* Update console/src/assets/i18n/en.json
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
* Update console/src/assets/i18n/it.json
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
* Update console/src/assets/i18n/fr.json
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
* fix zh i18n text
* fix projection table name
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-10-06 13:30:14 +02:00
Stefan Benz
2957407b5b
fix: correct oidcsettings management ( #4413 )
...
* fix(oidcsettings): corrected projection, unittests and added the add endpoint
* fix(oidcsettings): corrected default handling and instance setup
* fix: set oidc settings correctly in console
* cleanup
* e2e test
* improve e2e test
* lint e2e
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-09-27 12:53:49 +02:00
Stefan Benz
b32c02a39b
feat(instance): add functionality to update instance ( #4440 )
...
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-09-27 06:58:50 +00:00
Silvan
2bc19f55b5
fix(projections): unique index names ( #4439 )
2022-09-22 15:18:52 +02:00