Tim Möhlmann
ad9422a7d0
fix(crypto): check for nil client secret ( #7729 )
...
When creating an app without secret or other type of authentication method,
like JWT, and the authentication type is switched afterwards the app would remain without generated secret.
If then client authentication with secret is attempted, for example on the token endpoint, the handler would panic in the crypto.CompareHash function on the nile pointer to the CryptoValue.
This fix introduces a nil pointer check in crypt.CompareHash and returns a error.
The issue was reported over discord: https://discord.com/channels/927474939156643850/1222971118730875020
Possible fix was suggested here: https://github.com/zitadel/zitadel/pull/6999#discussion_r1553503088
This bug only applies to zitadel versions <=2.49.1.
2024-04-09 08:44:52 +02:00
Tim Möhlmann
f680dd934d
refactor: rename package errors to zerrors ( #7039 )
...
* chore: rename package errors to zerrors
* rename package errors to gerrors
* fix error related linting issues
* fix zitadel error assertion
* fix gosimple linting issues
* fix deprecated linting issues
* resolve gci linting issues
* fix import structure
---------
Co-authored-by: Elio Bischof <elio@zitadel.com>
2023-12-08 15:30:55 +01:00
Tim Möhlmann
4589ddad4a
feat: integrate passwap for human user password hashing ( #6196 )
...
* feat: use passwap for human user passwords
* fix tests
* passwap config
* add the event mapper
* cleanup query side and api
* solve linting errors
* regression test
* try to fix linter errors again
* pass systemdefaults into externalConfigChange migration
* fix: user password set in auth view
* pin passwap v0.2.0
* v2: validate hashed password hash based on prefix
* resolve remaining comments
* add error tag and translation for unsupported hash encoding
* fix unit test
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-07-14 09:49:57 +03: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
Stefan Benz
bc9a85daf3
feat: V2 alpha import and export of organizations ( #3798 )
...
* feat(import): add functionality to import data into an instance
* feat(import): move import to admin api and additional checks for nil pointer
* fix(export): export implementation with filtered members and grants
* fix: export and import implementation
* fix: add possibility to export hashed passwords with the user
* fix(import): import with structure of v1 and v2
* docs: add v1 proto
* fix(import): check im imported user is already existing
* fix(import): add otp import function
* fix(import): add external idps, domains, custom text and messages
* fix(import): correct usage of default values from login policy
* fix(export): fix renaming of add project function
* fix(import): move checks for unit tests
* expect filter
* fix(import): move checks for unit tests
* fix(import): move checks for unit tests
* fix(import): produce prerelease from branch
* fix(import): correctly use provided user id for machine user imports
* fix(import): corrected otp import and added guide for export and import
* fix: import verified and primary domains
* fix(import): add reading from gcs, s3 and localfile with tracing
* fix(import): gcs and s3, file size correction and error logging
* Delete docker-compose.yml
* fix(import): progress logging and count of resources
* fix(import): progress logging and count of resources
* log subscription
* fix(import): incorporate review
* fix(import): incorporate review
* docs: add suggestion for import
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
* fix(import): add verification otp event and handling of deleted but existing users
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
Co-authored-by: Fabienne <fabienne.gerschwiler@gmail.com>
Co-authored-by: Silvan <silvan.reusser@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
2022-07-28 13:42:35 +00:00
Florian Forster
fa9f581d56
chore(v2): move to new org ( #3499 )
...
* chore: move to new org
* logging
* fix: org rename caos -> zitadel
Co-authored-by: adlerhurst <silvan.reusser@gmail.com>
2022-04-26 23:01:45 +00:00
Livio Amstutz
8a5badddf6
feat: Login, OP Support and Auth Queries ( #177 )
...
* fix: change oidc config
* fix: change oidc config secret
* begin models
* begin repo
* fix: implement grpc app funcs
* fix: add application requests
* fix: converter
* fix: converter
* fix: converter and generate clientid
* fix: tests
* feat: project grant aggregate
* feat: project grant
* fix: project grant check if role existing
* fix: project grant requests
* fix: project grant fixes
* fix: project grant member model
* fix: project grant member aggregate
* fix: project grant member eventstore
* fix: project grant member requests
* feat: user model
* begin repo
* repo models and more
* feat: user command side
* lots of functions
* user command side
* profile requests
* commit before rebase on user
* save
* local config with gopass and more
* begin new auth command (user centric)
* Update internal/user/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/address.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/address.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/mfa.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/mfa.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/model/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/model/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/user_test.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/eventstore_mock_test.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* changes from mr review
* save files into basedir
* changes from mr review
* changes from mr review
* move to auth request
* Update internal/usergrant/repository/eventsourcing/cache.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* Update internal/usergrant/repository/eventsourcing/cache.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* changes requested on mr
* fix generate codes
* fix return if no events
* password code
* email verification step
* more steps
* lot of mfa
* begin tests
* more next steps
* auth api
* auth api (user)
* auth api (user)
* auth api (user)
* differ requests
* merge
* tests
* fix compilation error
* mock for id generator
* Update internal/user/repository/eventsourcing/model/password.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* requests of mr
* check email
* begin separation of command and query
* otp
* change packages
* some cleanup and fixes
* tests for auth request / next steps
* add VerificationLifetimes to config and make it run
* tests
* fix code challenge validation
* cleanup
* fix merge
* begin view
* repackaging tests and configs
* fix startup config for auth
* add migration
* add PromptSelectAccount
* fix copy / paste
* remove user_agent files
* fixes
* fix sequences in user_session
* token commands
* token queries and signout
* fix
* fix set password test
* add token handler and table
* handle session init
* add session state
* add user view test cases
* change VerifyMyMfaOTP
* some fixes
* fix user repo in auth api
* cleanup
* add user session view test
* fix merge
* begin oidc
* user agent and more
* config
* keys
* key command and query
* add login statics
* key handler
* start login
* login handlers
* lot of fixes
* merge oidc
* add missing exports
* add missing exports
* fix some bugs
* authrequestid in htmls
* getrequest
* update auth request
* fix userid check
* add username to authrequest
* fix user session and auth request handling
* fix UserSessionsByAgentID
* fix auth request tests
* fix user session on UserPasswordChanged and MfaOtpRemoved
* fix MfaTypesSetupPossible
* handle mfa
* fill username
* auth request query checks new events
* fix userSessionByIDs
* fix tokens
* fix userSessionByIDs test
* add user selection
* init code
* user code creation date
* add init user step
* add verification failed types
* add verification failures
* verify init code
* user init code handle
* user init code handle
* fix userSessionByIDs
* update logging
* user agent cookie
* browserinfo from request
* add DeleteAuthRequest
* add static login files to binary
* add login statik to build
* move generate to separate file and remove statik.go files
* remove static dirs from startup.yaml
* generate into separate namespaces
* merge master
* auth request code
* auth request type mapping
* fix keys
* improve tokens
* improve register and basic styling
* fix ailerons font
* improve password reset
* add audience to token
* all oidc apps as audience
* fix test nextStep
* fix email texts
* remove "not set"
* lot of style changes
* improve copy to clipboard
* fix footer
* add cookie handler
* remove placeholders
* fix compilation after merge
* fix auth config
* remove comments
* typo
* use new secrets store
* change default pws to match default policy
* fixes
* add todo
* enable login
* fix db name
* Auth queries (#179 )
* my usersession
* org structure/ auth handlers
* working user grant spooler
* auth internal user grants
* search my project orgs
* remove permissions file
* my zitadel permissions
* my zitadel permissions
* remove unused code
* authz
* app searches in view
* token verification
* fix user grant load
* fix tests
* fix tests
* read configs
* remove unused const
* remove todos
* env variables
* app_name
* working authz
* search projects
* global resourceowner
* Update internal/api/auth/permissions.go
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
* Update internal/api/auth/permissions.go
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
* model2 rename
* at least it works
* check token expiry
* search my user grants
* remove token table from authz
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
* fix test
* fix ports and enable console
Co-authored-by: Fabiennne <fabienne.gerschwiler@gmail.com>
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
Co-authored-by: Silvan <silvan.reusser@gmail.com>
2020-06-05 07:50:04 +02:00
Livio Amstutz
effc2c23c2
feat: add auth command side ( #107 )
...
* fix: query tests
* fix: use prepare funcs
* fix: go mod
* fix: generate files
* fix(eventstore): tests
* fix(eventstore): rename modifier to editor
* fix(migrations): add cluster migration,
fix(migrations): fix typo of host in clean clsuter
* fix(eventstore): move health
* fix(eventstore): AggregateTypeFilter aggregateType as param
* code quality
* fix: go tests
* feat: add member funcs
* feat: add member model
* feat: add member events
* feat: add member repo model
* fix: better error func testing
* fix: project member funcs
* fix: add tests
* fix: add tests
* feat: implement member requests
* fix: merge master
* fix: merge master
* fix: read existing in project repo
* fix: fix tests
* feat: add internal cache
* feat: add cache mock
* fix: return values of cache mock
* feat: add project role
* fix: add cache config
* fix: add role to eventstore
* fix: use eventstore sdk
* fix: use eventstore sdk
* fix: add project role grpc requests
* fix: fix getby id
* fix: changes for mr
* fix: change value to interface
* feat: add app event creations
* fix: searchmethods
* Update internal/project/model/project_member.go
Co-Authored-By: Silvan <silvan.reusser@gmail.com>
* fix: use get project func
* fix: append events
* fix: check if value is string on equal ignore case
* fix: add changes test
* fix: add go mod
* fix: add some tests
* fix: return err not nil
* fix: return err not nil
* fix: add aggregate funcs and tests
* fix: add oidc aggregate funcs and tests
* fix: add oidc
* fix: add some tests
* fix: tests
* feat: eventstore repository
* fix: remove gorm
* version
* feat: pkg
* feat: eventstore without eventstore-lib
* rename files
* gnueg
* fix: global model
* feat: add global view functions
* feat(eventstore): sdk
* fix(eventstore): rename app to eventstore
* delete empty test
* fix(models): delete unused struct
* feat(eventstore): overwrite context data
* fix: use global sql config
* fix: oidc validation
* fix: generate client secret
* fix: generate client id
* fix: test change app
* fix: deactivate/reactivate application
* fix: change oidc config
* fix: change oidc config secret
* begin models
* begin repo
* fix: implement grpc app funcs
* fix: add application requests
* fix: converter
* fix: converter
* fix: converter and generate clientid
* fix: tests
* feat: project grant aggregate
* feat: project grant
* fix: project grant check if role existing
* fix: project grant requests
* fix: project grant fixes
* fix: project grant member model
* fix: project grant member aggregate
* fix: project grant member eventstore
* fix: project grant member requests
* feat: user model
* begin repo
* repo models and more
* feat: user command side
* lots of functions
* user command side
* profile requests
* commit before rebase on user
* save
* local config with gopass and more
* begin new auth command (user centric)
* Update internal/user/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/address.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/address.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/email.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/mfa.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/mfa.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/password.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/phone.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/model/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/model/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/usergrant/repository/eventsourcing/user_grant.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/user_test.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* Update internal/user/repository/eventsourcing/eventstore_mock_test.go
Co-Authored-By: Livio Amstutz <livio.a@gmail.com>
* changes from mr review
* save files into basedir
* changes from mr review
* changes from mr review
* move to auth request
* Update internal/usergrant/repository/eventsourcing/cache.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* Update internal/usergrant/repository/eventsourcing/cache.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* changes requested on mr
* fix generate codes
* fix return if no events
* password code
* email verification step
* more steps
* lot of mfa
* begin tests
* more next steps
* auth api
* auth api (user)
* auth api (user)
* auth api (user)
* differ requests
* merge
* tests
* fix compilation error
* mock for id generator
* Update internal/user/repository/eventsourcing/model/password.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* Update internal/user/repository/eventsourcing/model/user.go
Co-authored-by: Silvan <silvan.reusser@gmail.com>
* requests of mr
* check email
* begin separation of command and query
* otp
* change packages
* some cleanup and fixes
* tests for auth request / next steps
* add VerificationLifetimes to config and make it run
* tests
* fix code challenge validation
* cleanup
* fix merge
* begin view
* repackaging tests and configs
* fix startup config for auth
* add migration
* add PromptSelectAccount
* fix copy / paste
* remove user_agent files
* fixes
* fix sequences in user_session
* token commands
* token queries and signout
* fix
* fix set password test
* add token handler and table
* handle session init
* add session state
* add user view test cases
* change VerifyMyMfaOTP
* some fixes
* fix user repo in auth api
* cleanup
* add user session view test
* fix merge
* fixes
* Update internal/auth/repository/eventsourcing/eventstore/auth_request.go
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
* Update internal/auth/repository/eventsourcing/eventstore/auth_request.go
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
* Update internal/auth/repository/eventsourcing/eventstore/auth_request.go
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
* Update internal/auth/repository/eventsourcing/eventstore/auth_request.go
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
* extract method usersForUserSelection
* add todo for policy check
* id on auth req
* fix enum name
Co-authored-by: Fabiennne <fabienne.gerschwiler@gmail.com>
Co-authored-by: adlerhurst <silvan.reusser@gmail.com>
Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
2020-05-18 12:06:36 +02:00
Livio Amstutz
e04c0116f5
refactor crypto tests
2020-03-30 11:26:02 +02:00
Livio Amstutz
59dc4dbe85
improve some functions
2020-03-30 09:28:00 +02:00
Livio Amstutz
90342ed872
feat: add crypto pkg
2020-03-23 07:06:44 +01:00