

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

# 为谷歌云端硬盘设置 OAuth 2.0 身份验证
<a name="kb-managed-googledrive-oauth2-setup"></a>

OAuth 2.0 身份验证 (`OAUTH2`) 使用 OAuth 2.0 客户端 ID 和密钥以及您从单个 Google 用户登录中获得的刷新令牌进行身份验证。该连接器仅访问用户可以访问的内容——他们自己的云端硬盘、与他们共享的文件以及他们所属的任何共享云端硬盘。

**重要**  
OAuth 2.0 不支持文档级访问控制 (ACL)。要按用户权限筛选查询结果，请使用服务帐号身份验证。请参阅[为 Google 云端硬盘设置服务帐号身份验证](kb-managed-googledrive-service-account-setup.md)。

## 第 1 步：启用 Google 云端硬盘 API
<a name="kb-managed-googledrive-oauth2-step1"></a>

1. 打开 [Google Cloud 控制台](https://console.cloud.google.com/)，选择或创建项目。

1. 在导航菜单中，选择 “**API 和服务**”，然后选择 “**资源库**”。

1. 搜索 **Google 云端硬盘 API**，然后选择**启用**。

## 第 2 步：创建 OAuth 2.0 凭证
<a name="kb-managed-googledrive-oauth2-step2"></a>

1. 在导航菜单中，选择 **API 和服务**，然后选择 “**凭据**”。

1. 如果出现提示，请先配置 **OAuth 同意屏幕**。如果您的 Google Workspace 管理员允许，请选择**内**部；否则选择**外部**。添加姓名、支持电子邮件和`https://www.googleapis.com/auth/drive.readonly`范围。

1. 在 “**凭据**” 页面上，选择**创建凭据**，然后选择 **OAuth 客户端 ID**。

1. 对于**应用程序类型**，选择 **Web 应用程序**。

1. 在 “**授权重定向 URI**” 下，添加，`https://developers.google.com/oauthplayground`这样您就可以在步骤 3 中获取刷新令牌。

1. 选择**创建**。复制**客户端 ID** 和**客户机密钥**。

## 步骤 3：获取刷新令牌
<a name="kb-managed-googledrive-oauth2-step3"></a>

使用 OAuth 2.0 Playground 为连接器应使用其访问权限的 Google 用户获取刷新令牌。用户必须有权访问您要抓取的所有云端硬盘内容。

1. 打开 [OAuth 2.0](https://developers.google.com/oauthplayground/) 游乐场。

1. 选择齿轮图标（**OAuth 2.0 配置**），选择**使用您自己的 OAuth 凭据**，然后输入步骤 2 中的客户端 ID 和客户端密钥。

1. 在**步骤 1：选择并授权 API 中，`https://www.googleapis.com/auth/drive.readonly`在**输入您自己的范围**字段中输入**，然后选择**授权 API**。

1. 以 Google 用户身份登录，连接器应使用其访问权限，然后授予所请求的权限。

1. 在**步骤 2：交换令牌的授权码**中，选择**交换令牌的授权码**。从响应中复制**刷新令牌**。

## 第 4 步：创建 Secrets Manager 密钥
<a name="kb-managed-googledrive-oauth2-step4"></a>

使用以下键值对将凭证存储在 AWS Secrets Manager 密钥中：

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "refreshToken": "{{your-refresh-token}}"
}
```

使用以下命令创建密钥 AWS Command Line Interface：

```
aws secretsmanager create-secret \
  --name {{bedrock-google-drive-oauth2-creds}} \
  --secret-string file://secret.json
```

记录响应中的秘密 ARN。您可以将其用作数据源`secretArn`。

**注意**  
如果刷新令牌被撤销或过期，则同步会因身份验证错误而失败。刷新令牌可以由用户、您的 Google Workspace 管理员撤销，也可以在长时间处于非活动状态后撤销。 Re-run OAuth 2.0 Playground 流程用于获取新的刷新令牌并更新密钥。

## 后续步骤
<a name="kb-managed-googledrive-oauth2-next"></a>

存储密钥后，在`authType`设置为的情况下创建数据源`OAUTH2`。请参阅[连接 Google 云端硬盘数据源](kb-managed-ds-googledrive-connect.md)。