forgejo/modules/util
Gusted a14be197eb
[GITEA] rework long-term authentication
- The current architecture is inherently insecure, because you can
construct the 'secret' cookie value with values that are available in
the database. Thus provides zero protection when a database is
dumped/leaked.
- This patch implements a new architecture that's inspired from: [Paragonie Initiative](https://paragonie.com/blog/2015/04/secure-authentication-php-with-long-term-persistence#secure-remember-me-cookies).
- Integration testing is added to ensure the new mechanism works.
- Removes a setting, because it's not used anymore.

(cherry picked from commit eff097448b)

[GITEA] rework long-term authentication (squash) add migration

Reminder: the migration is run via integration tests as explained
in the commit "[DB] run all Forgejo migrations in integration tests"

(cherry picked from commit 4accf7443c)
2023-10-09 22:17:28 +02:00
..
filebuffer Add Debian package registry (#24426) 2023-05-02 12:31:35 -04:00
rotatingfilewriter Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
color.go Modify luminance calculation and extract related functions into single files (#24586) 2023-05-10 11:19:03 +00:00
color_test.go Modify luminance calculation and extract related functions into single files (#24586) 2023-05-10 11:19:03 +00:00
error.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
file_unix.go
file_unix_test.go
file_windows.go
io.go Fix profile render when the README.md size is larger than 1024 bytes (#25131) 2023-06-13 09:02:25 +00:00
io_test.go Fix profile render when the README.md size is larger than 1024 bytes (#25131) 2023-06-13 09:02:25 +00:00
keypair.go [GITEA] Drop sha256-simd in favor of stdlib 2023-10-09 22:17:14 +02:00
keypair_test.go [GITEA] Drop sha256-simd in favor of stdlib 2023-10-09 22:17:14 +02:00
legacy.go [GITEA] rework long-term authentication 2023-10-09 22:17:28 +02:00
legacy_test.go [GITEA] rework long-term authentication 2023-10-09 22:17:28 +02:00
pack.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
pack_test.go
paginate.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
paginate_test.go
path.go Refactor lfs requests (#26783) 2023-09-18 08:40:50 +00:00
path_test.go
remove.go
sanitize.go
sanitize_test.go
sec_to_time.go Store and use seconds for timeline time comments (#25392) 2023-06-23 12:12:39 +00:00
sec_to_time_test.go
shellquote.go
shellquote_test.go
slice.go Replace util.SliceXxx with slices.Xxx (#26958) 2023-09-07 09:37:47 +00:00
slice_test.go Replace util.SliceXxx with slices.Xxx (#26958) 2023-09-07 09:37:47 +00:00
string.go
string_test.go
timer.go Rewrite queue (#24505) 2023-05-08 19:49:59 +08:00
timer_test.go
truncate.go Add ability to set multiple redirect URIs in OAuth application UI (#25072) 2023-06-05 15:00:12 +08:00
truncate_test.go
url.go Add RemoteAddress to mirrors (#26952) 2023-09-16 16:03:02 +00:00
util.go Use Go 1.21 and update dependencies (#26878) 2023-09-03 10:34:57 +00:00
util_test.go Handle base64 decoding correctly to avoid panic (#26483) 2023-08-14 10:30:16 +00:00