forgejo/services/auth
Jack Hay 4e879fed90
Deprecate query string auth tokens (#28390)
## Changes
- Add deprecation warning to `Token` and `AccessToken` authentication
methods in swagger.
- Add deprecation warning header to API response. Example: 
  ```
  HTTP/1.1 200 OK
  ...
  Warning: token and access_token API authentication is deprecated
  ...
  ```
- Add setting `DISABLE_QUERY_AUTH_TOKEN` to reject query string auth
tokens entirely. Default is `false`

## Next steps
- `DISABLE_QUERY_AUTH_TOKEN` should be true in a subsequent release and
the methods should be removed in swagger
- `DISABLE_QUERY_AUTH_TOKEN` should be removed and the implementation of
the auth methods in question should be removed

## Open questions
- Should there be further changes to the swagger documentation?
Deprecation is not yet supported for security definitions (coming in
[OpenAPI Spec version
3.2.0](https://github.com/OAI/OpenAPI-Specification/issues/2506))
- Should the API router logger sanitize urls that use `token` or
`access_token`? (This is obviously an insufficient solution on its own)

---------

Co-authored-by: delvh <dev.lh@web.de>
2023-12-12 03:48:53 +00:00
..
source Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00
auth.go
auth_test.go
auth_token.go Enhanced auth token / remember me (#27606) 2023-10-14 00:56:41 +00:00
auth_token_test.go Enhanced auth token / remember me (#27606) 2023-10-14 00:56:41 +00:00
basic.go Unify two factor check (#27915) 2023-11-06 08:22:39 +00:00
group.go
httpsign.go Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00
interface.go
main_test.go Enhanced auth token / remember me (#27606) 2023-10-14 00:56:41 +00:00
oauth2.go Deprecate query string auth tokens (#28390) 2023-12-12 03:48:53 +00:00
reverseproxy.go
session.go Replace more db.DefaultContext (#27628) 2023-10-15 17:46:06 +02:00
signin.go Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00
source.go Final round of db.DefaultContext refactor (#27587) 2023-10-14 08:37:24 +00:00
sspi.go Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00
sspiauth_posix.go
sspiauth_windows.go
sync.go Use db.Find instead of writing methods for every object (#28084) 2023-11-24 03:49:41 +00:00