Spring 启动 MSSQL Kerberos 身份验证
Spring Boot MSSQL Kerberos Authentication
目前在我的 spring 引导 application.properties
文件中,我正在指定以下行以连接到 MSSql 服务器。
spring.datasource.url=jdbc:sqlserver://localhost;databaseName=springbootd
spring.datasource.username=sa
spring.datasource.password=Projects@123
我不想提供用户名和密码,而是想使用 kerberos 对用户进行身份验证,我必须进行哪些更改。
我尝试在 JPA 官方文档中搜索但找不到任何内容。这里的线索表示赞赏。
基本上,您需要正确设置 krb5.conf
文件。您可以通过以下命令并输入密码来验证该配置:
kinit <user-name>
此外,请确保您有 JDBC URL,例如:
jdbc:sqlserver://servername=server_name;integratedSecurity=true;authenticationScheme=JavaKerberos;userName=user@REALM;password=****
详情见Microsoft JDBC driver documentation。
编辑:
忘记提及启动参数。添加以下 JVM 参数:
-Djava.security.krb5.conf=<PATH_TO>/krb5.conf
如果您使用默认值,我认为这不是必需的 krb5.conf
但不完全确定。
目前在我的 spring 引导 application.properties
文件中,我正在指定以下行以连接到 MSSql 服务器。
spring.datasource.url=jdbc:sqlserver://localhost;databaseName=springbootd
spring.datasource.username=sa
spring.datasource.password=Projects@123
我不想提供用户名和密码,而是想使用 kerberos 对用户进行身份验证,我必须进行哪些更改。
我尝试在 JPA 官方文档中搜索但找不到任何内容。这里的线索表示赞赏。
基本上,您需要正确设置 krb5.conf
文件。您可以通过以下命令并输入密码来验证该配置:
kinit <user-name>
此外,请确保您有 JDBC URL,例如:
jdbc:sqlserver://servername=server_name;integratedSecurity=true;authenticationScheme=JavaKerberos;userName=user@REALM;password=****
详情见Microsoft JDBC driver documentation。
编辑:
忘记提及启动参数。添加以下 JVM 参数:
-Djava.security.krb5.conf=<PATH_TO>/krb5.conf
如果您使用默认值,我认为这不是必需的 krb5.conf
但不完全确定。