A city permitting chatbot must call a third-party payments API to collect application fees, and the architecture team needs the agent to authenticate to that external tool without embedding long-lived credentials in the agent's code. What approach fits this requirement?
Select an answer to reveal the explanation.
Short Explanation
A long-lived password taped to the code is a standing invitation; a token that expires in minutes and only covers what's needed right now is a much smaller risk if it ever leaks. OAuth 2.0 through Auth Manager gets the agent exactly that — scoped, short-lived access to the payments API instead of a secret sitting in a config file forever.
Full Explanation
OAuth 2.0, configured through Auth Manager, lets the agent obtain short-lived, appropriately scoped access tokens for a specific tool call rather than holding a static, long-lived credential embedded in its code or configuration, which limits both the blast radius of a leaked token and how long any single credential remains valid. Hardcoding an API key creates exactly the long-lived embedded credential the requirement is trying to avoid, and it's hard to rotate or scope. Sharing one service-account credential across every agent multiplies the exposure of a single compromised credential across the whole fleet instead of isolating access per agent and per call. Disabling authentication removes the control entirely rather than securing it, trading a manageable risk for an unmanaged one. Scope caveat: OAuth token scopes and lifetimes still need deliberate configuration — an overly broad scope or an unnecessarily long token lifetime undermines much of the benefit even when OAuth is used. Operational check: verify the token issued for the payments API call carries only the specific scope needed for fee collection and expires within the expected short window.
Prefer to study offline? Printable PDF study book + test engine ($7.50, unofficial). These questions stay free here.