Salesforce
可以将 Salesforce 配置为用于出站资源访问的 AgentCore 身份凭证提供商。这允许您的代理通过 Salesforce 的 OAuth2 服务对用户进行身份验证,并获取 Salesforce API 资源的访问令牌。
出站
注意
AgentCore Identity 会为您创建的每个凭据提供商发出唯一的 OAuth2 回调 URL。唯一的回调 URL 支持会话绑定,通过确保授权响应只能针对启动它的特定凭据提供商兑换,从而保护 OAuth2 授权码交换免受跨提供商重播和 CSRF-style 攻击。由于每个提供商的网址是唯一的,因此您要等到致电后才能知道CreateOauth2CredentialProvider。首先创建你的 Salesforce OAuth2 客户端,然后在 Ident AgentCore ity 发布回传网址后返回 Salesforce 开发者控制台注册回传网址。
第 1 步:创建 Salesforce OAuth2 客户端
使用以下过程设置 Salesforce OAuth2 应用程序并获取身份所需的客户端凭证。 AgentCore 在 Ident AgentCore ity 发出唯一回调 URL 之后,您将在步骤 3 中注册重定向 URI。
配置 Salesforce OAuth2 应用程序
-
在 Salesforce 的开发者门户中,创建一个关联的应用程序,然后输入应用程序的名称和其他所需的特定信息。
-
启用和配置应用程序的 OAuth 设置。暂时将回传 URL 字段留空 — 您将在步骤 3 中添加唯一的回传 URL。
-
选择您的应用程序所需的必要范围和权限。
-
为支持的授权流选择 “需要验证密钥进行代码交换 (PKCE) 扩展”。
-
选择 Web 服务器流程需要密钥。
-
选择 “启用授权码和凭据流”。
-
如果您希望使用 Salesforce 作为 ClientCredentials/M2M 提供商,请选择 “启用客户凭证流程”,然后按照提示进行操作。
-
保存您的应用程序并复制为该应用程序颁发的客户端 ID 和客户端密钥。你需要这些来在 Ident AgentCore ity 中配置 Salesforce。
有关更多详细信息,请参阅 Salesforce 的文档 “定义 OpenID Connect 提供
步骤 2:创建 AgentCore 身份凭证提供商
要配置出站 Salesforce 资源提供程序,请使用以下命令:
{ "name": "NAME", "credentialProviderVendor": "SalesforceOauth2", "oauth2ProviderConfigInput": { "SalesforceOauth2ProviderConfigInput": { "clientId": "your-client-id", "clientSecret": "your-client-secret", } }, }
CreateOauth2CredentialProvider响应中包含一个callbackUrl字段。此网址是该凭证提供商所独有的,看起来像:https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. 保存此值以供下一步使用。
第 3 步:向 Salesforce 注册唯一的回传网址
返回 Salesforce 开发者控制台,将唯一的回传网址添加到 OAuth2 应用程序的重定向 URI 列表中。
-
登录 Salesforce 开发者控制台并打开您在步骤 1 中创建的 OAuth2 应用程序。
-
将返回的
callbackUrl值添加到应用程序的重定向 URI 配置中。CreateOauth2CredentialProvider -
保存更改。