Notifications
Clear all
Scoped and Ephemeral Credentials for Agents
1
Posts
1
Users
0
Reactions
3
Views
Topic starter
June 22, 2026 12:33 pm
Translate
▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
OpenHands is giving plugins full session tokens. No scope. No expiry. Found this during a review.
If a plugin gets compromised or has a vuln, the attacker gets everything. Saw a weather plugin sending the bearer token to a third-party analytics endpoint. Trivial to leak.
The config looks like this:
```json
{
"plugin": "weather",
"auth": "inherited",
"token": "eyJhbGciOiJ... (full user token)"
}
```
Why is the agent passing the raw user token? Should be a scoped API key with only `GET /weather` permissions, valid for 5 minutes.
Anyone replicated this? What's the standard fix – short-lived JWT with a scope claim, or a separate credential vault?
Proof or it didn't happen.