Commit graph

2174 commits

Author SHA1 Message Date
Firstyear 6b0c8be718 Ignore system users for UPG synthesiseation (#3297)
Our unix resolver would attempt the right thing to synthesise
user private groups on linux as these are an important security
boundary. However, it turns out that almost every distro has
botched their default system user accounts, and many are
installed with numeric-only UPGs that don't resolve. In the
case that later the user does attempt to fix that, because we
synthesised as UPG for the system account, the user trying to
add the UPG would now fail. In some cases this could cause
system updates to be prevented from installing.

This change limits UPG synth to user accounts only (uid > 1000)
which is the common uid boundary on unix-like platforms.
2024-12-21 17:22:02 +10:00
Firstyear caa8b2d7a6 Limit OAuth2 resumption to session (#3296)
OAuth2 session resumption was accidentally made a permanent cookie
which led to continuing issues with it causing invalid redirections
after login. Make this a session only cookie.
2024-12-21 17:21:59 +10:00
Firstyear ab8ef8d977 Use specific errors for intent token revoked (#3291)
Rather than the generic 'invalid state' error, we now return
proper site-specific errors for credential commit failures, with
error messages to explain what went wrong.
2024-12-21 17:14:51 +10:00
Firstyear d4a373365e Autocomplete password during reauth with TOTP (#3290)
During a re-auth flow, the password was not autocompleted once
totp was autocompleted. This is because in a normal login flow
the autocomplete is performed on the first login.html page,
but in a re-auth we skip that page.

This adds the proper handling to allow the pw to autofill
in the background once the TOTP is completed.
2024-12-21 17:14:51 +10:00
Firstyear 0d967b8dbe Add CORS headers to jwks and userinfo (#3283)
When using jwks from a single page application, the keys and
userinfo were unable to be retrieved due to missing cors headers.
2024-12-13 15:26:29 +10:00
William Brown c3dbf83312 Release 1.4.4 2024-12-03 15:55:10 +10:00
James Hodgkinson bc61225600 Check DNS on replication loop start not at task start (#3243) 2024-12-03 14:00:51 +10:00
Firstyear 2ee5f0ccc4 Work around systemd race condition (#3262)
Systemd reload can't handle us reloading so quickly which
causes "reload or restart" to always "restart" kanidm incorrectly.
2024-12-03 14:00:23 +10:00
Firstyear 7c82c951f5 Clear invalid tokens from unix resolver (#3256) 2024-12-03 14:00:23 +10:00
James Hodgkinson dafc98b1db Allow OAuth2 loopback redirects if the path matches (#3252) 2024-12-03 14:00:23 +10:00
Firstyear c5f8196666 Correctly display domain name on login (#3254) 2024-12-03 14:00:23 +10:00
Firstyear 24c95ff5ff Display account_id during success/deny paths in unixd (#3253) 2024-12-03 14:00:23 +10:00
George Wu a2119c54c5 s/idm_people_self_write_mail/idm_people_self_mail_write/g (#3250) 2024-11-30 11:25:39 +10:00
James Hodgkinson c464f0bd9e handle missing map_group setting in config (#3242) 2024-11-29 12:13:06 +10:00
micolous 2882967f54 owncloud: Add SameSite=Lax config for cross-domain auth (#3245) 2024-11-29 12:13:06 +10:00
James Hodgkinson d6f6a2671d Yaleman/issue3229 (#3239)
* Fix wrong success message on kanidm group set-entry-manager #3229
2024-11-25 09:39:18 +10:00
Firstyear 078625cbf9 Update to latest fido-mds-tool (#3230) 2024-11-22 17:03:57 +10:00
William Brown fb001765ae Release 1.4.3 2024-11-22 12:27:13 +10:00
Firstyear e04d0680a4 Warn when v2 options are used in v1 unixd config (#3228)
Options like map_group would fail silently when version=2 wasn't
set in our unix config. this detects that case and warns that it
is occuring.

To prevent this in the future, we deny unknown keys in v2 so that
if (when?) we add v3, new keys will cause an error.
2024-11-22 12:14:06 +10:00
Firstyear d058b8c053 Resolve UI Auth Loop with OAuth2 (#3226)
If an OAuth2 auth request resume cookie was present, and at the same
time the kani instance was restarted, the cookie would now fail
to validate on the instance. This caused the user to experience an auth
loop where after every authentication they would see an error *despite*
logging in correctly, and then a refresh would show the correct
apps page.

This removes the auth_req cookie correctly even if it fails to
deserialise.
2024-11-22 12:14:06 +10:00
Firstyear 2dd8891d51 Harden transport in pam unixd (#3227)
In some cases if the transport drops out from underneath unixd,
it can be difficult to diagnose and leads to inconsistent errors
and output such as prompting for a password multiple times when
it can't succeed.

This makes it clearer that the transport had an error, and it
denies the inflight authsession to prevent spurious password
prompts.
2024-11-22 12:14:06 +10:00
Firstyear abbce9edf3 Improve warning around invalid JWT deserialisation (#3224)
* Improve warning around invalid JWT deserialisation

* typo
2024-11-22 12:14:06 +10:00
George Wu 9bd1fe1481 Update and fix server config files in examples. (#3225) 2024-11-22 12:14:06 +10:00
George Wu f6d16ff08a Change CLI oauth2 command from set-display-name to set-displayname for consistency. (#3212)
* Change CLI domain command from set-display-name to set-displayname for consistency.

* Also fix CLI.
2024-11-22 12:14:06 +10:00
George Wu e4c6ca767e Add docs on customising Kanidm. (#3209)
* Add docs on customising Kanidm.

* Add more info about images that can be used.

* s/set-display-name/set-displayname/g
2024-11-22 12:14:06 +10:00
Georg 6458660a24 Correct spelling of occurred (#3222)
Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
2024-11-22 12:14:06 +10:00
Firstyear a6dcb960d7 UI/Feature polish (#3191)
Post release some small user issues arose

* Optimise the autofocus for logins with passkeys to limit clicks
* Sort login mechs by strength
* Fix cookies to persist between browser restarts
2024-11-10 14:06:08 +10:00
Firstyear a6ecff0caa Prevent Invalid MFA Reg States (#3194) 2024-11-10 14:06:08 +10:00
George Wu 54cea7a9b7 Change CSS for applications so SVG scales nicely in Firefox. (#3200) 2024-11-10 14:06:08 +10:00
Firstyear ed20725817 20241109 3185 max age (#3196) 2024-11-10 14:06:08 +10:00
Firstyear 69ceb6c4f7 Hoist max_age to prevent incorrect deserialisation (#3190) 2024-11-10 14:06:08 +10:00
William Brown ee5c382d8e Release 1.4.2 2024-11-08 14:20:27 +10:00
Firstyear 4f55b1cc33 Re-migrate all acps to force updating (#3184)
* Re-migrate all acps to force updating

* Update server/lib/src/server/migrations.rs

---------

Co-authored-by: James Hodgkinson <james@terminaloutcomes.com>
2024-11-08 14:19:10 +10:00
Firstyear c3e42ba257 security - low - fault in migrations (#3182)
A fault existed in the server's internal migration code, where attributes
that were multivalued would be merged rather than replaced in certain
contexts. This migration path is used for access controls, meaning that
on upgrades, attributes that were meant to be removed from access
controls or changes to access control target groups were not reflected
during the upgrade process.

This has a potentially low security impact as it may have allowed
users to change their name/displayname even if the administrator
had disable the name_self_write access control.
2024-11-07 14:33:11 +10:00
William Brown ad93202992 Release 1.4.1 2024-11-05 14:56:33 +10:00
Firstyear 99573f2b94 Correct missing CSP header (#3177) 2024-11-05 14:50:27 +10:00
Firstyear 78ced241eb Resolve pam services not always having a tty (#3176) 2024-11-05 11:06:57 +10:00
Firstyear 770efa80f0 Resolve incorrect handling of rhost in pam (#3171) 2024-11-03 10:13:50 +10:00
William Brown c297c3f5d9 Docker makefile latest 2024-11-01 12:18:05 +10:00
William Brown 26321bc6ed Release 1.4.0 2024-11-01 12:08:35 +10:00
CEbbinghaus d72b551d2f chore: Made oauth2 scopes required in CLI (#3165) 2024-11-01 12:05:51 +10:00
micolous e50e967880 More "choosing a domain" revision (#3161)
* More "choosing a domain" revision:

* Link to the domain rename process
* Add some hyphens to make things easier to read
* Move the OAuth 2.0 domain sharing guidance into the origin section
* Add DNS -> IP as a potential issue
* Discourage requesting public suffix list inclusion as a workaround

* Add "own hostname" section
2024-10-30 12:24:42 +10:00
George Wu daba216803 Update missing inputmode numeric when adding a new TOTP. (#3160) 2024-10-30 12:24:36 +10:00
Firstyear 8afdc065bb Improve OAuth2 authorisation ux (#3158)
- Resolve an issue where oauth2 could trigger the login page to
  incorrectly redirect to an oauth2 application instead of apps
- Add indication of what client application we are accessing
  if the session is not yet authenticated
2024-10-29 18:16:27 +10:00
Firstyear b8811c9eaf Fix attribute scim sync attribute naming (#3159) 2024-10-29 14:27:19 +10:00
George Wu 750932b322 Change to text input and use numeric mode for TOTP prompts. (#3154)
* Change to text input and use inputmode numeric for TOTP prompts.

* Fix some typos.
2024-10-29 09:29:53 +10:00
Firstyear 6232206d43 Fix release note date and typos (#3153) 2024-10-27 13:10:35 +10:00
William Brown b7ce4350e3 Release 1.4.0-pre 2024-10-27 10:50:09 +10:00
Firstyear 243a020bdb
Release Notes (#3149)
* Update RELEASE_NOTES.md
2024-10-27 00:46:25 +00:00
Firstyear 2e6d940691
Remove WASM (#3148)
liberal party took over, more cuts
2024-10-26 17:19:13 +10:00