Trong Huu Nguyen
3465d8aef3
refactor(config): clean up tests
2024-08-23 13:55:49 +02:00
Trong Huu Nguyen
f9761c3437
test(config): add some more cases, remove unneeded parameter
2024-07-02 21:58:14 +02:00
Trong Huu Nguyen
f94d81aed7
test(config): add missing tests
2024-06-27 09:54:29 +02:00
Trong Huu Nguyen
d7b0d93f11
refactor: split out config again
2024-06-26 15:32:38 +02:00
Trong Huu Nguyen
d69cf79664
refactor: reduce noisy config logs
...
Fixes #262 .
2024-06-26 14:51:05 +02:00
Trong Huu Nguyen
16ccb3a6be
feat(config): add explicit toggle for legacy cookies
2024-06-26 12:20:05 +02:00
Trong Huu Nguyen
fc1454fcbb
feat(config) support samesite cookie attribute
2024-04-24 14:47:18 +02:00
Trong Huu Nguyen
e71e4a2fda
feat(handler/reverseproxy): add toggle for access logs
2023-12-20 08:25:35 +01:00
Trong Huu Nguyen
3f7af9e232
chore(config): set new default value for idporten acr
2023-12-12 09:12:41 +01:00
Trong Huu Nguyen
6d32363d13
feat(config): drop dirty modifier from version string
2023-11-29 09:21:04 +01:00
Trong Huu Nguyen
b3a7dbf081
refactor(otel): move configuration
2023-11-24 16:52:05 +01:00
Trong Huu Nguyen
b910d3e65a
feat(config): redis username and password flags overrides uri
2023-10-12 08:21:34 +02:00
Trong Huu Nguyen
f246fc7975
refactor(openid): move acr to own package
2023-10-11 14:25:12 +02:00
Trong Huu Nguyen
320176d48b
refactor(config): consolidate, don't parse/bind/load flags twice
2023-10-11 14:24:19 +02:00
Trong Huu Nguyen
6dbc747aad
feat(config): enable refresh tokens and automatic refreshing by default, increase default session lifetime
2023-10-11 14:16:53 +02:00
Trong Huu Nguyen
8bbd947d5b
feat(config): add support for Redis URI
2023-10-10 14:48:50 +02:00
Trong Huu Nguyen
91cd58d18b
docs: update sections on autologin and sessions
2023-10-03 14:21:09 +02:00
Trong Huu Nguyen
c4911b1344
feat(session): add feature toggle for automatic refreshing
2023-09-15 09:08:42 +02:00
Trong Huu Nguyen
4a72a01496
feat(server): support wait before triggering graceful shutdown
2023-09-06 15:23:11 +02:00
Trong Huu Nguyen
7987ad767e
feat(config): allow specifying upstream ip and port separately
2023-08-17 08:41:53 +02:00
Trong Huu Nguyen
e7799204b2
feat(openid): harden id_token validation
2023-08-15 21:30:41 +02:00
Trong Huu Nguyen
46852be025
feat(openid): prepare acr mappings for migration to new idporten
2023-05-25 15:54:29 +02:00
Trong Huu Nguyen
350d7ff780
feat(cookie): allow configuration of name prefix
...
This is to alleviate issues with deployments on different
subdomains using overlapping cookie names where browsers
behave unpredictably.
2023-05-08 10:23:27 +02:00
Trong Huu Nguyen
2a0c376c4b
feat(openid): validate acr in id_token if sent in auth request
2023-04-29 10:27:23 +02:00
Trong Huu Nguyen
9eeb6f5e96
feat(router): root path for sso server should redireect to login
2023-04-13 14:30:21 +02:00
Trong Huu Nguyen
ec4ac2b8e9
fix(redis): set ConnMaxIdleTime, not ConnMaxLifetime
2023-03-29 21:43:11 +02:00
Trong Huu Nguyen
e761810630
feat(redis): allow configuration of idle connection timeout
2023-03-29 09:55:17 +02:00
Trong Huu Nguyen
07cf8e12b3
feat(cookie): support overriding session cookie name
2023-03-01 11:27:26 +01:00
Trong Huu Nguyen
3e93423464
refactor(sso/server): redirect requests for wildcard routes to default URL
2023-02-22 10:19:26 +01:00
Trong Huu Nguyen
9074547163
docs: clarifications for refresh behaviour
2023-02-21 15:32:43 +01:00
Trong Huu Nguyen
925a1c70e7
fix(config): require redis when sso is enabled
2023-02-21 14:54:29 +01:00
Trong Huu Nguyen
473e4a95a7
refactor: remove loginstatus
...
Loginstatus is no longer needed with the SSO setup.
Fixes #50 .
2023-02-10 14:58:17 +01:00
Trong Huu Nguyen
c81297c401
build(deps): various bumps, use go-redis v9
2023-02-10 14:58:15 +01:00
Trong Huu Nguyen
c8f148d892
refactor(handler/error): remove custom redirect
...
Reduce the risk of exposing oauth query parameters in "dirty dancing" attacks.
2023-02-10 14:58:14 +01:00
Trong Huu Nguyen
42dcba8367
refactor: replace relative canonical redirect with handler
...
This also ensure that we clean any urls that may stem from user input (e.g.
url parameter or login cookie) before performing redirects.
2023-02-10 14:58:14 +01:00
Trong Huu Nguyen
3d08d0b4b0
feat: initial skeleton setup for SSO mode
2023-02-10 14:57:56 +01:00
Trong Huu Nguyen
185485a6fe
feat(handler/autologin): use doublestar library for nested path matching
...
Fixes #54 .
2022-11-24 11:36:54 +01:00
Trong Huu Nguyen
aaaaaaa38d
feat(session): add session inactivity timeout feature
...
Fixes #52 .
2022-09-22 10:03:17 +02:00
Trong Huu Nguyen
55a5f357d5
chore: remove metadata rollout toggle
2022-09-21 09:41:28 +02:00
Trong Huu Nguyen
843bf5dfcd
refactor(handler/error): rename config variable to match intention
2022-09-21 09:39:57 +02:00
Trong Huu Nguyen
b4eecfc663
fix(handler/autologin): only trigger for GET requests
2022-09-12 12:33:42 +02:00
Trong Huu Nguyen
af48778bf7
fix(session/handler): lock metadata operations behind feature gate until rollout
2022-08-29 10:00:43 +02:00
Trong Huu Nguyen
d5bbca9897
feat: rudimentary support for refresh tokens
2022-08-26 14:32:39 +02:00
Trong Huu Nguyen
5a50ba7c3a
feat: support multiple ingresses
...
Replace hardcoded callback URLs with dynamic generation
of URLs based on incoming requests. These are validated against
a pre-registered list of ingresses for which Wonderwall is considered
authorative for.
We also preserve the cookie behaviour; the most specific ingress path
and domain is used for the cookies.
The `url` package has been moved to the `handler` package, and its
implementation refactored slightly for readability and DRY.
2022-08-17 20:43:56 +02:00
Trong Huu Nguyen
4646c36b74
refactor(autologin): skip -> ignore
2022-07-21 12:50:55 +02:00
Trong Huu Nguyen
d79f31c18d
refactor(autologin): use glob-style matching instead of regex
...
Regexes are powerful, but completely overkill and error-prone for this
use-case. So instead, we'll use path.Match with its simpler glob-style
patterns.
2022-07-21 12:01:30 +02:00
Trong Huu Nguyen
13f1713fc2
refactor(config): move loading and setup into init
2022-07-20 11:21:54 +02:00
Trong Huu Nguyen
eac2d5789d
refactor: passthrough for consistency in openid configuration
2022-07-20 09:58:49 +02:00
Trong Huu Nguyen
3e62683cad
refactor: use pointer receivers when possible
2022-07-19 19:24:28 +02:00
Trong Huu Nguyen
4ab07e9dc2
refactor: clean up logging
2022-07-19 08:39:02 +02:00