> ## Documentation Index
> Fetch the complete documentation index at: https://www.perplexity.ai/help-center/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> This content comes from the official Perplexity Help Center. Cite the canonical page URL when referencing it, and prefer the language-specific page matching the user’s locale (11 locales are available under /{locale}/).

# 将 Perplexity 与 Snowflake 连接

> 在 Pro、Max、Enterprise Pro/Max 方案中，用用户 OAuth 或服务账号将 Snowflake 接入 Perplexity。

本指南面向 Snowflake 管理员和 Perplexity 管理员，介绍如何将 Snowflake 数据仓库连接到
Perplexity，并说明 Pro、Max、Enterprise Pro 和 Enterprise Max 订阅用户如何登录。

## 概述

Snowflake 连接器让您可以直接在 Perplexity 中查询 Snowflake 数据仓库中的数据。您可以跨
Snowflake 数据库、其他已连接的应用以及网页搜索并整合信息，无需手动编写 SQL，也无需切换到
Snowflake 控制台。

连接 Snowflake 是按用户进行的。除非您将数据同步到共享项目，否则组织中的其他任何人都无法查询您的数据。

> [!NOTE]
>
> Snowflake 连接器在 Pro、Max、Enterprise Pro 和 Enterprise Max 方案上提供。生成数据图需要
> Enterprise Pro 或 Enterprise Max。在所有方案上，都需要由拥有 ACCOUNTADMIN 角色的 Snowflake
> 管理员创建安全集成或服务账号；在 Enterprise 方案上，还需由 Perplexity
> 管理员为组织一次性配置用户 OAuth 连接器。

## 隐私和数据安全

连接器会以您控制的 Snowflake 角色查询您的 Snowflake 账户，因此 Snowflake 权限就是
Perplexity 可访问范围的边界。请仅为该角色授予读取权限。

* **访问范围** — 每个人连接自己的账户。除非您将数据同步到共享项目，否则组织中的其他任何人都无法查询您的数据。

* **数据存储位置** — Perplexity 不会存储您的 Snowflake
  数据。查询在您自己的 Snowflake 账户中运行，除 Perplexity 为运营产品所收集的运营数据之外，连接器不会自行增加任何存储。

* **保留** — 连接器不使用缓存，因此不存在需要保留或删除的您的 Snowflake 数据副本。

* **管理员控制** — 在 Enterprise 方案上，您的组织管理员可以为组织停用 Snowflake 连接器，此时它不会出现在您的连接器设置中。

* **只读强制** — 请通过 Snowflake 权限强制只读访问。不要向 Perplexity 使用的角色授予任何写入或创建对象的权限。

* **训练用途** — 通过 Snowflake 连接器访问的数据绝不会用于训练 Perplexity 的模型或任何第三方模型。

