问题标签 [spring-security-kerberos]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4040 浏览

spring - Spring Security Win Auth 示例未正确进行身份验证 - 当它明显被传入并确认时说 null keytab 文件

我已经下载并尝试测试 Spring Security Extensions 的 sec-server-win-auth 示例应用程序。我执行了以下步骤:

  1. 下载并构建 spring-security-Kerberos-master 项目。
  2. 将 sec-server-win-auth-1.0.0.BUILD-SNAPSHOT.jar 提取到 PROD 服务器上的文件夹中。
  3. 使用我的自定义信息在同一文件夹中创建一个新的 application.yml
  4. 在我的测试域控制器上创建一个 tomcat.keytab,名为 DC。
  5. 将 tomcat.keytab 文件复制到我的 PROD 服务器。
  6. 运行 java -jar sec-server-win-auth-1.0.0.BUILD-SNAPSHOT.jar
  7. 在单独的客户端 CLIENT1 上,打开 IE 并转到http://PROD:8080/

此时,我看到了对 Kerberos 协商标头的请求以及带有标头的响应。它说它是有效的并尝试对其进行身份验证,但我收到以下错误。“无法从用户那里获取密码”

此错误来自 Krb5LoginModule。此错误上方的问题有一个提示,表示主体的密钥在 keytab 文件中不可用。主体可用,我的密钥表文件只是为空。

如果我在日志流中进一步查看,我可以看到 keytab 文件正在从 application.yml 正确传递并正在加载。

我不确定为什么我的 keytab 会以 null 的形式出现。任何人都可以对此有所了解吗?

0 投票
2 回答
12510 浏览

java - Kerberos 身份验证

请解释 kerberos 身份验证的内容、原因和方式。我正在使用弹簧 3+。还请详细说明如何在我的 java spring 项目中实现它。

0 投票
1 回答
998 浏览

grails - Domain authentication with Kerberos fails

My app is using Grails, Spring, Kerberos.

applicationContext.xml

When I deploy my app and enter my domain login/password in browser, I get the following request in Fiddler:

As I understand, Kerberos domain authentication was successful. But on a web page I see:

NPE appears in line

because context.getSrcName() == null. What's wrong?

P.S.: One more moment: when I enter wrong password, it asks on me for it one more time.

0 投票
2 回答
44316 浏览

java - Kerberos spring javax.security.auth.login.LoginException:无法从用户获取密码

我正在我现有的 java spring 应用程序中实现 kerberos 身份验证。我的 unix 团队为我提供了 SPN、krb5.conf 和 keytab 文件。我正在努力使用以下代码和配置,但无法从用户异常中获取密码,如下面的附加日志所示。

如果我做错了什么或可能出了什么问题,有人可以纠正我吗?如果您需要更多信息,请告诉我。如果有人能告诉,如何验证 kerberos 配置是否正确,那就太好了?
这是我尝试过的。我在用:

  • JDK 1.6
  • spring-security-kerberos-core-1.0.0.M2.jar
  • spring-security-core-3.0.1.RELEASE.jar
  • spring-security-config-3.0.1.RELEASE.jar
  • spring-security-web-3.0.1.RELEASE.jar

我的 security-config.xml 是:

上面 security-config.xml 中使用的属性值:

我的 DummyUserDetailService:

我的 web.xml 是:

显示异常的应用程序日志:

服务器日志:

0 投票
2 回答
1490 浏览

node.js - 如何从 Node JS 上的 Kerboros keytab 文件中读取主体和加密密钥?

我需要拦截到我的节点服务器的特定请求并在那里引入 Kerberos 身份验证。

假设如果一个请求来自 /names/ ,我需要首先 Kerberos 对其进行身份验证,并且只有当它成功通过身份验证时,我才会继续执行该请求。

我有一个 .keytab 文件,据我所知,它包含身份验证所需的主体和加密密钥。

问题:如何在 Node JS 上读取 .keytab 加密文件?我查看了 node-krb5 和 node-passport 之类的 Node 包,但找不到读取我的 keytab 文件的方法

