使用保存的凭据将 Snowflake Oauth 更改为专用链接
- 版本 :2022.1 及更高版本
默认情况下,对于由提供程序为 Tableau Server 生成并由同一站点中的所有用户共享的 OAuth 令牌,Tableau Snowflake 连接器使用托管密钥链。从 Tableau 2020.4 开始,您可以将 Tableau Server 配置为使用新的 OAuth 服务。在这种情况下,您不必将 IP 地址放入安全列表即可在 AWS 专用链接或 Azure 专用链接 VPC 中运行 Oauth 流程。
默认情况下,对于由提供程序为 Tableau Server 生成并由同一站点中的所有用户共享的 OAuth 令牌,Tableau Snowflake 连接器使用托管密钥链。从 Tableau 2020.4 开始,您可以将 Tableau Server 配置为使用新的 OAuth 服务。在这种情况下,您不必将 IP 地址放入安全列表即可在 AWS 专用链接或 Azure 专用链接 VPC 中运行 Oauth 流程。
您可以通过将 Snowflake 连接器配置为将保存的凭据与新的 OAuth 服务一起使用,从而将 Tableau Server 转换为支持“专用链接”环境。
步骤 1:使用 Snowflake 获取客户端 ID
若要向 Snowflake 注册自定义 OAuth 客户端,请按照为自定义客户端配置 Snowflake OAuth中的过程操作。
注册后,您将使用以下 Snowflake 参数来配置 Tableau Server:
帐户实例 URL
客户端 ID
客户端密码
重定向 URL
步骤 2:针对 Snowflake Oauth 配置 Tableau Server
在 Tableau Server 计算机上,运行以下命令以启用 Snowflake OAuth 服务:
tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true
在文本编辑器中复制、粘贴和自定义以下命令:
tsm configuration set -k oauth.snowflake.clients -v " [{\"oauth.snowflake.instance_url\":\"https://account.snowflakecomputing.com\", \"oauth.snowflake.client_id\":\"client_id_string\", \"oauth.snowflake.client_secret\":\"client_secret_string\", \"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" }]"
oauth.snowflake.clients
密钥采用密钥对数组。密钥对中的每个元素都必须用双引号封装。双引号必须转义为\"
。替换每个密钥的值,如下所示:
注意:在运行命令之前,请仔细验证语法。TSM 不会验证此输入。
将命令复制到 TSM CLI 并运行该命令。
帐户实例 URL:
oauth.snowflake.instance_url
客户端 ID:
oauth.snowflake.client_id
客户端密码:
oauth.snowflake.client_secret
重定向 URL:
oauth.snowflake.redirect_uri
输入以下命令以应用更改:
tsm pending-changes apply
如果待定更改需要重新启动服务器,
pending-changes apply
命令将显示一个提示,告知您将进行重新启动。即使服务器已停止,此提示也会显示,但在这种情况下不会重新启动。您可以使用--ignore-prompt
选项隐藏提示,但这样做不会改变重新启动行为。如果更改不需要重新启动,则会在不提示的情况下应用更改。有关详细信息,请参阅tsm pending-changes apply。
为站点配置自定义 OAuth
您可以为站点配置自定义 Snowflake OAuth 客户端。
考虑将自定义 OAuth 客户端配置为 1) 覆盖 OAuth 客户端(如果为服务器配置)或 2) 支持安全连接到需要唯一 OAuth 客户端的数据。
配置自定义 OAuth 客户端时,站点级别配置优先于任何服务器端配置,并且默认情况下创建的所有新 OAuth 凭据都使用站点级别 OAuth 客户端。无需重新启动 Tableau Server 即可使配置生效。
重要信息:在配置自定义 OAuth 客户端之前建立的现有 OAuth 凭据暂时可用,但服务器管理员和用户都必须更新他们保存的凭据以帮助确保不间断的数据访问。
步骤 1:准备 OAuth 客户端 ID、客户端密码和重定向 URL
在配置自定义 OAuth 客户端之前,您需要下列信息。准备好这些信息后,您可以为站点注册自定义 OAuth 客户端。
OAuth 客户端 ID 和客户端密码:首先向数据提供程序(连接器)注册 OAuth 客户端,以检索为 Tableau Server 生成的客户端 ID 和密码。
重定向 URL:注意正确的重定向 URL。在下面步骤 2 的注册过程中,您将需要此 URL。
Https://<您的服务器名称>.com/auth/add_oauth_token
例如,https://example.com/auth/add_oauth_token
步骤 2:注册 OAuth 客户端 ID 和客户端密码
按照下面描述的过程将自定义 OAuth 客户端注册到站点。
使用管理员凭据登录到 Tableau Server 站点,并导航到“设置”页面。
在“OAuth 客户端注册”下,单击“添加 OAuth 客户端”按钮。
输入所需信息,包括上述步骤 1 中的信息:
对于“连接类型”,选择要配置其自定义 OAuth 客户端的连接器。
对于“客户端 ID”、“客户端密码”和“重定向 URL”,输入您在上面的步骤 1 中准备的信息。
单击“添加 OAuth 客户端”按钮以完成注册过程。
(可选)对所有支持的连接器重复步骤 3。
单击“设置”页面底部或顶部的“保存”按钮以保存更改。
步骤 3:验证和更新保存的凭据
为帮助确保不间断的数据访问,您(和您的站点用户)必须删除之前保存的凭据并再次添加,以便为站点使用自定义 OAuth 客户端。
导航到“我的帐户设置”页面。
在“保存的数据源凭据”下,执行以下操作:
单击您在上述步骤 2 中配置的自定义 OAuth 客户端的连接器的现有已保存凭据旁边的“删除”。
在连接器名称旁边,单击“添加”并按照提示进行操作以 1) 连接到在上述步骤 2 中配置的自定义 OAuth 客户端,以及 2) 保存最新的凭据。
步骤 4:通知用户更新他们保存的凭据
确保通知您的站点用户更新他们为连接器保存的凭据,该连接器的自定义 OAuth 客户端是您在上面的步骤 2 中配置的。站点用户可以使用更新保存的凭据描述的过程来更新他们保存的凭据。