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令牌一般由使用者登入應用時,向其身份供應商完成身份認證獲得。
在不同業務情境下的入站認證方式如下:
業務情境 | 調用介面 | 入站認證方式 |
有使用者參與 |
| OpenAPI簽名校正及JWT Token驗證 |
| OpenAPI簽名校正 | |
無使用者參與 |
| OpenAPI簽名校正 |
不論調用哪種介面擷取Workload Access Token,OpenAPI簽名校正都會發生。因此,您需要確保Agent部署的環境中可以擷取到阿里雲的訪問憑證。
入站授權
調用Agent Identity的GetWorkloadAccessToken*系列介面時,需要完成入站授權。
您可以為 Agent 的運行身份(例如RAM角色)建立一個自訂權限原則,並授予相應許可權。
策略樣本:
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"agentidentitydata:GetWorkloadAccessToken",
"agentidentitydata:GetWorkloadAccessTokenForJWT",
"agentidentitydata:GetWorkloadAccessTokenForUserId",
],
"Resource": "*"
}
],
"Version": "1"
}身份供應商配置
您可以將 Agent Identity 與任何相容 OIDC 協議的外部身份供應商(IdP)整合。這樣,Agent 可以將在外部 IdP 認證後獲得的 JWT(JSON Web Token)提供給 Agent Identity,以證明其身份。
如果您需要使用外部身份供應商(如 Okta 或您自建的 OIDC 服務)簽發的 JWT 來擷取 Workload Access Token,需要先在 Agent Identity 中完成身份供應商的配置。
關於如何在 Agent Identity 中管理身份供應商,請參見:身份供應商管理。
關於如何配置阿里雲、Okta 等典型身份供應商,請參見:典型身份供應商設定教程。