kolaente
6847f44058
chore(openid): add more debug logging when retrieving token
2025-03-29 19:24:07 +01:00
kolaente
4ea3c01b5f
chore: add more debug logging when returning error
2025-03-29 18:21:34 +01:00
kolaente
5a93379d81
fix(ldap): update user name and email during login
2025-03-20 17:24:00 +01:00
kolaente
d585de77a4
fix(ldap): crop avatar when syncing
2025-03-20 17:19:58 +01:00
kolaente
164f2eab9d
feat(ldap): also look for username only when checking group membership
2025-03-19 22:16:12 +01:00
kolaente
f4b9a9cccd
feat(ldap): make member id attribute configurable
2025-03-19 22:15:50 +01:00
kolaente
e12ebfebed
feat(ldap): sync avatar from ldap
2025-03-18 18:28:54 +01:00
kolaente
99213c66ee
chore(openid): use general external team sync
2025-03-18 16:36:00 +00:00
kolaente
216df5bedc
feat(ldap): make group sync configurable
2025-03-18 16:36:00 +00:00
kolaente
a3b19a7b3c
feat(auth): refactor group sync
2025-03-18 16:36:00 +00:00
kolaente
c2f286437c
feat(auth): ldap group sync
2025-03-18 16:36:00 +00:00
kolaente
9f5c761fd9
chore(auth): rename error
2025-03-18 16:36:00 +00:00
kolaente
06851ca639
chore(auth): rename external team id find methods
2025-03-18 16:36:00 +00:00
kolaente
62beb3db2d
feat(auth): rename oidc_id to external_id
2025-03-18 16:36:00 +00:00
kolaente
12aba8e9b1
chore(openid): move openid team struct to openid package
2025-03-17 17:34:49 +01:00
kolaente
87cfe89441
feat(ldap): add tests
2025-03-16 18:23:55 +01:00
kolaente
91f9fe5b96
fix(ldap): return meaningful error when providing wrong credentials
2025-03-16 18:23:55 +01:00
Marc
f4a0c0ef31
feat(auth): sso fallback mapping ( #3068 )
...
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/3068
Reviewed-by: konrad <k@knt.li >
Co-authored-by: Marc <marc88@free.fr >
Co-committed-by: Marc <marc88@free.fr >
2025-03-02 15:21:09 +00:00
kolaente
4e93806a44
fix(auth): load oidc provider before trying to use it
...
Resolves https://kolaente.dev/vikunja/vikunja/issues/3067
2025-03-02 14:09:02 +01:00
kolaente
e9d9f04763
chore: improve debug logging
2025-02-03 17:42:17 +01:00
kolaente
f898bdaf2d
feat(auth): use config variable to check if we should verify tls
2025-01-28 09:59:08 +00:00
kolaente
03412dd358
feat(auth): verify ldap config before trying to connect
2025-01-28 09:59:08 +00:00
kolaente
d22c3fb19e
feat(auth): make ldap user filter configurable
2025-01-28 09:59:08 +00:00
kolaente
71cad7aa13
chore(auth): refactor creating users in openid and ldap
2025-01-28 09:59:08 +00:00
kolaente
38bb8de4f1
feat(auth): authenticate users via ldap
2025-01-28 09:59:08 +00:00
kolaente
090dd4b2f6
fix(user): do not allow changing name in settings when the user originates from an external auth provider
...
This improves the UX because it does not allow external users to change their name in Vikunja, since that change would be overridden once they log in again.
Resolves https://github.com/go-vikunja/vikunja/issues/357
2025-01-21 16:27:06 +01:00
kolaente
c9a68d3a63
fix(openid): lint
2024-12-11 17:10:41 +01:00
kolaente
4512045cbf
fix: check if all required keys are available when parsing openid configuration
...
Related to https://github.com/go-vikunja/vikunja/issues/371
2024-12-11 16:25:41 +01:00
kolaente
b8c4e0a91e
fix(openid): log error when config is still using array value
2024-11-18 12:16:38 +01:00
kolaente
05349ddb5c
feat!: config for auth providers now use a map instead of an array
...
The config values for openid providers now use a map with the provider as key instead of an array. For example before:
auth:
openid:
providers:
- name: foo
clientid: ...
now becomes:
auth:
openid:
providers:
foo:
clientid: ...
This allows us to read values for openid providers from files using the same syntax as everywhere and makes the configuration more predictable. It also allows configuring providers through env variables, though it is still required to set at least one value via the config file because Vikunja won't discover the provider otherwise.
2024-11-18 10:34:30 +01:00
kolaente
329de3aab3
chore(web): remove unused echo context
2024-08-29 16:20:39 +02:00
kolaente
2063da9eec
chore(web): move web handler package to Vikunja
2024-08-29 16:15:28 +02:00
kolaente
66e96322ea
fix: do not remove empty openid teams when none are present
...
Maybe resolves https://community.vikunja.io/t/empty-openid-team-cleanup-cron-error-removing-empty-openid-team-database-is-locked-error-when-exporting-data/2306/3
2024-04-25 14:21:31 +02:00
kolaente
0910d5d2f2
chore(auth): refactor removing empty openid teams to cron job
2024-03-11 17:20:05 +01:00
waza-ari
ffa82556e0
feat(teams): add public flags to teams to allow easier sharing with other teams ( #2179 )
...
Resolves #2173
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com >
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2179
Reviewed-by: konrad <k@knt.li >
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
2024-03-10 14:04:32 +00:00
renovate
d7fdefcead
chore(deps): update golangci/golangci-lint docker tag to v1.56.2 ( #2099 )
...
Co-authored-by: kolaente <k@knt.li >
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2099
Co-authored-by: renovate <renovatebot@kolaente.de >
Co-committed-by: renovate <renovatebot@kolaente.de >
2024-03-10 13:47:19 +00:00
waza-ari
d69fc28125
fix(openid): OIDC teams should not have admins ( #2161 )
...
This PR fixes an issue discussed in #2152 . Before this PR, the user who triggered team creation automatically got the admin flag set for this group, which makes perfect sense for the normal UI workflow. OIDC managed teams cannot be edited in Vikunja, and they're created automatically by the first user logging in having this team assigned. This PR therefore makes sure that OIDC managed team members do not receive the admin flag.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com >
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2161
Reviewed-by: konrad <k@knt.li >
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
2024-03-05 22:08:39 +00:00
waza-ari
a3154e805c
fix(auth): use (issuer, name) to check for uniqueness of oidc teams ( #2152 )
...
The change introduced in #2150 introduces a bug where a Team would be re-created every time a user logs in, as the check if a team already exists was based on both the unique `oidcID` and the `name`. This PR proposes to only base the check on the ID, as this should be unique.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com >
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2152
Reviewed-by: konrad <k@knt.li >
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de >
2024-03-04 20:26:45 +00:00
kolaente
379b0b24b3
fix(auth): test assertion
2024-03-02 15:38:01 +01:00
kolaente
a4a0ea973a
feat(auth): update team name in Vikunja when it was changed in the openid provider
2024-03-02 15:27:15 +01:00
kolaente
fc4303a778
chore(auth): add oidc suffix to openid team name in db
...
Related to https://kolaente.dev/vikunja/vikunja/issues/2150
2024-03-02 15:23:19 +01:00
kolaente
4f1f96f1e9
chore(auth): refactor openid team creation
2024-03-02 15:22:37 +01:00
viehlieb
ed4da96ab1
feat: assign users to teams via OIDC claims ( #1393 )
...
This change adds the ability to sync teams via a custom openid claim. Vikunja will automatically create and delete teams as necessary, it will also add and remove users when they log in. These teams are fully managed by Vikunja and cannot be updated by a user.
Co-authored-by: kolaente <k@knt.li >
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/1393
Resolves https://kolaente.dev/vikunja/vikunja/issues/1279
Resolves https://github.com/go-vikunja/vikunja/issues/42
Resolves https://kolaente.dev/vikunja/vikunja/issues/950
Co-authored-by: viehlieb <pf@pragma-shift.net >
Co-committed-by: viehlieb <pf@pragma-shift.net >
2024-03-02 08:47:10 +00:00
kolaente
30a2dcd04c
fix: lint
2024-01-28 15:27:14 +01:00
kolaente
ce53663a88
fix(openid): use the calculated redirect url when authenticating with openid providers
2024-01-28 12:41:35 +01:00
kolaente
a5a6aba7c8
fix(auth): don't reset user settings when updating name or email from external auth provider
...
Resolves https://github.com/go-vikunja/api/issues/102
2023-12-25 17:09:19 +01:00
kolaente
c05f51b923
chore(deps): update golangci-lint rules
2023-12-19 13:34:31 +01:00
kolaente
ab2eda4bd5
fix(openid): make sure usernames with spaces work
2023-11-13 11:38:24 +01:00
kolaente
e4c71123ef
fix: lint
2023-09-01 08:39:25 +02:00
kolaente
fb2a1c59db
feat(api tokens): check if a provided token matched a hashed on in the database
2023-09-01 08:36:15 +02:00