是否可以在 docker 容器内使用 `externalbrowser` 验证器与 Snowflake 进行连接验证?

问题描述 投票:0回答:2

我正在尝试使用 docker 容器内的雪花连接器。我想使用

externalbrowser
身份验证器,以便我可以使用 Okta 凭据建立连接,但连接器因以下提到的错误而失败。

DatabaseError:(snowflake.connector.errors.DatabaseError)250008(08001):无:无法连接到数据库:xx.snowflakecomputing.com:443,无法在此环境中打开浏览器。 (此错误的背景信息:http://sqlalche.me/e/13/4xp6

docker snowflake-cloud-data-platform docker-networking python-webbrowser
2个回答
1
投票

顺便说一句,我建议从问题中删除您的帐户名(错误中显示)。

您说“externalbrowser”选项是基于浏览器的 SSO 是正确的。可以通过一些扩展软件和配置让它运行一个 docker 容器,但我不推荐它,因为它似乎不值得付出努力。

相反,您可以查看其他 SSO 身份验证方法,例如本机 SSO Okta、密钥对身份验证或外部 OAuth。这些不需要浏览器。


0
投票

我花了几个小时试图找到一个解决方案,因为我使用 SSO + MFA,但是没有办法用例如“Native SSO Okta”来做到这一点。今天 GPT4 刚刚为我找到了一个简单的解决方案。

  1. 我将
    EXPOSE 5000-5100
    添加到我的 Dockerfile
  2. 然后我像那样运行docker容器
    docker run --net=host -it <docker-image> run -m <my_model>

它给了我一个 URL 来复制粘贴到主机上的浏览器中以继续进行身份验证,然后要求我复制粘贴我也被重定向到终端的 URL 并且它有效。

© www.soinside.com 2019 - 2024. All rights reserved.