sql-server - 我们可以使用scala在databricks中使用SPN连接sql server数据库吗?
问题描述
我的用例是使用 Databricks 笔记本中的 SPN 凭据连接到 SQL 服务器。由于我没有用户名密码并且无法生成访问令牌,所以我只能在 SPN 的帮助下完成。直到现在我都找不到任何东西。如果有人以前做过或对此有想法,请帮助如何做。提前致谢 :)
解决方案
是的,可以这样做,并且在sql-spark-connector 连接器的存储库和文档中进行了描述。先决条件是安装azure-activedirectory-library-for-java 库。安装两个依赖项后,以下代码应该可以工作:
context = adal.AuthenticationContext(authority)
token = context.acquire_token_with_client_credentials(
resource_app_id_url, service_principal_id, service_principal_secret)
access_token = token["accessToken"]
jdbc_db = spark.read \
.format("com.microsoft.sqlserver.jdbc.spark") \
.option("url", url) \
.option("dbtable", table_name) \
.option("accessToken", access_token) \
.option("encrypt", "true") \
.option("hostNameInCertificate", "*.database.windows.net") \
.load()
推荐阅读
- reactjs - 如何查找在特定时间范围内单击按钮的次数(0.5秒内)
- html - 使用 VBA 在导出的 HTML 表中添加超链接
- tfs - 由于重复的 ProjectGuid,没有对 dotnet Core 项目进行 SonarQube 分析
- javascript - 使用 div id 遍历列表
- error-handling - 向订阅 RXJS 发送错误
- java - 将长列表转换为字符串集
- azure - 执行 DownloadToFIleParallelAsync 方法时的问题
- java - Java:确定两个正则表达式模式是否重叠
- node.js - 带有heroku的axios
- ubuntu - 无限 .sh 文件 Python