You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Streamlit中使用Snowpark:AzureAD SSO场景下用户名或密码错误

解决Streamlit Snowpark连接Azure AD SSO的问题

你的问题根源在于Streamlit默认的Snowpark连接方式采用用户名密码认证,但你使用的是Azure AD SSO登录,因此需要改用适配SSO的认证方式,以下是几种可行方案:

方案1:外部浏览器认证(适合本地开发/交互式场景)

这种方式会唤起浏览器完成Azure AD登录,无需在配置中存储密码。

1. 更新.streamlit/secrets.toml配置

[snowpark]
account = "XX12345.eu-west-1"
user = "你的Azure AD关联邮箱"
authenticator = "externalbrowser"
warehouse = "你的仓库名称"
database = "目标数据库"
schema = "目标模式"

2. 修改Streamlit连接代码

import streamlit as st

# 初始化带外部浏览器认证的Snowpark连接
conn = st.experimental_connection(
    "snowpark",
    type="snowpark",
    authenticator="externalbrowser"
)

# 获取Snowpark会话并执行操作
session = conn.session
# 示例:将DataFrame写入Snowflake
# session.write_pandas(your_streamlit_dataframe, table_name="TARGET_TABLE", auto_create_table=True)

运行应用后,会自动打开浏览器引导你完成Azure AD登录,认证成功后即可建立连接。

方案2:复用本地Snowflake CLI配置(适合本地开发)

如果你已通过Snowflake CLI配置了带Azure AD SSO的连接,可以直接复用该配置:

import streamlit as st
from snowflake.snowpark import Session

# 从本地Snowflake配置文件加载指定连接
session = Session.builder.config("connection_name", "你的本地连接名称").create()

# 执行DataFrame写入操作
# session.write_pandas(your_dataframe, table_name="TARGET_TABLE")

注意:此方式要求Streamlit运行环境能访问本地~/.snowflake/config.toml配置文件。

方案3:Azure AD服务主体认证(适合部署场景)

如果要将应用部署到云环境(如Streamlit Cloud),无法使用外部浏览器认证,可创建Azure AD服务主体并通过以下方式连接:

1. 更新.streamlit/secrets.toml配置

[snowpark]
account = "XX12345.eu-west-1"
user = "Azure AD服务主体的应用ID"
password = "服务主体的密钥"
authenticator = "https://login.microsoftonline.com/你的Azure租户ID/oauth2/token"
warehouse = "你的仓库名称"
database = "目标数据库"
schema = "目标模式"

2. 修改Streamlit连接代码

import streamlit as st

# 初始化服务主体认证的Snowpark连接
conn = st.experimental_connection(
    "snowpark",
    type="snowpark",
    authenticator="https://login.microsoftonline.com/你的Azure租户ID/oauth2/token"
)

session = conn.session
# 写入DataFrame到Snowflake
# session.write_pandas(your_dataframe, table_name="TARGET_TABLE", auto_create_table=True)

内容的提问来源于stack exchange,提问作者lizard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 22:20:03