Trong Huu Nguyen
20e733d9f2
ci/dependabot: remove PR limit, add docker
2023-03-08 13:01:52 +01:00
Trong Huu Nguyen
da05c7808d
build: add trimpath and ldflags to trim resulting binary
2023-03-08 12:55:17 +01:00
Trong Huu Nguyen
3dc3c1dee5
feat(sso/server): return not found instead of redirect for wildcard handler
2023-03-08 12:53:25 +01:00
Trong Huu Nguyen
07cf8e12b3
feat(cookie): support overriding session cookie name
2023-03-01 11:27:26 +01:00
Trong Huu Nguyen
133d3fd855
refactor(middleware/logentry): ignore ping route
2023-03-01 10:11:37 +01:00
Trong Huu Nguyen
a375ac774d
feat(router): add ping route for health probes
2023-03-01 09:27:06 +01:00
dependabot[bot]
27bc5aee60
build(deps): bump honnef.co/go/tools from 0.4.0 to 0.4.2 ( #72 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-28 08:12:28 +01:00
dependabot[bot]
f720842e03
build(deps): bump github.com/stretchr/testify from 1.8.1 to 1.8.2 ( #73 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-28 08:04:38 +01:00
Trong Huu Nguyen
7c21af2d58
build: clean up dockerfile and compose setup, use distroless image
2023-02-27 14:13:57 +01:00
Trong Huu Nguyen
442e056b26
refactor(handler): inline error handler, remove unnecessary getters
2023-02-24 19:24:02 +01:00
Trong Huu Nguyen
f346e9e91d
refactor(router): use a more apt name for wildcard handler
2023-02-24 18:33:41 +01:00
Trong Huu Nguyen
5342913676
refactor: move cookie options to handler constructors
2023-02-24 18:21:36 +01:00
Trong Huu Nguyen
d5b603c98f
feat(router): add cors middleware for sso server
2023-02-23 14:30:55 +01:00
Trong Huu Nguyen
08c6e96670
refactor(session): wrap error for decrypt
2023-02-23 14:29:49 +01:00
Trong Huu Nguyen
b248dd8875
docs: add flags for sso configs
2023-02-22 10:24:06 +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
9ecfdb73ef
fix(handler): time-to-refresh in session metadata is disabled for sso
2023-02-22 10:11:39 +01:00
Trong Huu Nguyen
afc8fd6962
style: formatting
2023-02-21 15:37:48 +01:00
Trong Huu Nguyen
e7d411b5c9
build: add gofumt and Makefile target for formatting
2023-02-21 15:36:14 +01:00
Trong Huu Nguyen
2796e1c9bc
refactor(session): remove duplicate method, token expiry must be shorter than inactivity timeout
2023-02-21 15:34:50 +01:00
Trong Huu Nguyen
9074547163
docs: clarifications for refresh behaviour
2023-02-21 15:32:43 +01:00
Trong Huu Nguyen
ec572db957
refactor(session): remove internal method from Reader interface
2023-02-21 15:12:45 +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
492e0b5625
feat(sso/proxy): implement upstream reverseproxy with prerequisites
2023-02-21 14:50:51 +01:00
Trong Huu Nguyen
94a66fac2a
refactor(handler): extract path matcher for reuse
2023-02-21 14:45:14 +01:00
Trong Huu Nguyen
59a2e7b7a0
refactor(session): simplify AccessToken method, don't export methods that are only used within package
2023-02-21 14:40:27 +01:00
Trong Huu Nguyen
27897dad63
refactor(handler/standalone): use new sessionmanager, remove unneeded methods
2023-02-21 14:16:51 +01:00
Trong Huu Nguyen
5b33313ccb
feat(session): add GetOrRefresh method
2023-02-21 14:12:56 +01:00
Trong Huu Nguyen
7a52b0d1a3
refactor(handler/reverseproxy): require GetAccessToken from source instead of obsolete session handler
2023-02-21 13:31:06 +01:00
Trong Huu Nguyen
f4ae907a2b
refactor(handler/reverseproxy): clean up error handling
2023-02-21 13:30:29 +01:00
Trong Huu Nguyen
820fb733e6
refactor(session): separate handler into manager and reader, use session struct to avoid polluting exported methods
2023-02-21 13:25:07 +01:00
Trong Huu Nguyen
9d330d8395
deps: bump
2023-02-21 13:13:23 +01:00
Trong Huu Nguyen
49a90f3dbf
refactor(session/ticket): rename method for clarity, add doc comments, clean up error handling
2023-02-21 12:28:21 +01:00
Trong Huu Nguyen
db391a9e44
refactor(session/store): consolidate session errors and use multi-error wrapping
2023-02-21 10:06:44 +01:00
Trong Huu Nguyen
17f39f8c5f
feat(session/data): add more validation methods
2023-02-21 09:59:38 +01:00
Trong Huu Nguyen
94d4b1a524
refactor(session): extract external ID function to separate file
2023-02-20 12:40:23 +01:00
Trong Huu Nguyen
c6d3d11072
refactor(url): rename named import
2023-02-20 12:39:05 +01:00
Trong Huu Nguyen
fb28da7241
refactor: consolidate handlers
2023-02-16 10:55:50 +01:00
Trong Huu Nguyen
3274cc5c65
refactor: move redirect package into url, clean up naming
2023-02-16 09:24:39 +01:00
Trong Huu Nguyen
2a8386637e
deps: bump em
2023-02-15 08:47:55 +01:00
Trong Huu Nguyen
2c5d964983
refactor(handler/reverseproxy): reduce log severity for cookie decrypt failures
2023-02-15 08:43:25 +01:00
Trong Huu Nguyen
c3532d2e60
build: bump to go version 1.20.1
2023-02-14 21:50:34 +01:00
Trong Huu Nguyen
411201b3de
refactor(redirect): clean up logging
2023-02-14 21:50:33 +01:00
Trong Huu Nguyen
0537c8172f
feat(session): use tickets for per-session data encryption
...
Replace the usage of a single application-wide session crypter
with per-session crypters.
The application is no longer able to decrypt any session
encrypted with its symmetric key alone. Instead, a session ticket
with its associated data encryption key (DEK) is also required in order
to decrypt the associated session data. The ticket itself is
encrypted with the application's crypter; the latter of which is
effectively a key-encryption key (KEK).
Fixes #49 .
2023-02-14 21:50:19 +01:00
Trong Huu Nguyen
d17feacc34
refactor(handler/autologin): use sync.Map for cache
2023-02-14 14:20:46 +01:00
Trong Huu Nguyen
5a56c24bcc
refactor(crypto): replace aes-256-gcm with xchacha20-poly1305
2023-02-13 21:48:23 +01:00
Trong Huu Nguyen
ce2698f2bb
refactor(cookie): use rawurlencoding for base64
2023-02-13 20:15:12 +01:00
Trong Huu Nguyen
1b2234f875
refactor(session/data): skip unnecessary base64 (un)marshalling
2023-02-13 20:14:38 +01:00
Trong Huu Nguyen
66dec32de0
feat(sso/proxy): implement handlers for session routes
2023-02-10 14:58:19 +01:00
Trong Huu Nguyen
ea0756784d
refactor(handler/reverseproxy): use ReverseProxy.Rewrite instead of Director
2023-02-10 14:58:17 +01:00