如果您做了类似的事情,请提供帮助。谢谢。

0 投票
0 回答
905 浏览

spring - Spring security kerberos 验证令牌错误

我在我的应用程序中使用 Spring Security Kerberos 1.0.0.RELEASE 和 JDK 7、Spring Security 3.2.7.RELEASE 和 Spring Framework 4.1.6.RELEASE 来处理身份验证。但我总是收到这个错误:

我的 Spring 配置是

并且经过身份验证的方法看起来像这里


我该如何解决这个错误?谢谢你的回复问候

0 投票
2 回答
6707 浏览

java - 如何在 Tomcat/linux 服务器上配置 kerberos?

我正在尝试在 Linux 上的 Tomcat 中运行的 Java Web 应用程序中设置 kerberos 身份验证。我正在使用 spring security kerberos 扩展。我在用着:

  • jdk 1.7u75
  • spring-security-kerberos 1.0.0.RELEASE
  • 微软活动目录

在我的本地开发机器(Windows)上一切正常。但是在将应用程序部署到 linux 机器后,身份验证不再起作用。我强烈怀疑我的 Kerberos 配置有问题:

(服务器和域名已更改)

弹簧安全配置:

当我尝试登录时,我从 kerberos 调试输出中看到的唯一内容是:

(我希望看到“KrbAsReq 创建消息”和“KrbKdcReq 发送”条目)

从春天开始:

所以看起来用户被认证为匿名,之后我回到登录页面,因为匿名用户无权访问。

谁能告诉我我的配置有什么问题?或者我该如何进一步分析?

0 投票
9 回答
37628 浏览

java - Kerberos - 找不到适当类型的密钥来解密 AP REP - RC4 与 HMAC

我正在尝试使用 Kerberos/SpNego 为 Java WebApp 设置 SSO。我正在使用:

  • Java 1.7u67
  • org.springframework.security.kerberos 1.0.0.RELEASE
  • 活动目录
  • Linux 上的 Tomcat 7

克服如何在 Tomcat/linux 服务器上配置 kerberos 中描述的问题后?,我现在遇到以下错误:

但是似乎密钥应该在那里,因为在启动应用程序时我得到了以下调试:

所以 enctype 23 = RC4 with HMAC 是 KeyTab 条目的类型和默认的 enctype。我还可以看到浏览器使用此 enctype 发送了一个令牌(我从以下内容中删除了二进制部分):

所以一切似乎都是 encytpe 23(带有 HMAC 的 RC4)。当我查看代码时,我发现 KrbApReq 使用的 sun.security.krb5.EncryptionKey (在上面的堆栈中引发错误)确实不仅在比较 enctype,而且还在比较版本。所以我想这在我的情况下一定是错的。在上面的票证中,EncryptedData 的 Kvno=4 和 Authenticator EncryptedData 的 Kvno=nothing。这些应该匹配吗?

我该如何解决这个问题?这是否受 keytab 生成的影响?

0 投票
2 回答
8322 浏览

java - Kerberos 错误:GSSHeader 未找到正确的标记

我正在尝试将 Kerberos 身份验证连接到 SOAP 服务 wsdl url。我能够成功建立连接并进行服务调用。启动服务器后,我至少可以进行一次成功的服务调用。然而,在几次请求(1 个或更多)之后,我突然收到无效令牌错误。一旦我收到错误,以后的调用将不起作用并且错误仍然存​​在。

如果我重新启动服务器,那么服务调用至少会再次运行一次。以上循环继续。

我无法弄清楚为什么令牌突然变得无效,尽管它之前工作过。并且重新启动服务器使令牌再次有效

这是错误堆栈跟踪:

0 投票
1 回答
2372 浏览

kerberos - Kerberos 身份验证不适用于 Spring Security

我们正在研究 Kerberos 登录身份验证,它工作正常,但现在我们在点击 URL 并且它没有重定向到主页时遇到以下异常。

建议一些解决方案将不胜感激。