Snowflake Open Catalog 中的 External OAuth 概述¶
本主题教您如何配置使用 OAuth 2.0 访问 Snowflake Open Catalog 的 External OAuth 服务器。
External OAuth 可集成客户的 OAuth 2.0 服务器,提供无缝的 SSO 体验,使查询引擎能够访问 Open Catalog。
Open Catalog 支持以下外部授权服务器:
Auth0
Microsoft Entra ID
Okta
使用案例和优势¶
Open Catalog 将令牌颁发委托给专门的授权服务器,以确保 OAuth 客户端和用户正确进行身份验证这样就可以集中管理向 Open Catalog 发放的令牌。
客户端无需访问浏览器即可对 Snowflake 进行身份验证,便于与External OAuth 服务器集成。
常规工作流程¶
对于每个受支持的身份提供商,与 External OAuth 授权服务器相关的 OAuth 工作流程可总结如下。请注意,第一步仅发生一次,其余步骤在每次尝试访问 Open Catalog 数据时发生。
在您的环境中配置 External OAuth 授权服务器,并在 Open Catalog 中配置安全集成以建立信任。
服务主体尝试通过客户端应用程序访问 Open Catalog 数据,并且应用程序尝试验证服务主体。
通过验证后,授权服务器会向查询引擎发送一个 JSON Web 令牌(即 OAuth 令牌)。
Open Catalog 驱动程序将连接字符串传递给 Open Catalog,其中包含 OAuth 令牌。
Open Catalog 验证 OAuth 令牌。
Open Catalog 执行服务主体查找。
验证后,Open Catalog 会实例化一个会话,供服务主体根据其角色访问 Open Catalog 中的数据。