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
Unattended refresh: exchange an API key without a browser and keep the token file fresh #17
Today
The CLI caches credentials and checks their expiry — and when they have expired it stops: Cached credentials have expired. Run 'source-coop login' to refresh. (src/main.rs). That is interactive, so nothing keeps a token file fresh for a daemon.
The CLI also sends the token as a URL query parameter (src/sts.rs, append_pair("WebIdentityToken", …)), so bearer tokens land in access logs.
Do
Add a mode that reads an API key, exchanges it at /.sts without a browser, and keeps AWS_WEB_IDENTITY_TOKEN_FILE fresh.
Send the token in the request body. The proxy already accepts form-encoded bodies, so this is CLI-only.
Done when
A daemon holding a key and no browser runs across a credential expiry, and the token never appears in a request URL.
I believe this is no longer necessary being that source-cooperative/data.source.coop#235 enabled the STS endpoint to accept raw API keys, negating the need to refresh any identity token.
Activity
alukach commentedon Nov 12, 2026
I believe this is no longer necessary being that source-cooperative/data.source.coop#235 enabled the STS endpoint to accept raw API keys, negating the need to refresh any identity token.