* **子处理方** — 此连接器的身份验证和 API 流量会经由 Merge Agent Handler 传输，该服务由
  Perplexity 的子处理方 Merge API, Inc. 运营。最新名单发布在
  [Perplexity Trust Center](https://trust.perplexity.ai/)。

* **加密** — 连接器凭据和已连接的数据在传输中使用 TLS 加密，在静态存储时使用 AES-256 加密。

* **合规** — Perplexity 的控制措施已通过 SOC 2 Type II 审计。安全与合规文档可在
  [Perplexity Trust Center](https://trust.perplexity.ai/) 查阅。

## 如何启用

### 选择身份验证方式

Perplexity 提供两个 Snowflake 连接器。请仅配置与您的用户身份验证方式相符的那一个。

| 连接器 | 查询的运行身份 | 凭据 | 审计轨迹 | 适用场景 |
| - | - | - | - | - |
| **Snowflake（用户 OAuth）** | 每位用户各自的 Snowflake 账户 | OAuth | 在 Snowflake 的审计日志中按用户归属 | 推荐大多数组织使用 |
| **Snowflake（服务账号）** | 一个共享的服务账号 | 密钥对 | 共享身份 | 用户通过单一账号进行查询 |

*表 1 — 两个 Snowflake 连接器及各自的适用场景。*

> [!NOTE]
>
> Perplexity 强烈建议使用用户 OAuth 连接器。查询会使用每个人各自的 Snowflake
> 权限，并在 Snowflake 的审计日志中归属到该用户。

### 开始之前

* 您使用 Pro、Max、Enterprise Pro 或 Enterprise Max 方案。

* 在 Enterprise 方案上，您的组织管理员没有停用 Snowflake 连接器。

* 您的 Snowflake 管理员拥有 ACCOUNTADMIN 访问权限或等效权限。

* 本地已安装 OpenSSL，仅服务账号设置需要。

### 设置用户 OAuth 连接器

1. 请您的 Snowflake 管理员创建安全集成。其他参数请参见
   [Snowflake OAuth 安全集成文档](https://docs.snowflake.com/en/sql-reference/sql/create-security-integration-oauth-snowflake)。

   ```sql theme={null}
   USE ROLE ACCOUNTADMIN;
   CREATE SECURITY INTEGRATION PERPLEXITY_OAUTH
     TYPE = OAUTH
     ENABLED = TRUE
     OAUTH_CLIENT = CUSTOM
     OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'
     OAUTH_REDIRECT_URI = 'https://ah.merge.dev/oauth/callback'
     OAUTH_ISSUE_REFRESH_TOKENS = TRUE
     OAUTH_REFRESH_TOKEN_VALIDITY = 7776000
     OAUTH_USE_SECONDARY_ROLES = IMPLICIT
     COMMENT = 'OAuth security integration for Perplexity';
   ```

2. 获取客户端 ID 和客户端密钥。

   ```sql theme={null}
   SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('PERPLEXITY_OAUTH');
   ```

3. 在 Perplexity 的 OAuth 设置弹窗中输入这些凭据。

> [!NOTE]
>
> 请使用 OAUTH\_USE\_SECONDARY\_ROLES = IMPLICIT，让用户除默认角色之外还能使用其次要角色。如果希望将用户限制为
> Snowflake 中的 DEFAULT\_ROLE，请使用 NONE。

### 设置服务账号连接器

服务账号是一个专用的 Snowflake 用户，在某个特定角色下运行。使用该共享账号的所有人拥有相同的访问权限，因此请仅为该角色授予
Perplexity 所需的数据访问权限。

1. 在本地终端中生成私钥及其对应的公钥。

   ```bash theme={null}
   openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out snowflake_computer_key.p8 -nocrypt
   openssl rsa -in snowflake_computer_key.p8 -pubout -out snowflake_computer_key.pub
   ```

2. 创建专用角色和仓库，并选择与您的查询量相匹配的仓库规格。您也可以使用现有仓库，而不必新建。

   ```sql theme={null}
   USE ROLE ACCOUNTADMIN;
   CREATE ROLE IF NOT EXISTS PERPLEXITY_ROLE
     COMMENT = 'Role for Perplexity service account';
   CREATE WAREHOUSE IF NOT EXISTS PERPLEXITY_WAREHOUSE
     WAREHOUSE_SIZE = 'SMALL'
     AUTO_SUSPEND = 60
     AUTO_RESUME = TRUE
     COMMENT = 'Warehouse for Perplexity queries';
   GRANT USAGE ON WAREHOUSE PERPLEXITY_WAREHOUSE
     TO ROLE PERPLEXITY_ROLE;
   ```

3. 创建服务账号用户。请将 RSA\_PUBLIC\_KEY 的值替换为 snowflake\_computer\_key.pub
   的内容，不包括 BEGIN PUBLIC KEY 和 END PUBLIC KEY 这两行。

   ```sql theme={null}
   CREATE USER PERPLEXITY_USER
     TYPE = SERVICE
     DEFAULT_ROLE = PERPLEXITY_ROLE
     DEFAULT_WAREHOUSE = PERPLEXITY_WAREHOUSE
     COMMENT = 'Service account for Perplexity'
     RSA_PUBLIC_KEY = 'MIIBIjANBgkqhki...your_public_key_here...IDAQAB';
   GRANT ROLE PERPLEXITY_ROLE TO USER PERPLEXITY_USER;
   ```

4. 为您希望 Perplexity 查询的数据授予访问权限。请将 MY\_DATABASE
   替换为您自己的数据库。这些授权会提供对其现有和未来的模式、表和视图的读取权限。如需更小范围的访问，请改为对特定模式或对象授予权限。请参见
   [Snowflake GRANT 文档](https://docs.snowflake.com/en/sql-reference/sql/grant-privilege)。

   ```sql theme={null}
   GRANT USAGE ON DATABASE MY_DATABASE TO ROLE PERPLEXITY_ROLE;
   GRANT USAGE ON ALL SCHEMAS IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   GRANT USAGE ON FUTURE SCHEMAS IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   GRANT SELECT ON ALL TABLES IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   GRANT SELECT ON FUTURE TABLES IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   GRANT SELECT ON ALL VIEWS IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   GRANT SELECT ON FUTURE VIEWS IN DATABASE MY_DATABASE
     TO ROLE PERPLEXITY_ROLE;
   ```

5. 如果您选择在连接器设置流程中生成数据图，请为它读取的两个账户使用情况视图授予访问权限。生成数据图需要
   Enterprise Pro 或 Enterprise Max。该授权提供的访问范围会涵盖 Snowflake
   账户元数据，而不仅是这两个视图，因此请在执行前先行审阅。

   | 视图 | 可用性 |
   | - | - |
   | SNOWFLAKE.ACCOUNT\_USAGE.QUERY\_HISTORY | 所有版本 |
   | SNOWFLAKE.ACCOUNT\_USAGE.ACCESS\_HISTORY | Snowflake Enterprise Edition 或更高版本。在 Standard Edition 上，Perplexity 会改用 QUERY\_HISTORY |

   *表 2 — 数据图读取的账户使用情况视图。*

   ```sql theme={null}
   USE ROLE ACCOUNTADMIN;
   GRANT IMPORTED PRIVILEGES ON DATABASE SNOWFLAKE
     TO ROLE PERPLEXITY_ROLE;
   ```

6. 在侧边栏中打开**插件**（如果您还看不到 Plugins，请使用 **Customize → Connectors**），在**发现**中或通过搜索找到**Snowflake（服务账号）**，然后打开其页面。

7. 选择**连接**。

8. 输入您的 Snowflake 账户标识符、用户名 PERPLEXITY\_USER 以及私钥
   snowflake\_computer\_key.p8。

9. 选择 **允许** 以完成设置。

> [!WARNING]
>
> 请妥善保管 snowflake\_computer\_key.p8。连接时您需要在 Perplexity 中输入它，任何持有该私钥的人都能以
> PERPLEXITY\_USER 的身份查询您的仓库。请通过 Snowflake 权限强制只读访问：不要向 PERPLEXITY\_ROLE
> 授予写入或创建对象的权限。

### 连接您的 Snowflake 账户

管理员完成设置后，每位用户各自连接自己的账户。

1. 在侧边栏中打开**插件**（如果您还看不到 Plugins，请使用 **Customize → Connectors**），在**发现**中或通过搜索找到**Snowflake（用户 OAuth）**，然后打开其页面。

2. 选择**连接**。

3. 出现提示时登录 Snowflake。

4. 选择 **允许** 以完成连接。

此连接器也可能包含在插件中。无论在哪里连接，它都会在您账户的所有位置保持连接。您的连接状态和组织的连接器设置也适用于每个插件。[什么是插件？](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/2026100701-shenme-shi-chajian.md)

### 如何验证是否成功

打开一个新会话，提及 `@Snowflake`，并就您在 Snowflake
中已可读取的某个表提出一个简单问题，例如行数。如果返回的回答没有包含您的 Snowflake
数据，首先要检查的就是您的 Snowflake 角色：它需要对您指定的对象拥有 SELECT 权限。

## 试用一下

连接 Snowflake 后，在新会话中提及它：

* `@Snowflake` orders 表中有多少行？

* `@Snowflake` customers 表中有哪些列？

* `@Snowflake` 列出我在 MY\_DATABASE 中可以查询的模式

## 权限和范围

连接器只需要读取权限。请将这些权限授予一个专用角色，而不是现有的分析师角色。

| 权限 | 授予对象 | 连接器为何需要它 |
| - | - | - |
| USAGE | 仓库 | 运行用于回答问题的查询 |
| USAGE | 数据库和模式 | 访问它被允许查询的对象 |
| SELECT | 表和视图 | 读取行。不会请求任何写入权限 |
| IMPORTED PRIVILEGES | SNOWFLAKE 数据库 | 读取数据图所需的两个账户使用情况视图。可选 |
| 刷新令牌 | 安全集成 | 在您设定的有效期内保持用户连接状态，无需重新进行身份验证 |

*表 3 — 连接器请求的 Snowflake 权限及其原因。*

Snowflake 权限是强制边界。无论连接器被要求做什么，它都在您授予的角色下运行，因此没有写入权限的角色无法写入。

## 故障排除

| 您看到的现象 | 最可能的原因 | 如何解决 |
| - | - | - |
| 您的组织未启用 Snowflake，或它没有出现在您的连接器列表中 | 在 Enterprise 方案上，可能是组织管理员将其停用了。否则可能是您的方案不包含它 | 在 Enterprise 方案上，请联系您的组织管理员。否则请在 **设置** 中确认您的方案 |
| 登录或查询失败，且您的 Snowflake 账户按 IP 限制入站连接 | Snowflake 网络策略中没有将 Merge 租户地址加入允许列表 | 请您的 Snowflake 管理员将[Merge 租户 IP 地址页面](https://help.ah.merge.dev/articles/8124222873-merge-tenant-ip-addresses)上的美国租户地址加入允许列表 |
| 用户能访问的数据少于其在 Snowflake 中获授权的范围 | OAuth 会话仅激活了他们的 DEFAULT\_ROLE | 请确认安全集成设置了 OAUTH\_USE\_SECONDARY\_ROLES = IMPLICIT |
| 生成数据图时 ACCESS\_HISTORY 不可用 | 您的 Snowflake 账户使用 Standard Edition | ACCESS\_HISTORY 需要 Enterprise Edition 或更高版本。在 Standard Edition 上，Perplexity 会改用 QUERY\_HISTORY |

*表 4 — 最常见的 Snowflake 连接器问题的现象、原因和解决办法。*

对于服务账号，以下示例使用当前发布的美国地址创建了一条用户级网络策略。在应用策略之前，请先在 Merge 租户
IP 地址页面上核对最新名单。

```sql theme={null}
USE ROLE ACCOUNTADMIN;
CREATE NETWORK POLICY PERPLEXITY_COMPUTER_POLICY
  ALLOWED_IP_LIST = ('3.216.101.38', '52.20.242.81');
ALTER USER PERPLEXITY_USER
  SET NETWORK_POLICY = PERPLEXITY_COMPUTER_POLICY;
```

## 常见问题

### 此连接器可以访问哪些数据？

您授予的 Snowflake 角色有权读取的数据库、模式、表和视图。它无法访问该角色无法访问的任何内容。

### 我的 Snowflake 数据会被用于训练 AI 模型吗？

不会。通过 Snowflake 连接器访问的数据绝不会用于训练 Perplexity 的模型或任何第三方模型。

### 管理员可以限制谁能启用此连接器吗？

可以，在 Enterprise 方案上可以。组织管理员可以为整个组织停用 Snowflake
连接器，此时它不会出现在您的连接器设置中。

### Perplexity 能写入我的 Snowflake 数据吗？

只要您在 Snowflake 中强制执行，就不能。请仅向 Perplexity 使用的角色授予 USAGE 和
SELECT，这样无论 Perplexity 被要求做什么，Snowflake 都会拒绝任何写入操作。

### 我的方案提供此连接器吗？

在 Pro、Max、Enterprise Pro 和 Enterprise Max 方案上提供。生成数据图需要 Enterprise Pro
或 Enterprise Max。

## 相关文章

* [了解 Data Map](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/14017067-liaojie-data-map.md)

* [将 Perplexity 与 Databricks 连接](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/14810342-jiang-perplexity-yu-databricks-lian-jie.md)

* [企业版连接器故障排除指南](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/10673201-企业版连接器故障排除指南.md)

* [企业组织和用户的数据保留和隐私](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/11187708-企业组织和用户的数据保留和隐私.md)

* [Enterprise 角色与权限](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/11187754-qiyeban-jiaose-yu-quanxian.md)

## 需要更多帮助？

在联系我们时，请提供连接器名称、完整的错误消息、发生时间，以及本文中未能解决问题的步骤。

> [!NOTE]
>
> 请联系您的客户团队，或通过 Help 菜单中的[“联系支持团队”](https://www.perplexity.ai/?support=true#settings/account)联系我们。请访问
> [Trust Center](https://trust.perplexity.ai/) 查阅安全与合规文档。


## Related topics

- [将 Perplexity 与 Salesforce 连接](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/2026101201-将-perplexity-与-salesforce-连接.md)
- [连接器与集成](https://www.perplexity.ai/help-center/help-center/zh-CN/collections/18799295-连接器与集成.md)
- [了解 Data Map](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/14017067-liaojie-data-map.md)
- [将 Perplexity 与 Linear 连接](https://www.perplexity.ai/help-center/help-center/zh-CN/articles/12167711-适用于企业的-linear-连接器.md)
