The token_broker health check probed grant_type=client_credentials. The kof22 broker provider only allows token exchange, so Authentik logged Invalid grant_type for provider with a 400 every 5 minutes. The broker itself was fine.
Now the probe sends token exchange with the broker's client credentials and no subject token, so nothing is issued and no user data is sent. Authentik 2026.8 checks the grant type, then the client secret, then the subject:
invalid_request (subject missing): credentials and grant are OK, so UP
invalid_client: bad secret, so DOWN
invalid_grant: the provider does not allow token exchange, so DOWN
anything else, including an issued token: DOWN
Exchange refusals now throw BrokerRefusedException (a QUserFacingException with the same message as before) carrying only the standard OAuth2 error code.
Part of the service-identity work (QRun-IO/qqq#1248). Tests: AuthentikHealthChecksTest 17/17; full unit suite 317/317.
The `token_broker` health check probed `grant_type=client_credentials`. The kof22 broker provider only allows token exchange, so Authentik logged `Invalid grant_type for provider` with a 400 every 5 minutes. The broker itself was fine.
Now the probe sends token exchange with the broker's client credentials and no subject token, so nothing is issued and no user data is sent. Authentik 2026.8 checks the grant type, then the client secret, then the subject:
- `invalid_request` (subject missing): credentials and grant are OK, so UP
- `invalid_client`: bad secret, so DOWN
- `invalid_grant`: the provider does not allow token exchange, so DOWN
- anything else, including an issued token: DOWN
Exchange refusals now throw `BrokerRefusedException` (a `QUserFacingException` with the same message as before) carrying only the standard OAuth2 error code.
Part of the service-identity work (QRun-IO/qqq#1248). Tests: AuthentikHealthChecksTest 17/17; full unit suite 317/317.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The
token_brokerhealth check probedgrant_type=client_credentials. The kof22 broker provider only allows token exchange, so Authentik loggedInvalid grant_type for providerwith a 400 every 5 minutes. The broker itself was fine.Now the probe sends token exchange with the broker's client credentials and no subject token, so nothing is issued and no user data is sent. Authentik 2026.8 checks the grant type, then the client secret, then the subject:
invalid_request(subject missing): credentials and grant are OK, so UPinvalid_client: bad secret, so DOWNinvalid_grant: the provider does not allow token exchange, so DOWNExchange refusals now throw
BrokerRefusedException(aQUserFacingExceptionwith the same message as before) carrying only the standard OAuth2 error code.Part of the service-identity work (QRun-IO/qqq#1248). Tests: AuthentikHealthChecksTest 17/17; full unit suite 317/317.
🤖 Generated with Claude Code