使用 Azure Active Directory 连接到 MSSQL 服务器的 JDBC
Posted
技术标签:
【中文标题】使用 Azure Active Directory 连接到 MSSQL 服务器的 JDBC【英文标题】:JDBC connection to MSSQL server using azure active directory 【发布时间】:2021-10-05 13:34:52 【问题描述】:我知道您可以使用带有 SQL 身份验证或 Windows 身份验证的 jdbc 连接来连接到服务器,但我可以使用 azure 活动目录来执行此操作吗?
带有 Windows 身份验证的 jdbc 代码
val jdbcHostname = "hostname"
val jdbcPort = 1433
val jdbcDatabase = "database_name"
val jdbcUrl ="jdbc:sqlserver://$jdbcHostname:$jdbcPort;database=$jdbcDatabase;integratedSecurity=true"
val username="windows_username"
val password="windows_password"
val driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
#read as spark df
val jdbcDF = spark.read
.format("jdbc")
.option("url", jdbcUrl)
.option("dbtable", table)
.option("user", username)
.option("password", password)
.option("driver", driver)
.load()
【问题讨论】:
相关? docs.microsoft.com/en-us/sql/connect/jdbc/… 【参考方案1】:在 Microsoft JDBC Driver for SQL Server 中支持 Azure Active Directory 身份验证的连接属性。
可以通过多种方式指定连接字符串属性:
作为连接 URL 中的 name=value 属性,当您通过以下方式连接时 使用 DriverManager 类。有关连接字符串语法,请参阅 构建连接 URL。
作为 Connect 的 Properties 参数中的 name=value 属性 DriverManager 类中的方法
这是 Microsoft 文档:使用 Azure Active Directory 身份验证进行连接 | Docs & 下表列出了 JDBC 驱动程序的所有当前可用的连接字符串属性 | Here.
【讨论】:
以上是关于使用 Azure Active Directory 连接到 MSSQL 服务器的 JDBC的主要内容,如果未能解决你的问题,请参考以下文章
使用Laravel的Azure Active Directory SSO
使用Xamarin.iOS进行Azure Active Directory身份验证过程
用于查询Azure Active Directory的Azure服务
使用 DataGrip - Active Directory 连接到 Azure 数据库