14 pointsby saligrama4 hours ago6 comments
  • 2 hours ago
    undefined
  • anuptalwalkar4 hours ago
    Ugh. OIDC’s whole trust model assumes the subject of the token is the responsible party. Sounds like you are opening a door for a future security problem.

    OIDC is good when the end user needs short-term access validation and authorization. The claim and responsibilities of what they do are on that user. Now that you have agents involved, the user can just shrug it off, saying 'oh the AI went rogue'. You probably need a separate role for agent specific tasks that severely limits the access specific to your workload, but that is a work of its own.

    • horsawlarway2 hours ago
      I find their post to be a little light on details, but my read is that they're essentially doing what you're complaining they should.

      They're mapping the identity back to "agent" instead of "person". With the optional ability for the agent to present an "agent:person" combo in cases where it was triggered by a person.

      Some quotes that imply but don't actually technically clarify what I mean:

      > we now had a way to treat each cloud agent session as its own identity

      > Once the human approves, access is scoped to the cloud agent session ID and the specific database that was requested.

      > Using OIDC, cloud agents can request and be approved for short-lived access as they would with databases above. Requests are always logged in Formal and attributed to both the cloud agent and the engineer that launched it.

      It sounds like they're not just attesting that the agent is the person, they're always scoping to a new combined identity.

      So there's no confusion over whether it was a person, an agent, or an agent started by a person. (however where you go from there for culpability is a different question...)

      But it doesn't seem like there's a case where a person did a thing (with their own credentials) and can then point a finger at an agent as say "oh it went rogue".

      • saligramaan hour ago
        Yes, exactly, a cloud agent always authenticates itself (via OIDC) as an agent (machine) identity, with the option for the identity of the human who launched it to ride along.

        We then have the ability to enforce (extremely fine grained) policies based on that combined identity, plus any of the claims in the OIDC token (e.g., the repo URL), plus any of the data on the protocol itself (e.g., block non-read-only queries; redact anything sensitive).

        https://docs.formal.ai/docs/guides/policies/introduction

    • vegardx3 hours ago
      Isn't this what things like CIBA is supposed to address? You still need to do some work, and one could argue that the issue isn't really new, just that we're too lazy. Agentic systems just shifts the focus of where the problem is to where it should be: The role had too wide permissions for the task at hand.
  • thakoppno2 hours ago
    > At Formal, we hate secrets. Since day one, we’ve been on a quest to drive the number of long-lived secrets in our infrastructure to zero.

    Pedantry alert: Private keys are secrets.

  • motoroco3 hours ago
    just relating my personal/professional setup, I run Pocket ID for myself and made an agent account for claude. I have it set up with limited access policies to pre-prod Cloudflare resources and Tailscale servers for occasional tasks. I really like the control I have over access, grant it just when it’s needed and only exactly as much as needed. I wish SSO didn’t require biz/enterprise plans on so many services so I could use my OIDC in more ways
  • KaiserPro2 hours ago
    I mean I get the appeal, but that does mean that your agents also have the same level of access as you, and no way to limit actions to agents.

    For us, most of our MCPs have non-undoable actions disabled. This is to stop agents writing a tool that recursively doing something silly.

    • HumanOstrichan hour ago
      As stated in the second paragraph of TFA, the machine workloads get their own infrastructure identity. Each identity can have different policies and permissions.
      • saligramaan hour ago
        Yes, exactly, a cloud agent always authenticates itself (via OIDC) as an agent (machine) identity, with the option for the identity of the human who launched it to ride along.

        We then have the ability to enforce (extremely fine grained) policies based on that combined identity, plus any of the claims in the OIDC token (e.g., the repo URL), plus any of the data on the protocol itself (e.g., block non-read-only queries; redact anything sensitive).

        https://docs.formal.ai/docs/guides/policies/introduction

  • rvz3 hours ago
    Very bad idea and is just asking for the agent to breached itself via a bad prompt.
    • HumanOstrichan hour ago
      Not sure what you mean. How would it "breached" itself? Where would a bad prompt come from?