2026/4/16 6:35:24
网站建设
项目流程
自己做网站代理产品,南昌网站搜索排名,大型医院设计网站建设,关键词搜索广告本系列文章基于在多个项目中积累的Agent应用构建经验#xff0c;分享Agentic AI基础设施实践经验内容#xff0c;帮助您全面深入地掌握Agent构建的基本环节。上篇文章介绍了MCP服务器本地部署和云端部署的适用场景和参考架构。本篇文章将深入探讨Agent应用系统中的身份认证与…本系列文章基于在多个项目中积累的Agent应用构建经验分享Agentic AI基础设施实践经验内容帮助您全面深入地掌握Agent构建的基本环节。上篇文章介绍了MCP服务器本地部署和云端部署的适用场景和参考架构。本篇文章将深入探讨Agent应用系统中的身份认证与授权管理。引言AI正经历深刻变革传统AI多为被动工具而随着大语言模型LLM和多Agents系统MAS的快速发展AI Agent正向具有高度自主性的Agentic AI演进。这些AI Agent能够自主思考、规划和执行复杂任务甚至协同完成更复杂的目标。这种演进带来了前所未有的机遇同时也引发了新的安全挑战特别是在身份认证与授权管理方面近年来发生的多起安全事件充分说明了AI Agent身份管理的重要性和紧迫性2024年11月LangChain生态中的LangSmith平台Prompt Hub暴露出严重的身份与权限管理漏洞“AgentSmith”。攻击者通过上传带有恶意Agent配置的prompt当用户fork并执行这些prompt时用户的通信数据包括API密钥和上传内容会被悄然中转至攻击者控制的服务器导致敏感信息泄露。同时攻击可能引发Agent配置篡改、未经授权的API调用及远程代码执行严重影响系统安全。2025年披露的MCP Inspector远程命令执行漏洞CVE-2025-49596则是另一典型案例。该工具缺乏客户端与本地Agent之间的认证攻击者仅需诱导开发者访问恶意网页便能绕过浏览器安全策略通过跨站请求伪造CSRF攻击向本地服务发送恶意命令实现对终端的远程控制。这些安全事件揭示了Agentic AI系统中两个核心问题1.AI Agent的身份认证与授权机制如何确保可信且安全。2.在复杂的Agent调用链中如何有效传递和验证身份信息。下文将深入分析这些挑战并结合亚马逊云科技实践经验提供完整的解决方案。AI Agent身份管理的核心概念与技术要求Agentic AI身份Agent Identity相关的概念和术语用于描述Agent和工具等身份管理及凭证处理所涉及的组件、流程与关系。理解这些术语有助于深入把握AI Agent工作流中如何协调多方组件的身份认证与授权机制。以下列出的术语是在开发Agentic AI系统中常用的、已被身份与访问管理IAM领域广泛采纳、非亚马逊云科技的专有用语其他通用的身份管理术语可以参考相关官方文档。官方文档https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-terms.html身份与认证方面的概念与术语Agent一种由AI驱动的应用程序或自动化工作负载通过访问云资源和第三方服务来代表用户执行任务。Agent在获得预先授权的用户同意后采取行动以实现用户目标例如从API检索数据、处理信息或与第三方系统集成。与使用静态凭证运行的传统应用程序不同Agent需要动态身份管理才能安全地访问跨多个信任域的资源同时维护适当的身份验证和授权边界。Agent身份Agent identityAI Agent或自动化工作负载的唯一标识符及其关联元数据。Agent身份作为工作负载身份实现并具有特定属性用于标识其Agent身份从而实现专用Agent功能同时保持与更广泛的工作负载身份标准的兼容性。Agent身份使Agent能够以自身身份进行身份验证而不是冒充用户从而支持基于委托的访问模式。Agent身份目录Agent identity directory一个集中式注册目录用于管理Agent身份及其相关元数据和访问策略。与Amazon Cognito服务的用户池类似它充当组织账户或区域内Agent身份的治理单元。工作负载身份Workload identityAgent身份的底层技术实现代表独立于特定硬件或基础架构的逻辑应用程序或工作负载。工作负载身份可以跨不同环境运行同时保持一致的身份验证。Agent身份是一种特殊类型的工作负载身份具有Agent特有的附加属性和功能。访问tokenAccess Token包含有关实体访问信息系统的授权信息的JSON Web TokenJWT。JSON Web TokenJWT包含已验证用户声明的JSON格式文档。ID token用于验证用户身份访问token用于授权用户刷新token用于更新凭证。IAM角色IAM角色是一种提供短期有效凭据的访问亚马逊云科技云资源的方式角色的安全凭据经过加密和自动轮换是安全的认证和访问方式适合请求亚马逊云科技资源比如访问Amazon S3存储桶调用Amazon Lambda读取Amazon DynamoDB里的数据等。API密钥API密钥是一个唯一的标识符用于验证对API应用程序编程接口的请求。它就像一个密码允许您的应用程序访问特定服务例如OpenAI API key。很多大模型工具的使用需要用到API密钥包括Amazon Bedrock服务也支持了API密钥访问的方式。OAuth and Token管理方面的概念和术语OAuth 2.0行业标准授权协议和框架定义见RFC 6749允许应用程序在不暴露用户凭据的情况下获得对外部服务用户帐户的有限访问权限。OAuth 2.0允许用户通过访问token而非共享密码授予第三方应用程序对其资源的访问权限从而提供安全委托。对于Agent应用程序OAuth 2.0支持跨多个服务安全地访问用户数据同时保持适当的身份验证边界和用户同意机制。OAuth 2.0授权器OAuth 2.0 authorizer一个SDK组件用于对传入Agent端点的OAuth 2.0 API请求进行身份验证和授权它会在允许访问Agent服务之前验证token。OAuth 2.0 client credentials grant2LOOAuth客户端凭证授予用于无需用户交互的机器对机器身份验证Agent使用2LO直接向资源服务器进行身份验证。OAuth 2.0 authorization code grant3LOOAuth授权需要用户同意和交互。例如当客服人员需要明确的用户权限才能从Google日历或Salesforce等外部服务访问用户特定数据时他们会使用3LO。Agent访问tokenAgent access token包含工作负载身份和用户身份信息的签名token使下游服务能够基于这两个身份做出授权决策这些token是通过token交换过程创建的。Token保险柜Token vault一个用于存储OAuth 2.0 token、API密钥和其他凭证的安全存储系统该系统采用严格的访问控制机制。Token保险柜确保只有最初获取凭证的特定Agent和用户组合才能访问这些凭证。服务到服务的授权Machine-to-machine authorization常被称作M2M授权授权非用户交互机器实体例如Web服务器应用层对API端点的请求进行授权的过程。用户池通过客户端凭证授权提供M2M授权并在访问token中使用OAuth 2.0范围。OAuth 2.0的授权机制是Agentic AI身份授权的核心技术Agentic AI系统中普遍采用的授权机制是基于OAuth 2.0进行的包括MCP协议也是基于其进行授权。所以深入理解Agentic AI各组件间的身份认证与授权机制的前提是充分理解OAuth授权的流程。其中Anthropic官方对MCP协议中采用的OAuth授权流程进行了详细描述具体客户参考其官方网站的协议描述部分OAuth 2.0的授权流程。OAuth 2.0的授权流程https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization在Agentic AI系统的设计中需要根据不同的业务场景来选择合适的OAuth工作模型。其中典型的模式有2腿授权2-Legged Auth2LO和3腿授权3-Legged Auth3LO如果需要用户User参与其中的授权流程适合用3LO如果不需要用户参与的适合用2LO。下图是2LO和3LO授权流程的典型步骤说明图12LO和3LO授权流程2LO授权流程OAuth客户端凭据授予用于无需用户交互的机器对机器身份验证适用于Agent使用2LO直接向资源服务器进行身份验证例如Agent访问具有服务角色的同一账户中数据库。具体流程包括:Client认证应用发送client_id和client_secret到认证服务器。Token签发服务器验证密钥材料并返回一个access_token。资源访问应用使用token访问受保护的资源。3LO授权流程用于应用代表用户进行操作的场景需要用户的同意例如Agent代表用户访问电子邮件服务。具体流程包括:User重定向客户端重定向用户请求到授权服务器。User同意用户完成认证并同意。Code交换服务器给客户端返回授权code。Token请求客户端通过授权code和client_secret与授权服务器交换access_token和refresh_token。资源访问客户端通过使用token访问用户拥有的资源。Agentic AI身份管理面临的核心挑战与防护策略OWASPOpen Worldwide Application Security Project开放式全球应用程序安全项目基于Agentic AI的特性及应用系统部署架构、各领域专家的研究及实践经验总结了15个安全威胁具体可参考博客《Agentic AI安全防护——Agent隐私与安全》的对应内容。在这15个安全威胁中有2个是与身份相关的包括T3权限泄漏和T9身份欺骗和冒充。T3权限滥用当攻击者利用权限管理中的弱点执行未经授权的操作时就会发生权限滥用这通常涉及动态角色继承或错误配置。T9身份欺骗和冒充攻击者利用身份验证机制冒充AI Agent或人类用户从而以虚假身份执行未经授权的操作。对于身份欺骗和冒充威胁在一个典型的Agentic AI逻辑架构中需要进行身份认证与授权的交互点非常多、且涉及到非一方自研的部分导致风险点的控制变得复杂。身份的传递如下图蓝色箭头和编号是重要内容之一最初User的身份管理和认证、Agent Action对User身份和鉴权会话Access Token的传递、tools对User的授权等如下图所示。图2身份欺骗和冒充威胁的分布点Agentic AI中的身份认证与授权和传统应用中的身份认证与授权的核心区别传统应用没有使用Agentic AI之前的应用对用户的身份管理和授权是非常明确的即对当前登录应用系统的用户身份进行认证和授权包括单点登录SSO认证、细粒度授权和OAuth授权等。但应用系统中引入Agentic AI技术后数据的查询和第三方系统的调用等会由AI Agent来完成因为当前登录的用户要查询或操作的内容可能不是对其自身的查询或操作有可能是通过prompt的方式查询或操作其他用户的信息这一点是与传统应用的最大区别。本文通过以下两个示例图来进行对比和说明图3传统应用中的身份认证与授权架构图4Agentic AI系统中的身份认证与授权架构Agentic AI应用系统中的授权问题反映了传统访问控制模型的根本性局限。当数据通过训练、微调或检索增强生成RAG方式被输入到LLM中后模型本身无法判断请求者是否有权访问这些数据。这种情况下授权决策必须在AI应用的其他层面实现而不能依赖模型本身的判断。在企业级AI应用中这个问题变得更加复杂。不同用户可能对同一数据集具有不同的访问权限但LLM无法自主区分这些权限差异。例如在一个企业知识管理系统中销售团队和财务团队可能对客户数据具有不同的访问权限但如果这些数据都被用于训练或增强同一个LLM模型就无法自动执行这种权限区分。解决授权问题需要在应用架构层面实施确定性的授权机制。这包括在数据输入LLM之前进行权限检查根据用户身份和权限过滤可访问的数据源。在RAG系统中可以根据用户权限动态选择可查询的向量数据库或知识库。在模型输出阶段也需要根据用户权限对响应内容进行过滤和脱敏。基于会话属性的权限传递是一种有效的解决方案。通过安全侧通道如Amazon Bedrock Agents的会话属性传递用户身份和权限信息使后端系统能够在处理AI请求时执行适当的授权检查这种方法将授权决策从不可靠的LLM推理转移到可控的应用逻辑中。MCP协议中混淆代理人提权问题MCP协议的设计理念导致其在架构层面就系统性地引入了传统安全领域中经典的“混淆代理人”问题Confused Deputy Problem。首先MCP服务器作为一个独立的进程运行拥有其自身在主机系统上的权限集合例如文件系统读写权限或网络访问权限。其次LLM客户端通常代表用户行事向服务器发送请求以执行工具。但是MCP规范在其默认状态下缺乏一个统一且被一致性执行的认证和授权机制来将终端用户的身份和权限安全地传递给服务器。因此当一个用户可能是低权限用户通过LLM提示调用一个工具时服务器实际上是使用其自身的权限可能是高权限来执行该操作而非用户的权限。这就创造了一个典型的权限提升场景即一个低权限的请求者用户欺骗了一个高权限的代理服务器来执行越权操作。此类越权问题通过给大模型LLM作系统级提示词限制也只能在少部分情况下生效且有不确定性。混淆代理问题是AI应用安全中最具挑战性的威胁之一并把传统的威胁效果放大。这种攻击利用了AI系统的代理特性通过具有更高权限的AI应用间接获取原本无权访问的资源。攻击的典型场景是用户直接访问某个资源会被拒绝但通过AI应用访问同样的资源却能成功从而绕过了原有的安全控制。混淆代理安全威胁示例直接访问Amazon S3存储桶的用户会被拒绝访问但访问LLM的用户使用RAG并存储来自同一Amazon S3存储桶的数据则会获得访问权限。图5Agent系统中混淆代理示意图这种攻击的根本原因在于AI应用和底层资源之间的权限不匹配。AI应用为了完成复杂任务往往被授予了较高的系统权限但这些权限的使用缺乏细粒度的控制。当用户通过AI应用间接访问资源时实际上是借用了AI应用的权限而不是基于用户自身的权限。构建端到端的Agentic AI身份管理的整体防护策略防范混淆代理攻击需要实施严格的权限一致性检查。无论用户通过何种途径访问资源都应该基于相同的权限模型进行授权决策。这要求在AI应用的架构设计中引入用户身份传递机制确保底层系统能够识别真实的请求者身份。实施细粒度的权限代理是另一种有效的防护策略。AI应用不应该拥有超出其功能需求的权限而应该基于具体的用户请求动态获取相应的权限。这可以通过权限委托机制实现AI应用代表用户请求特定的权限而不是拥有固定的高权限。审计和监控机制对于检测混淆代理攻击至关重要。系统应该记录所有的权限使用情况包括权限的来源、使用者、访问的资源和操作类型。通过分析这些审计日志可以识别异常的权限使用模式和潜在的安全威胁。OWASP对于Agentic AI的15个威胁风险中虽然只有2个与身份相关但这两个风险点特别是T9身份欺骗与冒充威胁会发生在Agentic AI系统中的多个环节因此构建Agentic AI系统的端到端身份管理解决方案是非常有必要的具体参考架构图如下图6Agentic AI系统中端到端身份认证与授权架构端到端的身份认证与授权系统包括如下几个核心能力。具体示例可以参考下一章节的基于Amazon Bedrock AgentCore Identity开发Agentic AI系统的身份模块的相关内容。1.Agent入方面的认证和授权对请求的用户进行认证和授权包括通过第三方身份提供商登录进来的用户。2.外部工具或服务对Agent的授权不论是自己研发的一方工具还是第三方研发的商业化或开源的工具都需要对Agent或Agent代表用户的授权避免委托人攻击。3.Agent访问外部工具或服务的能力即出方向为了配合外部工具或服务对Agent的授权Agent需要具备OAuth客户端的能力包括2LO和3LO的方式。如果是访问云资源需要有保存云资源访问短期权限的能力如IAM角色或STS。4.Tool Gateway入方向认证和授权如果通过Tool Gateway方式集中管理多个MCP服务器Agent由Tool Gateway来访问tools那么Tool Gateway需要具备对Agent或Agent代表用户的授权。亚马逊云科技上的AI Agent身份管理解决方案方案一Amazon Bedrock AgentCore Identity全托管一站式解决方案Amazon Bedrock AgentCore Identity是一项全面的身份和凭证管理服务专为AI Agent和自动化工作负载而设计。它提供安全的身份验证、授权和凭据管理功能使用户能够调用Agent而Agent能够代表用户访问外部资源和服务的同时保持严格的安全控制和审计跟踪。该服务与Amazon Bedrock AgentCore原生集成为Agent应用程序提供全面的身份和凭证管理。AgentCore Identity解决了AI Agent部署中的一个根本性挑战让Agent能够在多个服务中安全地访问用户特定数据同时不牺牲安全性和用户体验。传统方法要么使用广泛的访问凭证而缺乏细粒度控制要么需要为每次服务集成获取明确的用户同意这会带来糟糕的用户体验。AgentCore Identity通过一个全面的工作流实现零信任安全原则和基于委托的身份验证来解决这一问题。Amazon Bedrock AgentCore Identity涉及2种身份认证和授权入站授权Inbound Auth是指验证用户或客户端应用的认证机制用于控制谁可以访问和调用您的Agent或工具。出站授权Outbound Auth是指已通过入站认证的Agent安全访问目标服务的认证机制使Agent能够安全地调用各种外部API、Lambda函数等资源。图7Amazon Bedrock AgentCore Identity认证与授权架构图入站授权用户通过其组织的现有身份提供者如Auth0、Amazon Cognito或其他OIDC兼容系统进行身份验证并获得访问token或身份token。该token包含用户身份信息和授权范围为整个工作流程建立用户的身份上下文。应用程序接收此token并将使用它来授权对Agent的请求。下面以Amazon Cognito为例讲解如何配置入站授权。在开发应用的时候在代码中可以授权Cognito User Pool里面的用户访问权限。Amazon Cognito是Web和移动的应用程序的身份识别服务。借助Amazon Cognito您可以从Amazon Cognito用户池、企业目录或者Google和Facebook等消费者身份提供商提供用户的身份验证和授权。首先创建1个Cognito User Pool在这个User Pool中创建1个App client、1个用户假设您执行下面的命令通过用户名密码的方式授权用户# Authenticate Useraws cognito-idp initiate-auth \ --client-id $CLIENT_ID \ --auth-flow USER_PASSWORD_AUTH \ --auth-parameters USERNAMEtestuser,PASSWORDMyPassword123! \ --region $REGION \ auth.json左右滑动查看完整示意可以得到授权的返回结果结果中包含JWT格式的AccessToken、RefreshToken和IdToken。AccessToken包含权限范围(scope)比如”cognito:groups”: [”developers”, “team-alpha”]定义允许哪些组访问。”scope”: ”myApi/profile.read myApi/profile.write myApi/account”用于API访问授权。RefreshToken用于获取新的Access Token和ID Token。IdToken包含用户身份信息用于身份验证。返回的信息类似于eyJraWQiOiJvcHE5UmpBMTFBMWFcLzdoUFdRaUgwRmlDTjlMYm1QbnJQRWM3SVQ1M05XTT0iLCJhbGciOiJSUzI1NiJ9.eyJvcmlnaW5fanRpIjoiZTRkN2M1OWUtM2NjZC00OGFhLWFkN2YtMmY3ZTgzMmEzZDAzIiwic3ViIjoiZDRhODA0ZjgtYTA0MS03MGU0LTY3MmYtNzk2ZWM2M2VlNzQwIiwiYXVkIjoiNWFmNXBvaW8wbG5pa29zbWtnZjQxYjNrODAiLCJldmVudF9pZCI6IjFiNGZiYzA2LWVlMzgtNDBlYi1iNjRhLTA3ZTllNzIzNzVlNiIsInRva2VuX3VzZSI6ImlkIiwiYXV0aF90aW1lIjoxNzUzNzc5MzQ4LCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtZWFzdC0xLmFtYXpvbmF3cy5jb21cL3VzLWVhc3QtMV9vQTJKTkMxdnUiLCJjb2duaXRvOnVzZXJuYW1lIjoidGVzdHVzZXIiLCJleHAiOjE3NTM3ODI5NDgsImlhdCI6MTc1Mzc3OTM0OCwianRpIjoiNDBiNjEwODMtZmRiZi00YzBmLTk3OTEtOGJmYTJjOGUwNDk1In0.A9wVkmed3aet3Q3mgvSF5-KLcEskBf5JOQnqSuyP4Rv2uz_Q7BhGgDV-AfHiBn9SNI1LI6QxlRp-YqRrh4lyyxsdrQGAH5fIlYvVproslLHlSdq2tPb9klHzPjOpyYTNt3cBCq1WRGiiklfvSM1R-RJ8546IPLP2LN-oEXL-kKNdUpxSLUWSsjuk9kkH1ZkN27NxRtnjzc1KG7MBHJRtVsGUsF8b7m5L1rSYzorbj19j2z5oCHnfZHm8wZkWteEAED2jsjJaRCEwyzqXBgSpnTIy8gYO_tlpwswCpg9dgR1MSwK72OjQvLsf_xubRq2Ykv2RylF4cdF8EuGtLOIb_w左右滑动查看完整示意如果没有带上Access Token直接调用AgentCore Runtime的时候将看到一条错误消息”AccessDeniedException: An error occurred (AccessDeniedException) when calling the InvokeAgentRuntime operation: Agent is configured for a different authorization token type”。这些token短期有效可以在cognito中配置刷新的时长。并且Amazon Cognito提供托管的登录和注册页面以及丰富的安全能力比如要求用户绑定MFA这样可以避免未授权的人拿到用户名密码伪装成授权用户使用访问权限。出站授权Amazon Bedrock AgentCore Identity验证对亚马逊云科技资源、第三方服务或AgentCore Gateway目标的访问权限您可以使用OAuth 2LO/3LO或API密钥。身份系统简化了管理多种凭证类型的复杂性同时为身份验证和授权操作提供了统一的接口。在代码中可以通过调用APIcreate_api_key_credential_provider将能够访问第三方工具的API密钥保存到AgentCore Identity的Resource Credential Provider中。当用户发起Agent交互时应用程序会发出请求代表用户调用AI Agent。此请求包含用户的身份验证token以及Agent需要完成的任何必要上下文。应用程序充当Agent将用户的身份验证请求转发到Agent基础架构同时维护用户的身份上下文。出站授权支持三种身份如以下表格所示。AgentCore Identity的安全性安全的凭证存储代码中没有硬编码的API密钥不容易泄漏机密。跨多种资源类型的一致身份验证接口。全面的审计日志以确保安全性和合规性。基于身份和上下文的细粒度访问控制。通过AgentCore SDK简化集成。方案二基于Amazon Bedrock Agents构建端到端的细粒度访问控制的AI Agent本例为客户提供了一个基于Amazon Bedrock Agents构建AI Agent的细粒度访问控制的安全实施方案。该方案通过结合多个亚马逊云科技服务实现了安全可靠的Agentic AI应用访问控制体系。整个系统设计注重安全性和访问控制确保用户只能访问其权限范围内的数据是一个典型的教育领域生成式AI应用安全实践案例。核心内容包括1.通过实际的应用场景以学校助手SchoolAgent为例通过聊天界面让不同角色如学生、教师、监护人基于各自权限查询和获取信息。2.安全控制机制的设计使用Amazon Cognito进行用户身份验证通过Amazon Verified Permissions实施细粒度访问控制确保AI Agent能识别用户身份并只提供授权范围内的数据3.访问权限设计家长只能访问其子女的数据教师仅可查看其任教班级的信息通过分层安全控制确保数据访问安全通过如下参考架构可以实现完整的身份认证与授权流程。图8构建端到端身份认证与授权架构方案三基于亚马逊云科技中国区服务构建灵活可控全自建方案鉴于Amazon Bedrock AgentCore Identity和Amazon Bedrock Agents等专有托管方案在中国区尚未落地企业可基于亚马逊云科技中国区现有服务采用完全自建方式灵活实现Agentic AI应用系统中的身份认证与授权管理。本方案充分结合企业自有SSO/OIDC/AD、JWT Token、自主用户池、API Gateway、Amazon IAM、STS、Secrets Manager及标准API调用链实现全流程零托管、数据可控、最小权限、合规可审计。架构兼容混合云和本地IT便于演进和平滑升级。优势无需依赖云上托管服务政策合规性强权限控制细腻组件替换灵活适配大型企业和高度自定义场景。适用场景数据高敏感、权限差异大、异构IT环境、对接自有ID体系或多活部署的Agent应用。图9基于亚马逊云科技中国区服务构建灵活可控全自建方案MCP Server认证与授权管理以下章节介绍使用Amazon Bedrock AgentCore和Amazon Cognito组件实现Agent代理MCP server认证鉴权的实施示例。Amazon Bedrock AgentCore是一项旨在简化和加速部署和管理AI Agent的服务。它提供了一系列工具和API帮助开发者快速构建、部署和管理AI Agent。Amazon Bedrock AgentCore支持多种编程语言和框架使得开发者可以灵活选择最适合自己的工具。Amazon Cognito是一种用户身份和访问管理服务它允许开发者轻松地添加用户注册和登录功能到他们的应用中。Amazon Cognito提供了两个主要组件1.用户池用户池是一个完全托管的用户目录可以用于管理和验证用户。用户池支持多种身份验证机制包括用户名和密码、电子邮件和短信验证码、社交身份提供商如Google、Facebook等。2.身份池身份池允许应用程序获取临时亚马逊云科技凭证以访问亚马逊云科技资源。身份池可以与用户池集成为经过身份验证的用户提供访问权限。部署AgentCore MCP Server的详细步骤如下在部署AgentCore MCP Server时您可以利用Amazon Cognito进行用户池和应用客户端的设置以实现鉴权功能。以下是详细的实现步骤和代码示例1.创建Amazon Cognito用户池和应用客户端首先需要在亚马逊云科技管理控制台中创建一个Amazon Cognito用户池和应用客户端。以下是创建用户池和应用客户端的命令示例aws cognito-idp create-user-pool --pool-name mcp-server-user-poolaws cognito-idp create-user-pool-client --user-pool-id USER_POOL_ID --client-name mcp-server-app-client左右滑动查看完整示意2.创建IAM角色为了让MCP服务能够与Amazon Cognito进行交互您需要创建一个IAM角色并附加相应的策略。以下是创建IAM角色的示例代码import boto3 client boto3.client(iam) # 创建 IAM 角色response client.create_role( RoleNameagentcore-mcp-server-role, AssumeRolePolicyDocumentjson.dumps({ Version: 2012-10-17, Statement: [ { Effect: Allow, Principal: { Service: ec2.amazonaws.com }, Action: sts:AssumeRole } ] })) # 附加 Cognito 访问策略client.attach_role_policy( RoleNameagentcore-mcp-server-role, PolicyArnarn:aws:iam::aws:policy/AmazonCognitoPowerUser)左右滑动查看完整示意3.配置AgentCore Runtime在配置AgentCore Runtime时需要指定Amazon Cognito用户池和应用客户端的信息以及IAM角色的ARN。以下是配置示例response agentcore_runtime.configure( entrypointmcp_server.fixed.py, execution_role_arnarn:aws:iam::687912291502:role/agentcore-mcp-server-auto-role, auto_create_ecrsTrue, requirements_txtrequirements.txt, regionregion, authorizer_configurationauth_config, protocolMCP, agent_namemcp_server_auto)左右滑动查看完整示意4.启动AgentCore Runtime最后可以启动AgentCore Runtime并通过Amazon Cognito进行用户认证和鉴权。以下是启动示例代码launch_result agentcore_runtime.launch()左右滑动查看完整示意在AI Agent应用中MCP Server的鉴权机制是确保系统安全性和稳定性的关键。通过Amazon Bedrock AgentCore和Amazon Cognito您可以轻松地实现和管理MCP服务器的鉴权功能这不仅提高了系统的安全性还简化了开发和部署过程使得开发者可以更专注于AI模型和业务逻辑的开发。总结当今Agentic AI应用系统快速发展身份认证与授权管理已成为构建安全可信AI系统的基石。从“AgentSmith”到“MCP Inspector”等安全事件的教训表明我们必须高度重视AI Agent的身份管理问题。构建安全可信的系统需要遵循最小权限、零信任验证、纵深防御和持续监控等核心设计原则同时采用阶段化实施策略从基础身份认证逐步扩展到完整的安全体系。面对传统身份管理向动态化、智能化和细粒度方向的演进企业可以通过采用OAuth 2.0、去中心化身份等技术框架结合Amazon Bedrock AgentCore Identity等云服务解决方案有效应对混淆代理人等特有的安全威胁。通过建立确定性的授权机制和安全的身份信息传递通道确保AI Agent在代表用户执行任务时既保持高效性又不失安全性。随着技术的持续成熟和标准化进程的推进AI Agent身份管理将变得更加智能和自适应。现在正是企业规划和实施AI Agent身份管理系统的最佳时机唯有建立起完善的身份认证与授权管理体系才能确保AI Agent在为人类社会创造价值的同时始终保持在可控和安全的轨道上运行。这不仅是技术发展的必然要求更是AI技术走向成熟和普及的重要基石。本篇作者李阳亚马逊云科技安全解决方案架构师负责基于亚马逊云科技云原生安全服务的解决方案架构设计、咨询和落地包括生成式AI安全与合规、网络安全等级保护解决方案、多账号安全治理解决方案等。加入亚马逊云科技前曾在移动通信5G安全技术研究和标准化、国密算法及标准化、云计算安全产品管理云安全运维审计、云应用身份管理IDaaS和解决方案方面有着丰富经验。陈家慧亚马逊云科技安全专家负责亚马逊云科技安全类产品有15年工作经验曾在甲方和乙方都做过安全主导开发过多个安全项目。对数据安全身份安全领域拥有丰富经验。致力于亚马逊云安全服务在国内的应用和推广。唐清原亚马逊云科技高级解决方案架构师负责Data Analytic和人工智能与机器学习产品服务架构设计以及解决方案。拥有10多年数据领域研发及架构设计经验在大数据BI、数据湖、推荐系统、MLOps等平台项目有丰富实战经验。张铮亚马逊云科技机器学习产品技术专家负责基于亚马逊云科技加速计算和GPU实例的咨询和设计工作。专注于机器学习大规模模型训练和推理加速等领域参与实施了国内多个机器学习项目的咨询与设计工作。李君亚马逊云科技资深生成式AI技术专家负责基于亚马逊云科技生成式AI解决方案的设计、实施和优化。往期精彩内容re:Invent 2025中国行火热进行中即刻点击小程序卡片抢占席位↓↓↓新用户注册海外区域账户可获得最高200美元服务抵扣金覆盖Amazon Bedrock生成式AI相关服务。“免费计划”账户类型确保零花费安心试用。星标不迷路开发更极速关注后记得星标「亚马逊云开发者」听说点完下面4个按钮就不会碰到bug了点击阅读原文查看博客获得更详细内容