AWS Glue支持多种身份验证机制,包括NTLM身份验证。以下是实现AWS Glue NTLM身份验证的步骤:
在AWS Glue Console 中,为Crawler或DevEndPoint启用NTLM身份验证,并提供包含用户凭据的安全策略。
在Glue作业或爬虫的“脚本参数”中添加以下参数: --extra-jars /path/to/jdbc/ntlm.jar
在AWS Glue PySpark作业脚本中添加以下代码段以设置NTLM认证:
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("ntlm_test").config("spark.yarn.dist.files","/path/to/jdbc/ntlm.properties#/path/to/jdbc/ntlm.jar").getOrCreate()
jdbc_url = "jdbc:sqlserver://{0}:{1};database={2}".format(server, port, database)
query = "(select * from TABLE) as tmp"
df = spark.read.format("jdbc") \
.option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver") \
.option("url", jdbc_url) \
.option("dbtable", query) \
.option("user", username) \
.option("password", password) \
.option("domain", domain) \
.load()
按照上述步骤,可以在AWS Glue中实现NTLM身份验证并连接数据。