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

tomcat - apache tomcat 的 Kerberos SSO 异常

我收到以下异常。尝试使用 Kerberos 进行 SSO 时:

我正在使用 Ktpass 生成密钥。当我使用默认加密选项时,它可以工作。但是当我在 Ktpass 命令中添加“-crypto AES256-SHA1”时,调用函数 org.ietf.jgss.GSSContext.acceptSecContext 时会引发以下异常

我正在使用 Java 8 在 apache-tomact 上进行开发。

我的 krb5.conf 是

0 投票
0 回答
2721 浏览

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

配置spring-kerberos后出现以下错误

我验证了使用 kinit kinit HTTP/httpweb.metsys.loc@METSYS.LOC@METSYS.LOC -k -t http-web.keytab 生成的密钥表

我的主体和密钥表是 app.service-principal=HTTP/httpweb.metsys.loc@METSYS.LOC app.keytab-location=/http-web.keytab

我添加到 krb5.conf

我创建了

我关注了很多帖子,但任何人都可以解决问题

感谢帮助

0 投票
1 回答
1027 浏览

hadoop - 我们可以在 Cloudera Hadoop 集群中将 hbase.rpc.protection 属性值设置为 none 吗?如果是,那怎么办?

我正在使用启用了 kerberos 安全性的 Cloudera Hadoop 集群。但是在属性文件中,我没有提到hbase.encryption。所以我需要在hbase-site.xml 中将属性hbase.rpc.protection的值更改为 none 。我试图将此属性值设置为 none,但它失败了,因为在 Cloudera 中它只显示身份验证、隐私和完整性选项。那么有人对此有解决方案吗?提前致谢。

0 投票
0 回答
180 浏览

spring-security - Spring security Kerberos 文件上传超过 2MB 失败,连接重置

我有一个带有 keytab 文件的弹簧安全 kerberos 设置。完成文件上传操作后,我收到连接重置错误。仅当文件大小大于 2MB 时才会发生这种情况。关闭spring security时,我可以上传大于2MB的文件。

我对基于 SPNEGO 的身份验证的理解如下。

  1. 从浏览器发送 Ajax 请求
  2. 服务器检查标头中的令牌,如果找不到,则发送 401 协商
  3. 客户端使用 kerberos 令牌重新发送请求
  4. 服务器使用 keytab 解密令牌并很高兴允许进一步通信

一个典型的请求将在协商重定向后在标头中发送 kerberos 身份验证令牌。这些失败的请求在标头中没有令牌,这意味着协商阶段没有开始。

是否需要为文件上传设置或删除任何其他标题?2mb的限制在哪里设置?我看到 Jboss 有一个 max-post 参数,但是当安全性被删除时,上传工作正常。

环境:Jboss EAP 6.4.16(10 个无状态服务器),JVM 1.7,RHEL 6。前面没有 Web 服务器。

失败请求的标头 -

代码部分:

0 投票
0 回答
813 浏览

spring-security - spring security kerberos认证后生成JWT

我想在 kerberos 身份验证后生成 JWT 令牌。我的 kerberos 身份验证运行良好。这是我的spring security kerberos配置:

是否有一个简单的解决方案可以在此身份验证后生成 jwt 令牌?在我的互联网搜索之后,我没有发现任何有趣的东西。

感谢您的回答!

0 投票
1 回答
2161 浏览

java - Spring security kerberos 适用于 xml 配置,但不适用于 Java 配置

我使用xml config 然后使用java config尝试了 spring security kerberos 的示例。这是完全相同的配置(一个在 xml 中,一个在 java 中)。

当我使用带有 xml 配置的项目时,它可以工作。但是,当我将项目与 java config 一起使用时,我有这个 stacktrace :

我不明白为什么它适用于 xml 配置,而不适用于 java 配置。我花了很多时间寻找,但我绝望了。这是我的 xml 配置:

这是我的java配置:

我指定我对两个项目使用相同的 keytab,在相同的环境中使用相同的 spring boot 配置进行编译。

使用 xml 配置,日志显示

而对于 Java 配置示例,我只有

有什么我忘记了吗?

0 投票
1 回答
89 浏览

security - 深度链接在安全的 NiFi 中不起作用

