在下面的代码中,我使用 SQL Server 用户 ID 和密码连接到我的数据库。
但是我在连接活动目录时出现错误。
请建议一些解决方案,使用 Active Directory 身份验证在 Azure Databricks 中连接 Azure SQL Server DB。
截至目前,我能够使用 JDBC 连接进行连接:
sql_url="jdbc:sqlserver://kkk-server.database.windows.net:1433;database=database;user=UserName;password=Password"
Databricks 文档使用 Spark 连接器连接到 SQL Server 和 Azure SQL 数据库Microsoft:
SQLServer 和 Azure SQL Database 的 Spark 连接器还支持 Azure Active Directory (AAD( 身份验证。它允许你使用 AAD 帐户从 Azure Databricks 安全地连接到 Azure SQL 数据库。
示例:从 Azure SQL 数据库或 SQL Server 读取:
import com.microsoft.azure.sqldb.spark.config.Config
import com.microsoft.azure.sqldb.spark.connect._
val config = Config(Map(
"url" -> "kkk-server.database.windows.net:1433",
"databaseName" -> "MyDatabase",
"dbTable" -> "dbo.Clients",
"user" -> "AD-account",
"password" -> "xxxxxxxx",
"connectTimeout" -> "5", //seconds
"queryTimeout" -> "5" //seconds
))
val collection = spark.read.sqlDB(config)
collection.show()
将用户替换为您的 AD 帐户名称。
希望这有帮助。