

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# HubSpot
<a name="identity-idp-hubspot"></a>

HubSpot 可以配置为出站资源访问的 AgentCore 身份凭证提供商。这允许您的代理通过 HubSpot OAuth2 服务对用户进行身份验证，并获取 HubSpot API 资源的访问令牌。

**注意**  
HubSpot 不支持 M2M/Client 凭证流程。

## 出站
<a name="identity-idp-hubspot-outbound"></a>

**注意**  
AgentCore Identity 会为您创建的每个凭证提供商颁发唯一的 OAuth2 回调 URL。独特的回调 URL 支持会话绑定，通过确保授权响应只能针对发起该请求的特定凭证提供商进行兑换，从而保护 OAuth2 授权码交换免受跨提供商重放和 CSRF-style 攻击。由于每个提供商的网址都是唯一的，所以你要等到打电话**之后才**会知道`CreateOauth2CredentialProvider`。首先创建您的 HubSpot OAuth2 客户端，然后在 Id AgentCore entity 发布回调 URL 后返回 HubSpot 开发者控制台注册回调 URL。

 **第 1 步：创建 HubSpot OAuth2 客户端 ** 

使用以下步骤设置 HubSpot OAuth2 应用程序并获取身份所需的客户端凭证。 AgentCore 在 I AgentCore dentity 发布唯一回调 URL 后，您将在步骤 3 中注册重定向 URI。

 **配置 HubSpot OAuth2 应用程序 ** 

1. 打开开发者控制台 HubSpot。

1. 在主导航栏中，选择 “**应用程序” **。

1. 选择 **Create App（创建应用程序）**。

1. 输入应用程序的名称。

1. 打开 “**身份验证**” 选项卡。暂时将 “重定向网址” 字段留空——您将在步骤 3 中添加唯一的回传 URL。

1. 配置应用程序所需的任何范围。

1. 创建应用程序后，返回应用程序的 ** “**身份验证” 选项卡。

1. 记录客户端 ID 和客户端密钥，在 I AgentCore dentity 中创建 HubSpot 资源提供者时需要这些信息。

有关更多详细信息，请参阅 OAuth 快速入门指南。[ HubSpot ](https://developers.hubspot.com/docs/apps/legacy-apps/authentication/oauth-quickstart-guide)

 **第 2 步：创建 AgentCore 身份凭证提供商 ** 

要配置 HubSpot 为出站资源提供者，请使用以下命令：

```
{
  "name": "Hubspot",
  "credentialProviderVendor": "HubspotOauth2",
  "oauth2ProviderConfigInput" : {
    "includedOauth2ProviderConfig": {
      "clientId": "your-client-id",
      "clientSecret": "your-client-secret"
    }
  }
}
```

**注意**  
调用时 GetResourceOAuth2Token，范围必须包括`oauth`。

[CreateOauth2CredentialProvider](https://docs.amazonaws.cn/bedrock-agentcore-control/latest/APIReference/API_CreateOauth2CredentialProvider.html)响应包含一个`callbackUrl`字段。此网址是该凭证提供商所独有的，看起来像:`https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`. 保存此值以供下一步使用。

 **第 3 步：使用注册唯一的回传 URL HubSpot ** 

返回 HubSpot 开发者控制台，将唯一的回调 URL 添加到 OAuth2 应用程序的重定向 URI 列表中。

1. 登录 HubSpot 开发者控制台并打开您在步骤 1 中创建的 OAuth2 应用程序。

1. 将返回的`callbackUrl`值添加到应用程序的重定向 URI 配置中。`CreateOauth2CredentialProvider`

1. 保存更改。