子:深度链接在安全的 NiFi 中不起作用

我已经为 NiFi 配置了 Kerberos 身份验证。当我打开深度链接以访问处理器组时,它会重定向到登录页面进行身份验证,但在成功登录后,它会导航到根 URL 而不是那个特定的处理器组。

找到此支持的 Jira 链接 - https://issues.apache.org/jira/browse/NIFI-3035

我没有配置SPNEGO。甚至 LDAP 身份验证也不适用于深度链接访问。登录成功后导航到登录页面并输入root URL。未启用身份验证时,深层链接可以正常工作。但是当它导航到登录页面进行身份验证然后输入到根 URL 而不是实际 URL(处理器链接)时它会失败。

此支持是否仅针对正常模式添加?如何在 Kerberos 模式下实现这一点?

谢谢, Matheswaran.S

0 投票
1 回答
664 浏览

java - Kerberos AD Spnego 身份验证在一台机器上失败,但在另一台机器上失败

我遇到了 Kerberos 身份验证问题。我有一个 dockerised REST webapp,它在一个 AWS 主机上运行良好。

我刚刚尝试在新主机上运行它,java.security.GeneralSecurityException: Checksum failed at sun.security.krb5.internal.crypto.dk.ArcFourCrypto.decrypt当我尝试调用它时我得到了。下面的完整堆栈跟踪。

它使用SpnegoSpring Security

我不使用 keytabs,我完全依赖这样的krb5.conf配置:

这是 Krb5LoginModule login.conf

我在 SO 上找到了一些线索,例如

密码更改后的 Kerberos/Spnego 身份验证问题

java安全异常:校验和失败

但都没有阐明这个问题。

我可以使用 kerberos 命令行工具来检查两台主机之间的问题或差异吗?

堆栈跟踪:

0 投票
1 回答
1368 浏览

spring-boot - Spring SPNEGO 无形

我有一些关于在不使用表单后备的情况下设置 SPNEGO 的问题。

我正在编写一个使用 SPNEGO 身份验证并为经过身份验证的主体返回签名 JWT 的 Web 服务。我对表单没有任何用处(例如,不能使用带有仅身份验证主体的表单)。

  1. 我可以跳过 spring SPNEGO 参考中所示的 formLogin() 和 logout() 部分,并使用零参数 SpnegoEntryPoint 构造函数吗?
  2. 从查看SPNEGO 过滤器的来源看来,如果缺少 Authorization 标头,则过滤器实际上不会返回带有 WWW-Authenticate: Negotiate 质询的 401 Unauthorized 响应给调用者。也就是说,else第 135 行的检查没有。我读对了吗?RFC 规定

    如果服务器接收到访问受保护对象的请求,并且如果尚未发送可接受的 Authorization 标头,则服务器会以“401 Unauthorized”状态代码和“WWW-Authenticate:”标头进行响应

  3. 如果以上是正确的,客户端是否会抢先发送 Authorization 标头?

谢谢!

编辑(可能已解决):我原来的安全配置有:

当我删除.antMatchers("/v1/**").permitAll()SpnegoEntryPoint 时,我现在看到一个带有 WWW-Authenticate: Negotiate 响应的 401。

当然,现在我遇到Server not found in Kerberos databasegss_init_sec_context() 失败,但我怀疑这与 SPN 设置或主机名解析有关(因为我在我的 Macbook 上进行本地测试)而不是 Spring 应用程序。

当我得到这个工作时,最终会更新一次。

0 投票
1 回答
812 浏览

spring-security - Spring Webflux + LDAP/Kerberos 安全性

我得到了一个 Spring Boot 2 Reactive Web Application,它目前有一个基于 JWT 的身份验证系统。现在我想添加一个用于身份验证的 LDAP 后端,并允许通过 Kerberos 进行单点登录 (SSO)。
似乎 Kerberos 和 LDAP 支持目前仅限于 webmvc,并且没有可用的专用反应版本。
由于关于将所有 3 个组件(WebFlux、LDAP + Kerberos)集成到一个应用程序中的文档很少见,我想问一下你们中是否有人已经尝试过设置这样的基础架构并愿意分享一个示例如何做。