---
schema_version: "1"
id: 8b5b634deead7c88c34586e0539d70a37041596115383398c619812d051285d8
title: Snowflake 的外部 OAuth
collection: tableau
version: next
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/next/zh-cn/server-linux/snowflake_oauth_idp.md
canonical_url: https://help.tableau.com/v0.0/server-linux/zh-cn/snowflake_oauth_idp.htm
source_site: help.tableau.com
content_type: documentation
content_hash: c32a742b12330be211d8129a926b611d6489cc500899b9d52b92d8693915041b
description: Configure external OAuth to federate identity from an IdP to Snowflake.
---
[跳转到主要内容](#main-content)

# Snowflake 的外部 OAuth

从 Tableau 2024.3 开始，您可以使用 OAuth 2.0/OIDC 将外部身份提供程序的身份联合到 Snowflake。

根据身份提供程序的不同，配置集成需要执行不同的步骤。这是一个简略概述，旨在指导您的配置，但不提供您在身份提供程序文档中找到的必要详细信息。假设您熟悉配置 OAuth 并了解使用外部身份提供程序设置身份验证所需的技术细节。

## 在 Snowflake 上配置 IDP

有关配置 IDP 的信息，请参见 Snowflake 帮助系统中的[外部 OAuth 概述](https://docs.snowflake.com/en/user-guide/oauth-ext-overview)。

## 在 Tableau 上配置 IDP

1. 在 IDP 上为 Tableau Desktop 以及为 Tableau Cloud 或 Tableau Server 创建 OAuth 客户端。Desktop 客户端启用 [PKCE](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce) 并使用 `http://localhost` 重定向。
2. 创建 Tableau OAuth 配置文件。有关如何执行此操作的详细信息，请参见 [github](https://tableau.github.io/connector-plugin-sdk/docs/oauth) 上的 [OAuth 配置和使用](https://tableau.github.io/connector-plugin-sdk/docs/oauth)，以及[此处](https://github.com/tableau/connector-plugin-sdk/tree/master/samples/components/oauth)的示例。我们欢迎提供其他 IDP 的其他示例。
    
    - 请务必在 Tableau OAuth 配置 ID 前添加“custom\_”前缀。
        
        **注意：**OAuth 配置 ID 的最大限制为 36 个字符。长于此长度的 ID 可能不会生成错误，但将不起作用。
    - 如果您的 IDP 支持动态本地主机端口，请禁用 `OAUTH_CAP_FIXED_PORT_IN_CALLBACK_URL`。如果您的 IDP 不支持此功能，请确保将多个本地主机回调 URL 添加到配置文件中和 IDP 上的允许列表。
3. 在与桌面主机（Tableau Desktop、Tableau Prep Builder、Tableau Bridge）上的每个应用程序关联的 OAuthConfigs 文件夹中，以及在将通过站点设置页面使用 OAuth 的每个 Tableau Server 和 Tableau Cloud 站点上，安装新的 Tableau OAuth 配置文件。有关更多详细信息，请参见 [Desktop 上的自定义 OAuth 配置](https://tableau.github.io/connector-plugin-sdk/docs/oauth#site-level-oauth-clients)和[站点级别 OAuth 客户端](https://tableau.github.io/connector-plugin-sdk/docs/oauth#custom-oauth-configs-on-desktop)。

## 连接到 Snowflake

连接时，必须选择 OAuth，并选择之前安装的 OAuth 配置。

![](/tableau/next/zh-cn/server-linux/zh-cn/Img/snowflake_connect_oauth.png)

## Okta

如果使用 Okta，最好使用“自定义授权服务器”而不是“组织授权服务器”。自定义授权服务器更加灵活。默认创建一个自定义授权服务器，称为“默认”。授权 URL 应如下所示：

`https://${yourOktaDomain}/oauth2/{authServerName}/v1/authorize`

![okta 仪表板](/tableau/next/zh-cn/server-linux/zh-cn/Img/athena_okta.png)