Stavros
892097dc4d
fix: account for proxy type in browser response
2026-04-02 15:35:55 +03:00
Stavros
8a9ffcf185
chore: add github action updates in dependabot
2026-04-01 19:03:05 +03:00
Stavros and GitHub
fc1d4f2082
refactor: use better ignore paths in context middleware ( #743 )
2026-04-01 17:07:14 +03:00
Stavros
08e6b84615
fix: use int for status in healthcheck cmd
2026-04-01 16:12:11 +03:00
Stavros and GitHub
cec0a7327a
New translations en.json (Ukrainian) ( #740 )
2026-04-01 15:43:23 +03:00
Stavros
da247f8552
fix: handle oauth provider id mismatch correctly
2026-03-30 23:02:20 +03:00
Stavros
7139ad1cc6
fix: use correct go image in docker build
2026-03-30 19:21:50 +03:00
Stavros and GitHub
5811218dbf
refactor: tests ( #731 )
...
* tests: rework tests for context controller
* tests: add tests for health controller
* tests: add tests for oidc controller
* tests: use testify assert in context and health controller
* tests: add tests for user controller
* tests: add tests for resources controller
* tests: add well known controller tests
* test: add proxy controller tests
* chore: review comments
* chore: more review comments
* chore: cancel lockdown in testing
* tests: fix get cookie domain tests
* chore: add comment for testing passwords
2026-03-30 15:31:34 +03:00
Stavros
f65df872f0
refactor: allow root domain app urls for testing
2026-03-29 20:27:09 +03:00
Stavros and GitHub
d3cda06a75
feat: add lockdown mode on multiple login attempts ( #727 )
...
* feat: add lockdown mode on multiple login attempts
* fix: review comments
* fix: fix typo
2026-03-28 20:35:49 +02:00
Stavros and GitHub
f26c217161
refactor: oauth flow ( #726 )
...
* wip
* feat: add oauth session impl in auth service
* feat: move oauth logic into auth service and handle multiple sessions
* tests: fix tests
* fix: review comments
* fix: prevent ddos attacks in oauth rate limit
2026-03-22 21:03:32 +02:00
Stavros and GitHub
dc3fa58d21
refactor: refactor proxy controller to handle proxy auth modules better ( #714 )
...
* wip
* fix: add extauthz to friendly error messages
* refactor: better module handling per proxy
* fix: get envoy host from the gin request
* tests: rework tests for proxy controller
* fix: review comments
2026-03-14 19:56:15 +02:00
Stavros
b3de69e5d6
chore: add comment explaining uri header
2026-03-12 16:36:13 +02:00
Stavros
016a954963
fix: make a x forwarded uri an non required header
2026-03-12 16:26:42 +02:00
Stavros and GitHub
9eb2d33064
New translations en.json (French) ( #702 )
2026-03-11 16:49:20 +02:00
Stavros
b2a1bfb1f5
fix: validate client id on oidc token endpoint
2026-03-11 16:48:04 +02:00
Stavros
f1e869a920
fix: ensure user context has is logged in set to true
2026-03-11 15:57:50 +02:00
Stavros
cc5a6d73cf
tests: ensure all forwarded headers are set on tests
2026-03-11 15:53:39 +02:00
Stavros
b2e3a85f42
chore: update version in example compose
2026-03-11 15:47:22 +02:00
Stavros
2e03eb9612
fix: do not continue auth on empty x-forwarded headers
2026-03-11 15:46:09 +02:00
Stavros
55c33f7a8e
chore: update readme
2026-03-10 17:57:49 +02:00
Stavros
b6eb902d47
fix: fix typo in public key loading
2026-03-08 15:54:50 +02:00
Stavros
e3bd834b85
fix: support pkix public keys in oidc
2026-03-08 11:39:16 +02:00
Stavros
d7d540000f
fix: state should not be a required field in oidc
2026-03-08 11:17:44 +02:00
Stavros
766270f5d6
fix: add kid header to id token
2026-03-08 11:07:15 +02:00
Stavros and GitHub
1d76cb84b9
New Crowdin updates ( #684 )
...
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Chinese Simplified)
2026-03-04 19:41:21 +02:00
Stavros
69c6c0ba1d
fix: add cache control header to token response
2026-03-04 19:38:52 +02:00
Stavros
a71f61df8d
feat: add email verified claim
2026-03-04 15:52:31 +02:00
Stavros and GitHub
6bf444010b
feat: add nonce claim support to oidc server ( #686 )
...
* feat: add nonce claim support to oidc server
* fix: review feedback
2026-03-04 15:34:11 +02:00
Stavros
0e6bcf9713
fix: lookup config file options correctly in file loader
2026-03-03 22:48:44 +02:00
Stavros
af5a8bc452
fix: handle empty client name in authorize page
2026-03-03 22:48:44 +02:00
Stavros
de980815ce
fix: include kid in jwks response
2026-03-03 22:48:44 +02:00
Stavros and GitHub
189ad7115a
New translations en.json (Serbian (Cyrillic)) ( #683 )
2026-03-02 20:17:41 +02:00
Stavros
2f2556d480
fix: set correct paths in dockerfiles
2026-03-02 20:15:51 +02:00
Stavros
f1512f45b7
chore: update example env
2026-03-02 19:53:17 +02:00
Stavros and GitHub
cd410b6cdf
refactor: categorize leftover config options ( #682 )
...
* refactor: categorize leftover config options
* chore: update config description
2026-03-02 19:49:59 +02:00
Stavros and GitHub
24c5b35bdf
feat: add user info claims to id token ( #681 )
...
* feat: add user info claims to id token
* fix: omit empty user info values
2026-03-02 16:08:17 +02:00
Stavros and GitHub
414fab11fb
New Crowdin updates ( #678 )
...
* New translations en.json (Polish)
* New translations en.json (Dutch)
2026-03-02 16:03:43 +02:00
Stavros
c48181a8d8
refactor: use lowercase translated placeholders in login form
2026-03-02 15:58:52 +02:00
Stavros
06a26e976b
fix: fix authorize app initial box not being a box
2026-03-02 15:50:08 +02:00
Stavros and GitHub
27d14d6b21
New Crowdin updates ( #676 )
...
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Arabic)
* New translations en.json (Catalan)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
2026-03-01 13:56:21 +02:00
Stavros
0354c9a122
chore: update screenshot
2026-03-01 13:52:27 +02:00
Stavros
4bed73d0fb
refactor: pass all search params to correct domain in domain warning
2026-03-01 13:42:52 +02:00
Stavros and GitHub
d0e39c6149
refactor: card title and layout tweaks ( #675 )
...
* refactor: card title and layout tweaks
* chore: review comments
* refactor: update domain warning screen
2026-03-01 13:36:43 +02:00
Stavros and GitHub
89da4028bb
New Crowdin updates ( #674 )
...
* New translations en.json (French)
* New translations en.json (Ukrainian)
2026-02-28 15:02:16 +02:00
Stavros
cd168cd435
docs: update contributing guide
2026-02-28 14:53:55 +02:00
Stavros
dea8d72f01
feat: add configuration guide in create oidc client command
2026-02-27 20:04:02 +02:00
Stavros
43e0f3e713
chore: add correct oidc service documetation url
2026-02-26 17:37:47 +02:00
14c08172d8
New Crowdin updates ( #669 )
...
* New translations en.json (Serbian (Cyrillic))
* chore: apply bot suggestion
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-26 17:30:41 +02:00
Stavros and GitHub
4a1889c20b
feat: oidc client create command ( #672 )
...
* feat: add oidc client create command
* refactor: use own utility for creating random strings (more flexible
than stdlib)
* feat: validate client name to avoid config errors
* refactor: limit to only alphanumeric characters and hyphens
* refactor: remove the need of the logger in the create oidc client cmd
2026-02-26 17:28:58 +02:00
Stavros and GitHub
d0560fa6b6
New translations en.json (Italian) ( #668 )
2026-02-25 19:13:02 +02:00
Stavros
699d8d173f
fix: auto gen warning on example env and use correct cli flag in md gen
2026-02-24 16:11:25 +02:00
Stavros and GitHub
36b1594fb8
New Crowdin updates ( #660 )
...
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* chore: bot comments
2026-02-23 19:52:54 +02:00
Stavros
bb96472cc4
refactor: use rollup manual chunking instead of custom function
2026-02-23 19:28:44 +02:00
Stavros and GitHub
e4c4e34d5c
feat: add markdown generation to config generator ( #652 )
2026-02-17 15:46:38 +02:00
Stavros and GitHub
3f3072254e
feat: optimize vite chunks ( #651 )
2026-02-17 14:46:03 +02:00
Stavros and GitHub
6112f977ea
feat: auto generate example env file ( #647 )
...
* feat: auto generate example env file
* refactor: simplify build paths func and better slice handling
* chore: forgot to stage everything
* chore: review comments
* refactor: remove square brackets because they mess up the syntax
highlighting
* refactor: use lowercase name to mark dynamic values
2026-02-16 23:39:05 +02:00
Stavros
e078e8a3f0
refactor: move disable ui warnings to ui cfg and trusted proxies to auth
...
cfg
2026-02-16 19:18:40 +02:00
Stavros
ce8493239e
fix: don't escape backend values in the frontend (translations)
2026-02-11 19:25:33 +02:00
Stavros
71fe73cca0
chore: fix typo in makefile develop recipe
2026-02-11 19:13:09 +02:00
Stavros
0fe89ae4e4
chore: use sslip in development compose
2026-02-11 19:08:43 +02:00
Stavros
22c4c262ea
feat: add support for client secret post auth to oidc token endpoint
2026-02-07 21:04:58 +02:00
Stavros
baf4798665
fix: fix typo in oidc trusted redirect uris config
2026-02-07 12:59:25 +02:00
Stavros
bea680edec
fix: healthcheck should not use public app url
2026-02-07 12:57:10 +02:00
Stavros and GitHub
3eea68ae0c
New Crowdin updates ( #631 )
...
* New translations en.json (Italian)
* New translations en.json (Italian)
* New translations en.json (Hungarian)
* New translations en.json (German)
* New translations en.json (Czech)
* New translations en.json (Ukrainian)
* New translations en.json (Ukrainian)
* New translations en.json (German)
* New translations en.json (Portuguese)
* New translations en.json (Turkish)
* New translations en.json (Dutch)
* New translations en.json (Dutch)
* New translations en.json (Dutch)
* New translations en.json (Ukrainian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Arabic)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Dutch)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Romanian)
* New translations en.json (Afrikaans)
* New translations en.json (Catalan)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Norwegian)
* New translations en.json (English)
* New translations en.json (French)
* New translations en.json (French)
* New translations en.json (Polish)
* New translations en.json (Dutch)
* New translations en.json (Ukrainian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Arabic)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Dutch)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Romanian)
* New translations en.json (Afrikaans)
* New translations en.json (Catalan)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Norwegian)
2026-02-07 12:35:08 +02:00
Stavros and GitHub
f08d8593ea
refactor: rework frontend use effect calls ( #630 )
...
* refactor: rework frontend use effect calls
* fix: rabbit comments
* fix: handle empty oauth url in login page
2026-02-07 12:01:19 +02:00
Stavros
ce25f9561f
fix: ensure service configured check is set to true when service is
...
configured
2026-02-02 16:32:08 +02:00
Stavros
f24595b24e
fix: add more config loaders in the healthcheck command
2026-02-02 16:25:49 +02:00
Stavros
285edba88c
refactor: better is configured check for ldap and oidc service
2026-02-02 16:25:49 +02:00
Stavros
51d95fa455
fix: do not append domains to users that have an email as the username
2026-02-02 16:25:49 +02:00
Stavros
fd16f91011
fix: ensure oidc service is configured before performing any actions
2026-02-02 16:25:49 +02:00
Stavros
fb671139cd
feat: auto generate redirect url if empty
2026-02-02 16:25:49 +02:00
Stavros
eff5fc8b71
refactor: use is configured check in ldap service
2026-02-01 19:05:42 +02:00
Stavros and GitHub
671343f677
feat: oidc ( #605 )
...
* chore: add oidc base config
* wip: authorize page
* feat: implement basic oidc functionality
* refactor: implement oidc following tinyauth patterns
* feat: adapt frontend to oidc flow
* fix: review comments
* fix: oidc review comments
* feat: refresh token grant type support
* feat: cleanup expired oidc sessions
* feat: frontend i18n
* fix: fix typo in error screen
* tests: add basic testing
* fix: more review comments
* refactor: rework oidc error messages
* feat: openid discovery endpoint
* feat: jwk endpoint
* i18n: fix typo
* fix: more rabbit nitpicks
* fix: final review comments
* i18n: authorize page error messages
2026-02-01 19:00:59 +02:00
Stavros
252ba10f48
feat: auto submit totp code when it is filled
2026-01-30 20:26:47 +02:00
Stavros
6431afb7d1
refactor: handle subcommands properly
2026-01-29 15:54:29 +02:00
Stavros
402dfa727b
chore: update traefik and add use infisical as an options for secrets in
...
dev
2026-01-21 12:50:03 +02:00
Stavros
d67c3ab8a4
fix: ensure safe redirect check only accepts actual domains
2026-01-17 20:36:42 +02:00
Stavros
87e2b52a04
fix: set gin mode correctly
2026-01-17 20:26:48 +02:00
Stavros and GitHub
4926e53409
feat: ldap group acls ( #590 )
...
* wip
* refactor: remove useless session struct abstraction
* feat: retrieve and store groups from ldap provider
* chore: fix merge issue
* refactor: rework ldap group fetching logic
* feat: store ldap group results in cache
* fix: review nitpicks
* fix: review feedback
2026-01-17 20:03:29 +02:00
Stavros and GitHub
e3f92ce4fc
refactor: simplify user parsing ( #571 )
2026-01-08 16:03:37 +02:00
Stavros
454612226b
chore: move sql files to sql directory
2026-01-08 15:35:58 +02:00
Stavros and GitHub
1ffb838c0f
feat: add support for global ip filters ( #567 )
2026-01-08 15:26:53 +02:00
Stavros
1dc83c835c
feat: add makefile to simplify development
2026-01-07 16:30:33 +02:00
Stavros
721f302c0b
chore: fix typo in example env
2026-01-07 13:25:39 +02:00
Stavros and GitHub
f1e2b55cd1
fix: add rate limiting in the forward auth endpoint ( #555 )
2025-12-31 21:04:08 +02:00
Stavros and GitHub
7e17a4ad86
refactor: replace gorm with vanilla sql and sqlc ( #541 )
...
* refactor: replace gorm with vanilla sql and sqlc
* chore: go mod tidy
* refactor: rebase for main
* tests: fix tests
* fix: review comments
2025-12-31 17:59:21 +02:00
Stavros and GitHub
9a3fecd565
feat: non-docker acls ( #549 )
...
* wip
* feat: add paerser as submodule and apply patch for nested maps
* refactor: update release workflows to include submodule and patches
* chore: update contributing instructions
2025-12-30 18:26:57 +02:00
Stavros
986ac88e14
Merge branch 'main' of https://github.com/steveiliop56/tinyauth
2025-12-29 19:46:38 +02:00
Stavros
b159f44729
fix: add missing ldap search filter
2025-12-29 19:46:33 +02:00
Stavros and GitHub
43487d44f7
feat: forward sub from oidc providers ( #543 )
...
* feat: forward sub from oidc providers
* fix: review comments
2025-12-26 19:02:51 +02:00
Stavros and GitHub
2d8af0510e
feat: refresh session cookie when session is active ( #540 )
...
* feat: refresh session cookie when session is active
* refactor: use current time to set new expiry
2025-12-26 17:55:54 +02:00
Stavros and GitHub
a1c3e416b6
refactor: use proper module name ( #542 )
...
* chore: reorganize go mod
* refactor: use proper module name
2025-12-26 17:53:24 +02:00
Stavros
7269fa1b95
chore: disable issue enrichment in coderabbit
2025-12-23 23:10:33 +02:00
ef25872fc3
feat: add support for Envoy proxy ( #538 )
...
* feat: add support for 'envoy' proxy in proxyHandler validation
* refactor: simplify proxy route setup by consolidating envoy handling
* feat(proxy): add method validation for proxy authentication
* fix(proxy): reorder method validation for proxy authentication
* refactor: use a slice to check for supported proxies
---------
Co-authored-by: pushpinderbal <me@s1ngh.ca >
Co-authored-by: Pushpinder Singh <53684951+pushpinderbal@users.noreply.github.com >
Co-authored-by: Pushpinder Singh <pushpinder.singh@arcticwolf.com >
2025-12-22 22:28:34 +02:00
Stavros and GitHub
03ed18343e
feat: unified config ( #533 )
...
* chore: add yaml config ref
* feat: add initial implementation of a traefik like cli
* refactor: remove dependency on traefik
* chore: update example env
* refactor: update build
* chore: remove unused code
* fix: fix translations not loading
* feat: add experimental config file support
* chore: mod tidy
* fix: review comments
* refactor: move tinyauth to separate package
* chore: add quotes to all env variables
* chore: resolve go mod and sum conflicts
* chore: go mod tidy
* fix: review comments
2025-12-22 22:13:40 +02:00
Stavros and GitHub
78f97c8550
refactor: split bootstrap to smaller files for better readability ( #518 )
...
* refactor: split bootstrap to smaller files for better readability
* chore: rename setup routes to setup router
* fix: assign configured providers to app context
2025-12-17 15:04:09 +02:00
Stavros
2f4f2505d7
fix: fix language selector and language detection
2025-12-08 19:03:41 +02:00
Stavros and GitHub
8a3f2080c6
New translations en.json (Portuguese, Brazilian) ( #474 )
2025-11-23 14:10:12 +02:00
Stavros
641b9aa531
feat: log unsafe redirect uri in oauth controller
2025-11-23 14:06:35 +02:00