4

我正在使用 kerberos 身份验证登录到 ActiveDirectory。我正在使用 GSSAPI 进行操作。

目前,我正在使用 krb5.conf 文件,该文件描述了领域、加密算法等,并且身份验证工作正常。

我想避免使用这个文件。我可以在不使用此文件的情况下以编程方式配置 kerberos 吗?

谢谢。

4

3 回答 3

2

您可以尝试仅配置两个系统属性:

java.security.krb5.kdc
java.security.krb5.realm

请注意,如果您使用 JDK 对 Kerberos 的本机支持,则无法以编程方式配置除此之外的任何内容。

如果您正在为 Windows 编写代码,我强烈建议您使用 WAFFLE 来实现无缝单点登录。不过,它没有 GSS-API 适配器。我自己写了,但这只是因为系统的其余部分已经依赖它了。您可以轻松跳过 GSS-API 并直接针对 WAFFLE 进行编程。

于 2012-12-18T11:26:24.730 回答
0

如果您只想避免使用系统范围的 krb5.conf,则可以在程序中以任何名称(例如,在您的主目录中)的任何目录中创建它,并通过设置 Java 系统属性 java.security.krb5 来使用它。 conf 到它的完整路径。我相信这必须在您调用任何与 Kerberos 相关的代码之前完成。

于 2013-01-01T10:39:34.503 回答
0

[来自 MIT 官方文档: https://web.mit.edu/kerberos/krb5-latest/doc/admin/index.html]

似乎我们可能没有官方的方法来配置没有 krb5.conf 的 Kerberos,即使忽略 keytabs 的某些部分(它们被定义为在 TGS 状态下自动获取,但有时事情正在连接)会导致致命错误。

于 2016-09-04T07:54:04.160 回答