问题标签 [spnego]
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.
java - Java Kerberos 身份验证似乎有效,但仍被拒绝
我有一个 Java 客户端应用程序和一个 Java 服务器应用程序,我正在尝试通过 Kerberos 对服务器进行身份验证。客户端基本上使用 http-components 和 SPNEGO 进行 HTTP GET 调用,但我总是得到401 Unauthorized
结果。
我无法在下面的 Kerberos 登录序列中发现错误,也许你们可以:
web-services - 是否可以使用 SoapUI 来测试受 SPNego 保护的服务?
我有使用 SPNego 保护的 Web 服务(HTTP 质询返回 WWW-Authenticate: Negotiate)。此安全模式也称为 Windows 集成身份验证。是否可以使用 SoapUI 来测试此服务?看起来 SoapUI(4.0.0)一旦收到挑战 401 HTTP 响应就结束通信,而不是遵循协商算法。
c - 如何获取 SPNEGO / Kerberos 会话密钥 - 并实施 HTTP 身份验证:在我自己的客户端上协商
我最近接触了一种我不知道的新身份验证方法。在阅读并研究了解它之后,我明白它与SPNEGO有关,或者它可能只是spnego。
我在大型网络上运行 windows xp,当我的浏览器打开时,它会自动连接到网络中的 web 服务,这需要身份验证:
HTTP/1.1 401 Unauthorized WWW-Authenticate: Negotiate
然后我的浏览器会自动发送(当然还有更多的标题):
授权:协商(加密字符串)。
我得出结论,此握手使用 SPNEGO 协议。
我需要做的是创建我自己的客户端(实际上,它是一个使用需要身份验证的 Web 服务的机器人)。我需要在没有任何用户交互的情况下(再次,作为我的浏览器)获取该加密字符串(就像我的浏览器获取它一样,可能通过使用一些 SPNEGO 协议)。
问题是,我没有足够的时间来研究 spnego 协议以及如何实现它。
我正在使用 c/c++,但如果我没有选项 c# 也可以。是否有任何功能/类/代码甚至是好的教程可以帮助我尽快实现它?
java - SpNego:检测到有缺陷的令牌
我有一个连接到 WCF 服务的 java 客户端。该服务被配置为作为单独的域用户在主机上运行(即不作为本地服务或网络服务)。该服务在其 WSDL 中发布一个 userPrincipalName。
在 SpNego 令牌交换期间,我在客户端中收到以下异常
如果我将 WCF 服务配置为在本地系统帐户下运行,则 SpNego 令牌交换工作。我是否需要修改不在本地系统帐户下运行的服务的代码?
更新 1
通过让 C# 客户端与 WCF 服务连接进行一些调试后,我发现 C# 客户端正在使用名为MS-SPNG的 SpNego 协议的修改版本。Java 6 支持这个吗?当我检查令牌时,我收到有关不受支持的机制 1.2.840.113554.1.2.2.3 的错误。
apache - Spring-security、Tomcat 和 SPNEGO - 最佳方法
我正在为 Tomcat 和 Windows 上的 spring-security 应用程序寻找实现 SPNEGO/Kerberos 登录的最佳方法。我看过的候选人:
- Spring Security Kerberos 扩展
- 胡扯
- 带有mod_auth_kerb模块的 Apache httpd 前端
- 带有 mod_auth_sspi 模块的 Apache httpd
Waffle 并没有给我留下深刻的印象,而 mod_auth_sspi 似乎只支持 NTLMv1,所以它已经过时了。我确实看到了使用 Apache httpd 的价值,所以这似乎是一个好方法。不过,我想知道它与弹簧安全性的关系如何。谁做过这件事?哪种方法最好/最稳定?
java - 校验和失败:Kerberos / Spring / Active Directory (2008)
我们无法让 Kerberos/AD 身份验证与 Spring webapp 一起使用,我认为问题与 Kerberos 票证和 Active Directory 域功能级别的加密类型有关。
基本设置是:
- 雄猫 7
- Java 1.6 (29)
- 视窗服务器 2008 R2
- 春天 3.0
- Spring Security Kerberos/Spnego 扩展 M2 在这里详述:http: //blog.springsource.com/2009/09/28/spring-security-kerberos/
我有一个环境,其中 Active Directory 域功能级别是 Windows Server 2003,并且一切正常,如果客户端登录到域,客户端将按预期进行身份验证。在此环境中使用 kerbtray 检查票证,我可以看到它们都具有票证加密类型和密钥加密类型“RSADSI RC4-HMAC”。
我有一个功能级别为 Windows Server 2008 的新域,这就是身份验证不起作用的地方。尝试验证票证时返回的应用程序错误是:
堆栈跟踪显示“ArcfourCrypto.decrypt”,因此大概将 Kerberos 票证视为 RC4-HMAC。再次使用 kerbtray 检查票证,这次在客户端上有 2 个域票证:krbtgt/.COM。两张票都有密钥加密类型 RSADS1 RC4-HMAC,一张也有这种票加密类型,但另一张有“Kerberos AES256-CTS-HMAC-SHA1-96”。
我不确定这是否是问题的原因,但这是我在两种环境中发现的唯一可能解释身份验证异常的差异。我尝试过更改 AD 加密策略,尝试过 IE 和 Firefox,以及我能想到的几乎所有其他方法,但没有任何效果。
任何解决此问题的帮助将不胜感激。我更愿意在 java 端修复它,因为我可能无法过多地说明生产 AD 设置。
kerberos - 带有 Safari 的反向代理问题的 Windows 集成身份验证
我有一个具有 Windows 集成身份验证的应用程序,对于互联网用户,我们有一个反向代理,它有一个 IIS 服务器,该服务器将使用基本身份验证进行身份验证,然后重定向到实际应用程序,在 IE 和 firefox 中一切都按预期工作,但在safari 出现了第二个登录对话框。
当我使用 wireshark 进行数据包捕获时,我注意到在 IE 和 FF 中,基本身份验证从 IIS 服务器转发到实际应用程序,但在 Safari 中,两者之间存在 NTLM 协商,因此我的应用程序要求再提供一个登录对话框. 任何人都知道为什么 safari 会这样吗?
firefox - Firefox 和 Google Chrome 的 SPNEGO 设置
我正在尝试将 Google Chrome 和 Firefox 配置为通过 SPNEGO/Kerberos 与 WAS7 上的 IBM WebSphere Portal 6.1 一起工作,当客户端位于需要登录的域之外的域中时。在 IE 中,这可以通过设置来完成“提示输入用户名和密码”,但我在 FF 和 GC 中找不到此设置的任何类似物。
我当前的 FF 和 GC 设置:
法郎:
GC:
仅当客户端在登录的同一域中时才有效。
unix - 在 UNIX 机器上配置 JBoss 协商
但我得到了错误
任何人都可以确认我的 unix 机器 IP 应该在 Active Directory 上定义吗?
谢谢你的帮助
tomcat - TOMCAT+SPNEGO如何再次限制用户组的区域
我是 Tomcat SSO 的新手,现在 SPNEGO 可以很好地自动登录。但我的应用程序需要检查用户组。SPNEGO 能做到吗?我将这些放在 SPNEGO 过滤器下,但会破坏自动登录
谢谢。