The principle of least privilege says every user, program, or agent should have only the access it needs to do its task, and nothing more.
What least privilege means in practice
The idea dates to computer security work in the 1970s. The reasoning is simple: access that is not granted cannot be misused, whether by mistake, by a compromised account, or by an attacker.
Applied to software:
- Separate credentials for each service or agent.
- Permissions narrowed to specific actions and resources.
- Time limits on elevated access.
- Regular review to remove access no longer used.
An example
An analytics agent needs to read post metrics. It gets a key with the analytics permission only. It cannot draft, schedule, or publish, so even if its instructions are hijacked, it cannot post.
Why it matters for AI-agent publishing
Language models can be manipulated through prompt injection, and no prompt makes that impossible. Least privilege accepts that and limits what a manipulated agent can reach.
SocialHandoff applies least privilege to every agent:
- One API key per agent.
- Scopes by network: an agent for LinkedIn cannot touch X.
- Scopes by permission: draft, schedule, analytics.
- Approval is reserved for owner keys; an agent can never approve its own draft.
- Autonomy expands only through the trust ladder.
See agent keys and permissions for setup.