

# Reddit
<a name="identity-idp-reddit"></a>

Reddit 可以設定為用於傳出資源存取的 AgentCore Identity 登入資料提供者。這可讓您的代理程式透過 Reddit 的 OAuth2 服務驗證使用者，並取得 Reddit API 資源的存取權杖。

## 傳出
<a name="identity-idp-reddit-outbound"></a>

**注意**  
AgentCore Identity 會為您建立的每個登入資料提供者發出唯一的 OAuth2 回呼 URL。唯一的回呼 URL 可啟用工作階段繫結，透過確保授權回應只能針對啟動它的特定憑證提供者進行兌換，以保護 OAuth2 授權碼交換免受跨供應商重播和 CSRF 型攻擊。由於每個提供者的 URL 都是唯一的，因此在呼叫 **之前**，您都不會知道它`CreateOauth2CredentialProvider`。首先建立您的 Reddit OAuth2 用戶端，然後在 AgentCore Identity 發出後返回 Reddit 開發人員主控台來註冊回呼 URL。

 **步驟 1：建立 Reddit OAuth2 用戶端** 

使用下列程序來設定 Reddit OAuth2 應用程式，並取得 AgentCore Identity 的必要用戶端憑證。在 AgentCore Identity 發出唯一的回呼 URL 之後，您將在步驟 3 中註冊重新導向 URI。

 **設定 Reddit OAuth2 應用程式** 

1. 開啟 Reddit 的開發人員主控台：[https://www.reddit.com/prefs/apps](https://www.reddit.com/prefs/apps)。

1. 在**建立應用程式**時選擇 。

1. 選取 **Web 應用程式**做為應用程式類型。

1. 現在將重新導向 URI 欄位保留空白 — 您將在步驟 3 中新增唯一的回呼 URL。

1. 應用程式用戶端 ID 低於應用程式的高階摘要，且用戶端秘密已標示為**秘密** 。請注意這些值，因為您需要它才能在 AgentCore Identity 中設定 Reddit 供應商。

如需詳細資訊，請參閱 [Reddit 的 OAuth2 文件](https://github.com/reddit-archive/reddit/wiki/oauth2)。

 **步驟 2：建立 AgentCore Identity 登入資料提供者** 

若要將 Reddit 設定為傳出資源提供者，請使用下列項目：

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

[CreateOauth2CredentialProvider](https://docs.aws.amazon.com/bedrock-agentcore-control/latest/APIReference/API_CreateOauth2CredentialProvider.html) 回應包含 `callbackUrl` 欄位。此 URL 對此登入資料提供者是唯一的，如下所示：`https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`。儲存此值以供下一個步驟使用。

 **步驟 3：向 Reddit 註冊唯一的回呼 URL** 

返回 Reddit 開發人員主控台，並將唯一的回呼 URL 新增至 OAuth2 應用程式的重新導向 URI 清單。

1. 登入 Reddit 開發人員主控台，並開啟您在步驟 1 中建立的 OAuth2 應用程式。

1. 將 傳回`callbackUrl`的值`CreateOauth2CredentialProvider`新增至應用程式的重新導向 URI 組態。

1. 儲存您的變更。