问题标签 [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 回答
1187 浏览

spring-security - 将自定义身份验证过滤器与 spring-security-kerberos 结合使用

我正在使用 spring-security-kerberos 来验证远程用户 - 这很好用。我遇到的问题是,有时用户没有 kerberos 票证,我需要使用另一种形式的身份验证。为此,我编写了自己的身份验证提供程序 ( myCusomAuthenticationProvider)。此自定义提供程序应要求用户进行 BASIC 身份验证,并使用多个 LDAP 服务器根据用户名和密码对用户进行身份验证。

我看到的问题是我的自定义身份验证管理器总是将 KerberosServiceRequestToken 作为身份验证令牌,而我没有设法获取 UsernamePasswordAuthenticationToken。如何让服务器将“协商”和“基本”方法返回给浏览器并让我自己的提供者处理基本身份验证?

我已经找到了一种方法来通过对 spring-security-kerberos 代码进行一些调整来做到这一点,但我正在尝试找到一种更好的方法来做到这一点。

web.xml:http ://pastebin.com/embed.php?i=ZidnBMwZ

根上下文与 krb.xml:http ://pastebin.com/c8vfUZfV

0 投票
3 回答
3078 浏览

kerberos - 可选的kerberos身份验证?

是否可以进行可选的 kerberos 身份验证?

我想要的是:如果客户端(浏览器)不在域上,它将被重定向到用户名/密码 Web 登录。否则它将执行 SPNEGO 执行 Kerberos 身份验证。

有什么解决方案吗?如果是,我们需要哪些配置?

0 投票
1 回答
6628 浏览

single-sign-on - 使用带有 spring security kerberos 扩展的 keytab 文件

我的目标:在基于 Java 的 Web 应用程序上实现 SSO。我的问题:我不是保安...

经过一番调查,我发现我需要 spring security kerberos 扩展(也查看了 apache shiro,但只能找到带有登录页面的示例)。

我在以下项目中使用了示例: https ://github.com/spring-projects/spring-security-kerberos/tree/master/spring-security-kerberos-sample

我意识到我需要创建一个密钥表。当我尝试使用 keytab 时,出现以下错误:

寻找有关此错误的一些详细信息,我发现它可能是由错误的 keytab location引起的,但这里不是这种情况 - 我调试到源代码并看到 keytab 文件已加载。

所以我决定检查我的密钥表,看看它是否正常。首先,这是我用来创建密钥表的最后一个命令(经过长时间的演变):

当然,我使用以下命令为 MyUser 创建了一个 SPN:

我用以下方法测试了 spn:

并得到了成功的结果:

找到现有的 SPN!

现在我想通过运行以下命令来测试是否可以为 MyUser 获取票证:

我得到了一个成功的结果(“新票存储在缓存文件中......”)

现在我想用我的 keytab 测试它:

得到以下异常:

我使用 klist 工具查看我的 keytab 是否包含任何键:

得到以下结果:

作为最后一次绝望的尝试,我检查了 MyUser 的以下帐户选项:

  • 为此帐户使用 Kerberos DES 加密类型
  • 该帐户支持 Kerberos AES 128 位加密
  • 该帐户支持 Kerberos AES 256 位加密

我不确定设置这些选项是否会导致它,但现在当我运行时

我收到以下错误:

所以我在这里有点绝望,我真的不知道我在做什么。这完全是反复试验的问题(主要是错误)。如果有人可以在这里指导我,将不胜感激。

谢谢,里奥

0 投票
3 回答
1458 浏览

java - SSO spring kerberos 中的注销功能

我正在使用KerberosServiceAuthenticationProvider带有 spring security 的 kerberos/spnego() 身份验证来对执行单点登录的 Active Directory 服务中的用户进行身份验证。

我能够对用户进行身份验证并访问应用程序。我想实现注销功能,而不关闭浏览器。

有没有办法使 Kerberos 票证过期?

0 投票
1 回答
584 浏览

linux - 如何从 Active Directory 为 Linux 上的 Tomcat 创建 .keytab?

我有一个正在寻找 Kerberos 领域的 Linux Web 服务器。我需要给它一个 .keypass 文件,我可以这样做。然而,真正让我着迷的是KDC。我无法确定父 KDC,也不知道哪个服务器将是管理服务器。另外,我不确定如何使用 Ktpass 进行该过程。以前有没有人这样做过,如果有,你是怎么做到的?

这让我非常沮丧,因为我知道架构过程,但我无法在具有多个 DC 的 Windows 域中弄清楚。linux 部分不是问题,我知道在哪里做什么,但我不知道如何以 Tomcat 可以读取的方式从 Windows 中提取这些信息。

任何帮助,将不胜感激。谢谢!

0 投票
0 回答
173 浏览

google-app-engine - 应用引擎 + java + keberos Token

我开发了一个谷歌应用引擎应用程序,它支持使用 JAAS 的集成 Windows 身份验证。

为了在 Mozilla firefox 上启用集成身份验证,我进行了以下配置

我的应用程序不支持 ntlm,因此没有进行任何相关配置。

在本地一切正常。我的意思是浏览器能够获取 kerberos 服务令牌并将其发送到我的应用程序。

但是当我部署在谷歌应用引擎中时。然后浏览器无法发送 kerberos 令牌。我总是得到 NTLM 令牌。

以下是流程 1. 我从本地网络的 mozilla 浏览器中点击了受信任的 url。2. 我的应用程序使用 401 Negotiate challenge 向浏览器挑战服务令牌 3. 浏览器尝试获取服务令牌。4. 我观察到它发送 NTLM 令牌。

我想知道为什么浏览器将 NTLM 令牌发送到应用引擎,我应该如何处理这种情况?

0 投票
1 回答
202 浏览

spring-security-kerberos - 从 spring-security-kerberos-core 1.0.0.M2 升级

我刚刚在 github 上发现了有关 Spring Security Kerberos/SPNEGO Extension 的工作:https ://github.com/spring-projects/spring-security-kerberos

由于我们仍然使用 1.0.0.M2,我想知道是否建议进行更新,或者我可以在哪里看到新版本的开发计划和进展情况。

谢谢

0 投票
1 回答
2827 浏览

spring - 通过登录表单进行 Kerberos 身份验证

尝试通过登录表单配置 Kerberos 身份验证。我能够发送 TGT,然后执行 DummyUserDetailsS​​ervice,但最后我仍然得到状态 500。下面我附上日志和配置

春季安全会议

0 投票
0 回答
592 浏览

java - Spring Security Kerberos 已停产?

我需要在 Web 应用程序中使用 Java 实现 SSO(Windows 身份验证)。我已经使用了 Spring Security,并且发现了一个名为 Kerberos 的扩展,但这个扩展似乎已停止使用。

用于 Spring Security 的扩展 Kerberos 是否已停止?

如果是,您使用 Java 进行 SSO(Windows 身份验证)的替代方案是什么?

[]的

0 投票
0 回答
1325 浏览

spring - Spnego Kerberos 弹簧 SSO

我正在尝试实现基于 SPNEGO Kerberos 的 SSO。下面是我尝试实现它的链接。基于表单的 SSO 运行良好。但是当我尝试使用 SPNEGO 实现时,出现以下错误

尝试验证 Kerberos 令牌协商标头无效:协商

YHwGBisGAQUFAqByMHCgMDAuBgorBgEEAYI3AgIKBgkqhkiC9xIBAgIGCSqGSIb3EgECAgYKKwYBBAGCNwICHqI8BDpOVExNU1NQAAEAAACXsgjiBgAGADQAAAAMAAwAKAAAAYBsR0AAAAPREVNT01BQ0hJTkUxQ09FTEFC