入站

更新时间:
复制为 MD 格式

Agent Identity的功能按工作流的方向,可以分为入站出站两部分。Agent Identity 入站认证是为您的 AI Agent 或其他应用程序提供的一种安全身份验证服务。您的应用程序(即 Agent)可以通过调用 Agent Identity 的 API,在通过身份认证和授权检查后,获取一个有时效性的工作负载访问令牌(Workload Access Token)。

入站认证方式

Agent Identity服务支持通过调用不同的接口,以不同方式完成入站认证以获取Workload Access Token。

  • OpenAPI签名校验:调用受保护的阿里云OpenAPI时默认采用的认证机制,阿里云SDK中的Credentials工具会自动根据部署环境决定要使用的凭证(如:STS Token、 Access Key等)。如Agent部署在阿里云托管的Agent运行时平台上(例如:百炼)时,可以使用平台能力提供无AK的方案便捷、安全地完成身份认证。

  • JWT Token验证:Agent Identity可以接受来自信任的OIDC身份提供商所签发的JWT令牌并对其进行校验(校验令牌的签名,签发者以及受众)。JWT令牌一般由用户登录应用时,向其身份提供商完成身份认证获得。

在不同业务场景下的入站认证方式如下:

业务场景

调用接口

入站认证方式

有用户参与

GetWorkloadAccessTokenForJWT

OpenAPI签名校验JWT Token验证

GetWorkloadAccessTokenForUserId

OpenAPI签名校验

无用户参与

GetWorkloadAccessToken

OpenAPI签名校验

说明

不论调用哪种接口获取Workload Access Token,OpenAPI签名校验都会发生。因此,您需要确保Agent部署的环境中可以获取到阿里云的访问凭证。

入站授权

调用Agent IdentityGetWorkloadAccessToken*系列接口时,需要完成入站授权。

您可以为 Agent 的运行身份(例如RAM角色)创建一个自定义权限策略,并授予相应权限。

策略示例

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "agentidentitydata:GetWorkloadToken",
        "agentidentitydata:GetWorkloadTokenForJWT",
        "agentidentitydata:GetWorkloadTokenForUserId",
      ],
      "Resource": "*"
    }
  ],
  "Version": "1"
}

身份提供商配置

您可以将 Agent Identity 与任何兼容 OIDC 协议的外部身份提供商(IdP)集成。这样,Agent 可以将在外部 IdP 认证后获得的 JWT(JSON Web Token)提供给 Agent Identity,以证明其身份。

如果您需要使用外部身份提供商(如 Okta 或您自建的 OIDC 服务)签发的 JWT 来获取 Workload Access Token,需要先在 Agent Identity 中完成身份提供商的配置。