44 Commits

Author SHA1 Message Date
7a78b8e172 fix: change module name corresponding to version 2025-09-25 19:15:20 +02:00
efeca4a76f feat: custom jwt claims 2025-04-16 15:17:48 +02:00
fc86a5f594 chore: update go version to 1.24 2025-03-13 13:32:56 +01:00
63da219380 feat: introduce html mails (#2045) 2025-02-19 12:58:44 +01:00
c9684d1fe9 fix: create session in DB for old endpoints (#2052)
* fix: create session in DB for old endpoints

The old endpoints do not store the session in the DB, this leads to an unauthorized error in old hanko elements versions prior 1.0.0 when any endpoint is called that requires a session because they check if the session is stored in the DB.

* test: fix test
2025-02-14 21:00:38 +01:00
e93788d774 feat: use exact template names for email.send webhook types 2025-02-11 19:07:46 +01:00
5023a53980 feat: email i18n 2025-01-13 12:58:43 +01:00
e172e051fc fixes teamhanko/hanko#1624 (#1625)
uses configured cookie name in passcode handler

Co-authored-by: Wlad Meixner <hi@iamwlad.com>
2024-12-05 15:23:10 +01:00
9dbc62524a feat: Server side sessions (#1673)
* feat: add server side sessions

* feat: add lastUsed & admin endpoint

* feat: add session list to elements

* fix: fix public session endpoint

* chore: only store session info when enabled

* build: update go mod

* feat: add translations

* test: fix tests

* feat: change path

* feat: return userID on session validation endpoint

* feat: move all session endpoints to public router

* fix: add missing translation

* fix: add missing structs

* chore: align session persister with other persisters

* fix: use correct translation label

* chore: add db validator to session model

* feat: create server side session from cmd

* fix: fix review findings
2024-10-15 11:36:32 +02:00
38a11deffa fix: only use transaction connection in a transaction (#1598)
* fix: only use transaction connection in a transaction

* test: fix webhook tests
2024-08-28 11:56:09 +02:00
601ffaae92 Introduce Flowpilot - integration (#1532)
This pull request introduces the new Flowpilot system along with several new features and various improvements. The key enhancements include configurable authorization, registration, and profile flows, as well as the ability to enable and disable user identifiers (e.g., email addresses and usernames) and login methods.

---------

Co-authored-by: Frederic Jahn <frederic.jahn@hanko.io>
Co-authored-by: Lennart Fleischmann <lennart.fleischmann@hanko.io>
Co-authored-by: lfleischmann <67686424+lfleischmann@users.noreply.github.com>
Co-authored-by: merlindru <hello@merlindru.com>
2024-08-06 16:07:29 +02:00
def7ad37a0 [FEAT] disable email delivery (#1419)
* feat: add config to disable email delivery

* chore: update config schema

* docs: add new config parameter

* test: fix test

* fix: rename email webhook event

* docs: Update backend/docs/Config.md

Co-authored-by: Lennart Fleischmann <67686424+lfleischmann@users.noreply.github.com>

---------

Co-authored-by: Lennart Fleischmann <67686424+lfleischmann@users.noreply.github.com>
2024-04-18 15:15:02 +02:00
8ab246dc12 feat(jwt): add email claim to session JWT (#1404)
* add email claim which contains email address, is_verified and is_primary values
* cleanup some unused stuff

Closes: #1388

Co-authored-by: Stefan Jacobi <stefan.jacobi@adesso.de>
2024-03-25 15:25:02 +01:00
e028af8e5b fix(webhook): check for user email count BEFORE adding a new email to user 2024-01-30 14:56:45 +01:00
03bfef9d19 fix(email webhook): check if user already has an email
if user already has an email -> send EmailCreate Event
if user has no email -> send UserCreate Event
2024-01-30 11:18:59 +01:00
c9994bdc3a fix(review): fix review findings
* admin api: make email primary when user has no emails
* utils: move get updated user and webhook trigger to utils to reduce duplicated code
* events: remove unused user and email event - Check is replaced with string variant
* remove unused dtos
* fix tests after changes
* webhook tests: switch to test.Suite instead of TestPersister -> added deprecation annotation to test.NewPersister
* Email Verification: Fix trigger of webhook when email verification is enabled and a email is created but not validated

Closes: #692, #1051
2024-01-25 13:20:56 +01:00
4f3adb1634 fix: get session token from header for passcode finalization (#1124) 2023-11-01 10:15:27 +01:00
7ae10a4c4d fix: don't set cookie when jwt is set in header 2023-07-26 11:45:11 +02:00
bfd073013a fix: create audit logs with transaction where useful 2023-07-04 10:48:59 +02:00
b59709d369 refactor: use echo.HTTPError instead of redundant own type. This way the prometheus mw shoul register the correct error codes. 2023-06-19 14:48:45 +02:00
f192b001b2 fix: fix issue with login 2023-06-01 15:03:13 +02:00
ca5aa5ab32 fix: fix issue with adding emails 2023-06-01 15:02:04 +02:00
fdf665eabb Session events (#725)
* feat(frontend-sdk): introduce events
* feat(elements): change hanko-elements register function
2023-04-28 14:14:47 +02:00
500cc4e064 fix: remove manual settings of allowed headers 2023-03-09 12:00:13 +01:00
a820ccd3bb try: comment out Acces-Control-Expose-Header 2023-03-09 11:53:46 +01:00
f5adfed572 Merge branch 'main' into feat-basic-rate-limiting
# Conflicts:
#	backend/config/config.go
#	backend/handler/passcode.go
#	frontend/frontend-sdk/src/lib/client/PasscodeClient.ts
#	frontend/frontend-sdk/src/lib/client/PasswordClient.ts
#	frontend/frontend-sdk/tests/lib/client/PasswordClient.spec.ts
2023-01-25 11:08:29 +01:00
ca62cf421f feat: introduce hanko profile element and related api changes (#495)
* feat: introduce hanko profile element and related api changes
2023-01-25 10:55:23 +01:00
3dedce746c feat: make limits for passcode/password separately configurable. Document the changes. 2023-01-23 14:45:58 +01:00
79c07ec0b5 feat: init rate limiting. functional on passcode/init 2023-01-20 19:02:36 +01:00
3aef985fd9 fix: persisted passcode timestamps (#311)
Time.Now() uses local time but timezone information is lost on persisting
because pop timestamp columns are without timezone. On retrieval from the
DB the original timestamp is not wholly recoverable and leads to erroneous
comparisons (e.g. passcode expiry check). This commit changes that by
explicitly using UTC both on save and comparison.
2022-10-18 17:36:36 +02:00
6dfbd68896 Merge branch 'main' into add-audit-logs
# Conflicts:
#	backend/go.mod
#	backend/go.sum
2022-10-13 08:49:20 +02:00
b20582ecbe fix(hanko-frontend-sdk): access X-Auth-Token header during cross-doma… (#251)
* fix(hanko-frontend-sdk): access X-Auth-Token header during cross-domain operations only
2022-10-12 18:07:29 +02:00
2436d09610 Merge branch 'main' into add-audit-logs
# Conflicts:
#	backend/handler/passcode.go
2022-09-27 11:38:44 +02:00
b73067b07e chore: rename audit log client 2022-09-27 09:51:13 +02:00
c1e9da128a fix: send 401 when passcode is not found instead of 404 2022-09-19 09:38:07 +02:00
d71c0aa42a chore: rename some audit log types 2022-09-12 11:46:52 +02:00
f02bccb685 feat: add audit logs 2022-08-18 16:53:34 +02:00
067ca8d755 feat: handle auth-token header and create cross domain cookies (#135)
feat: handle auth-token header and create cross domain cookies
2022-07-28 14:35:44 +02:00
51bdf8f1f6 Merge branch 'main' into return-more-context-to-some-errors
# Conflicts:
#	backend/handler/passcode.go
2022-06-30 08:38:23 +02:00
c4a36ca989 chore: add more context to some http errors 2022-06-27 14:49:09 +02:00
0c5196eea1 fix: passcode max attempts are now enforced correctly 2022-06-23 16:04:16 +02:00
4de446475f fix: fix module path 2022-06-21 12:36:11 +02:00
3e46664406 feat: improve error logging 2022-06-15 17:24:54 +02:00
80048acd8f refactor: move backend files to its own directory 2022-06-09 14:36:00 +02:00