You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Support client_secret_basic for OAuth client credentials #1447
Executor's low-level OAuth helper supports both client_secret_post and client_secret_basic, but configured OAuth clients do not persist or expose the token-endpoint authentication method. The service-level client-credentials mint and expiry re-mint therefore omit clientAuth and always use the default body transport.
This blocks authorization servers that require HTTP Basic client authentication at the token endpoint. A concrete example is Aikido:
POST https://app.aikido.dev/api/oauth/tokenAuthorization: Basic base64(CLIENT_ID:CLIENT_SECRET)Content-Type: application/x-www-form-urlencodedgrant_type=client_credentials
Executor currently sends client_id and client_secret in the form body instead, which Aikido rejects.
A previous broad implementation in #1217 included a per-client token_endpoint_auth_method and covered initial mint plus expiry re-mint, but that PR was closed unmerged.
Expected behavior
OAuth clients can select client_secret_basic or client_secret_post.
The selection is persisted.
Both the initial client_credentials exchange and subsequent expiry re-mints use the selected method.
Existing clients remain compatible by defaulting to client_secret_post.
The configuration UI/API exposes the choice, ideally using the standard OAuth names.
Activity
RhysSullivan commentedon Oct 8, 2026
We're clearing the backlog ahead of the v2 launch, so we're closing this. If it still applies to v2, please open a new issue or PR against v2.
Sent from my Claude