You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Container Apps:通过托管标识限制API访问的配置求助

配置Azure Container Apps API与托管标识客户端的身份验证关联

一、API侧(ACA)后续配置

你已启用Microsoft身份提供者,需完成以下补充配置:

  1. 定义API的应用程序角色
    • 登录Azure门户,找到ACA启用身份验证后自动生成的Azure AD应用注册(可通过ACA的「身份验证」页面跳转,或在Azure AD「应用注册」中搜索ACA名称)。
    • 进入该应用注册的「应用程序角色」页面,点击「创建应用程序角色」:
      • 填写显示名称(如API访问权限)、值(如Api.Access)、描述;
      • 成员类型选择应用程序(托管标识属于服务主体,为应用身份);
      • 勾选「启用」后保存角色。
  2. 配置ACA的访问规则
    • 返回ACA的「身份验证」设置页面,找到「访问规则」板块;
    • 点击「添加规则」,设置规则名称(如限制API访问);
    • 路径匹配选/*(或需保护的具体路径);
    • 权限要求选择要求角色,勾选刚创建的Api.Access角色;
    • 保存规则,此时仅携带该角色令牌的请求可访问API。

二、客户端侧(托管标识)配置

  1. 定位托管标识的服务主体
    • 在Azure AD「企业应用程序」中,搜索客户端资源名称(系统分配托管标识的名称与资源名称一致);
    • 进入该企业应用(即托管标识对应的服务主体)。
  2. 分配API的应用程序角色权限
    • 返回API对应的Azure AD应用注册,进入「权限」页面;
    • 点击「添加权限」,选择「我的API」,找到API的应用注册;
    • 选择「应用程序权限」,勾选之前创建的Api.Access角色,点击「添加权限」;
    • 点击「授予管理员同意」(应用权限需全局管理员或API权限管理员同意后方可生效)。

三、验证配置

  • 客户端可通过托管标识获取API的访问令牌,示例Azure CLI命令:
    az account get-access-token --resource <API应用注册的客户端ID>
    
  • 将令牌作为Authorization: Bearer <令牌>请求头调用API端点,正常情况下可访问;未携带有效令牌的请求会被ACA身份验证层拦截,返回401或403错误。

内容的提问来源于stack exchange,提问作者cyberguest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 22:07:33