更新时间:2026-11-09 GMT+08:00
分享

认证鉴权

表1 认证鉴权分类

鉴权方式

说明

AK/SK认证(IAM认证)

通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。具体请参考AK/SK认证。

适用于华为云内部系统或已接入华为云IAM的系统。

API Key认证

使用API Key认证。具体请参考API Key认证(工作流/智能体)。

(推荐)适用于内部测试或轻量级集成,集成复杂度低。

OAuth 2.0认证

从第三方身份凭据提供商获取JWT Token作为认证凭据。具体请参考OAuth 2.0认证。

适用于已有身份提供商(如Okta、Cognito等)的企业系统。

智能体在初次部署时,可以选择认证方式。再次调整智能体,重新进行部署时,认证方式无法进行修改。

如果认证方式选择错误,目前需要重新创建一个新的智能体。可以使用智能体的“复制”功能快速创建同样的一个智能体。

图1 部署智能体并选择认证方式示例
图2 复制智能体

表2 认证鉴权

类型

方式

工作流/智能体

AK/SK认证、API Key认证、OAuth 2.0认证

观测

AK/SK认证

评估

智能体优化

代码解释器管理~浏览器会话管理

记忆库管理~记忆库标签管理

运行时~运行时访问方式标签管理

代码解释器数据面接口

API Key认证、AK/SK认证

浏览器数据面接口

会话管理~长期记忆管理

网关

API Key认证、AK/SK认证、OAuth 2.0认证

API Key认证、AK/SK认证、OAuth 2.0认证

AK/SK认证

AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。

  • AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。
  • SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。

使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。

签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。

约束与限制

  • AK/SK签名认证方式仅支持消息体大小12MB以内。
  • AK/SK既可以使用永久访问密钥中的AK/SK,也可以使用临时访问密钥中的AK/SK,但使用临时访问密钥的AK/SK时需要额外携带“X-Security-Token”字段,字段值为临时访问密钥的security_token。
  • API网关除了校验时间格式外,还会校验该时间值与网关收到请求的时间差,如果时间差大于15分钟,API网关将拒绝请求。因此客户端必须注意本地时间与时钟服务器的同步,避免请求消息头X-Sdk-Date的值出现较大误差。
  • 如果调用智能体运行时数据面接口,即智能体运行时执行(高代码)中的接口,不支持对请求body体签名,仅支持使用V11-HMAC-SHA256和SDK-ECDSA-P256-SHA256签名算法,其余智能体运行时接口需对请求body体签名。

您也可以通过这个视频教程了解AK/SK认证的使用:https://bbs.huaweicloud.com/videos/100697。

API Key认证(工作流/智能体)

智能体调用(工作流/智能体)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“开发中心 > 智能体管理”,选择“工作流”或者“智能体”。
  2. 鼠标移动至待运行的智能体/工作流卡片上,单击“调用路径”。
  3. 在弹出的卡片中,复制运行时名称,如图3所示 。

    图3 获取运行时名称

  4. 在左侧菜单栏选择“托管与运行 > 智能体运行时”。
  5. 在搜索框内输入获取的运行时名称,进行搜索。
  6. 单击运行时名称,进入详情页面,在“权限与访问控制”区域,访问URN。

    图4 访问URN

  7. 进入AgentIdentity智能体身份服务,在“基本信息”页面获取API Key值并复制。

    图5 获取API Key值

  8. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

API Key认证(智能体运行时)

智能体调用(智能体运行时)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“托管与运行 > 智能体运行时”。
  2. 单击待运行的智能体运行时,进入智能体详情页面。
  3. 在“权限与访问控制”区域,访问URN。

    图6 访问URN

  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。

    图7 获取API Key值

  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

API Key认证(智能体网关)

智能体调用(智能体网关)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“托管与运行 > 网关”,进入网关界面。
  2. 单击网关名称,进入详情页面。
  3. 在“权限与身份认证”区域,访问URN。

  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。

  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

API Key认证(代码解释器数据面)

智能体调用(代码解释器)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“托管与运行 > 代码解释器”,进入代码解释器界面。
  2. 单击代码解释器名称,进入详情页面。
  3. 在“权限与身份认证”区域,访问URN。

    图8 访问URN

  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。

    图9 获取API Key值

  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

API Key认证(浏览器数据面)

智能体调用(浏览器)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“托管与运行 > 浏览器”,进入浏览器界面。
  2. 单击浏览器名称,进入详情页面。
  3. 在“权限与身份认证”区域,访问URN。

  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。

    图10 获取API Key值

  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

API Key认证(记忆库数据面)

智能体调用(记忆库)API Key认证步骤:

  1. 进入AgentArts智能体平台,在左侧菜单栏选择“托管与运行 > 记忆库”,进入记忆库界面。
  2. 单击记忆库名称,进入详情页面。
  3. 在“API Key”处单击“更新”。

    图11 更新API Key

  4. 在弹出的确认框中,单击“确定”。

    更新API Key后,请及时更新相关SDK和接口的认证凭据,否则会导致调用涉及鉴权的数据面接口认证失败。

  5. 复制或下载API Key。

    图12 复制或下载API Key

  6. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

OAuth 2.0认证

OAuth 2.0认证依赖从第三方身份凭据提供商获取JWT Token作为认证凭据。如何获取JWT Token凭据,请参考各个身份提供商的相关指导文档。

这里以获取GitHub应用的JWT Token举例,可以参考GitHub的文档中“生成 JSON Web 令牌 (JWT)”章节来获取JWT Token:https://docs.github.com/zh/enterprise-cloud@latest/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-json-web-token-jwt-for-a-github-app 。

获取到JWT Token后,在请求时需要将Token添加到请求头中,从而通过身份认证。

请求头格式为:

Authorization: Bearer {JWT Token}

相关文档