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

认证鉴权

  • AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。具体请参考AK/SK认证
  • API Key认证:使用API Key认证。具体请参考API Key认证
  • OAuth2认证:从第三方身份凭据提供商获取JWT Token作为认证凭据。具体请参考OAuth2认证
表1 认证鉴权

类型

子类型

方式

低代码

工作流/智能体

API Key认证

运营运维

观测

AK/SK认证

评估

高代码

代码解释器数据面接口

API Key认证、AK/SK认证

智能体运行时执行(高代码)

API Key认证、AK/SK认证、OAuth2认证

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以内,12MB以上的请求请使用Token认证。
  • 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签名算法对请求进行签名。

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

API Key认证

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

  1. 进入AgentArts智能体开发平台,在左侧菜单栏选择“开发中心 > 智能体管理”,选择“工作流”或者“智能体”。
  2. 鼠标移动至待运行的智能体/工作流卡片上,单击“调用路径”。
  3. 在弹出的卡片中,复制运行时名称,名称为“jiuwen-”开头 。
  4. 在左侧菜单栏选择“部署运行 > 智能体运行时”。
  5. 在搜索框内输入获取的运行时名称,进行搜索。
  6. 单击运行时名称,进入详情页面,在“权限与访问控制”区域,访问URN。
  7. 进入AgentIdentity智能体身份服务,在“基本信息”页面获取API Key值并复制。
  8. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

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

  1. 进入AgentArts智能体开发平台,在左侧菜单栏选择“部署运行 > 智能体运行时”。
  2. 单击待运行的智能体运行时,进入智能体详情页面。
  3. 在“权限与访问控制”区域,访问URN。
  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。
  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

智能体调用(沙箱工具)API Key认证步骤:

  1. 进入AgentArts智能体开发平台,在左侧菜单栏选择“开发中心 > 组件库”,单击“沙箱工具”页签,进入沙箱工具界面。
  2. 单击沙箱工具名称,进入详情页面。
  3. 在“权限与身份认证”区域,访问URN。
  4. 进入AgentIdentity智能体身份服务,在基本信息页面获取API Key值并复制。
  5. 添加Authorization的请求头,对应的请求头的值为“Bearer 获取到的API Key”。

OAuth2认证

OAuth2认证依赖从第三方身份凭据提供商获取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}

相关文档