Update local-llm OAuth2 provider in Authentik to support password grant type, bound to the headless authentication flow (no MFA/consent stages).
Why
/auth/token gateway endpoint needs to exchange username+password for JWT via Authentik. Current local-llm provider only has authorization_code + refresh_token grants. Password grant against the default flow fails because of MFA/consent stages.
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.
Summary
Update
local-llmOAuth2 provider in Authentik to supportpasswordgrant type, bound to the headless authentication flow (no MFA/consent stages).Why
/auth/tokengateway endpoint needs to exchange username+password for JWT via Authentik. Currentlocal-llmprovider only hasauthorization_code+refresh_tokengrants. Password grant against the default flow fails because of MFA/consent stages.Changes (in homelab repo, not homelab-frontend)
scripts/iam/authentik-provision.pyAdd
authentication_flow: SA_AUTHENTICATION_FLOW_PKto local-llm provider (same headless flow service accounts use: identification → password → login, no MFA).Add
rolesandpermissionsscope mappings tolocal-llmprovider property_mappings so issued JWTs contain capability claims.Verification
Review checklist