{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/saga-a-security-architecture-for-governing-ai","title":"SAGA: A Security Architecture for Governing AI Agentic Systems","arxiv_id":"2504.21034","date":"2025-04-27","proceeding":null,"authors":["Georgios Syros","Anshuman Suri","Cristina Nita-Rotaru","Alina Oprea"],"abstract":"Large Language Model (LLM)-based agents increasingly interact, collaborate, and delegate tasks to one another autonomously with minimal human interaction. Industry guidelines for agentic system governance emphasize the need for users to maintain comprehensive control over their agents, mitigating potential damage from malicious agents. Several proposed agentic system designs address agent identity, authorization, and delegation, but remain purely theoretical, without concrete implementation and evaluation. Most importantly, they do not provide user-controlled agent management. To address this gap, we propose SAGA, a Security Architecture for Governing Agentic systems, that offers user oversight over their agents' lifecycle. In our design, users register their agents with a central entity, the Provider, that maintains agents contact information, user-defined access control policies, and helps agents enforce these policies on inter-agent communication. We introduce a cryptographic mechanism for deriving access control tokens, that offers fine-grained control over an agent's interaction with other agents, balancing security and performance consideration. We evaluate SAGA on several agentic tasks, using agents in different geolocations, and multiple on-device and cloud LLMs, demonstrating minimal performance overhead with no impact on underlying task utility in a wide range of conditions. Our architecture enables secure and trustworthy deployment of autonomous agents, accelerating the responsible adoption of this technology in sensitive environments.","url_abs":"https://arxiv.org/abs/2504.21034v1","url_pdf":"https://arxiv.org/pdf/2504.21034v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[],"tasks":[{"task_slug":"large-language-model","task_name":"Large Language Model"}],"methods":[{"method_slug":"saga","method_name":"SAGA"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2504.21034","atlas_url":"https://app.syntology.ai/?focus=2504.21034","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2504.21034"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"deterministic:regex_extraction","url":"https://github.com/gsiros/saga","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":2,"unverified":2},"by_repo_kind":{"found_in_text":{"samples":4,"ran":2,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"c5840fffdfb81725","entry":"deserialize","repo":"gsiros/saga","repo_kind":"found_in_text","path":"saga/agent.py","file_url":"https://github.com/gsiros/saga/blob/HEAD/saga/agent.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c5840fffdfb81725"}},{"code_sha256_prefix":"cb05405286e7bc8c","entry":"serialize","repo":"gsiros/saga","repo_kind":"found_in_text","path":"saga/agent.py","file_url":"https://github.com/gsiros/saga/blob/HEAD/saga/agent.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cb05405286e7bc8c"}},{"code_sha256_prefix":"76d02f021a24d840","entry":"get_agent_material","repo":"gsiros/saga","repo_kind":"found_in_text","path":"saga/agent.py","file_url":"https://github.com/gsiros/saga/blob/HEAD/saga/agent.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"76d02f021a24d840"}},{"code_sha256_prefix":"76691dc152bb8469","entry":"get_agent_material","repo":"gsiros/saga","repo_kind":"found_in_text","path":"saga/attack_models/adversaries/A1.py","file_url":"https://github.com/gsiros/saga/blob/HEAD/saga/attack_models/adversaries/A1.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"76691dc152bb8469"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}