问题标签 [waffle]
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.
windows - 使用 jsp 的 Windows 身份验证和电子邮件地址检索
我正在尝试使用第三方库“Waffle”来实现 Windows 身份验证。我面临的挑战是如果我们知道用户 ID 和域,如何检索用户的邮件 ID。例如,我能够将用户 ID 设为 XYZ\phembr,并且我想从 SMTP 服务器获取邮件地址(在本例中为 phembrom@xyz.com)。以下是我正在使用的 jsp 代码和我得到的输出。
我得到的输出是:(请注意,我应该得到 phembrom@xyz.com 而不是 phembr@xyz.com)
java - Java EE WebLogic 和带有 SSO 的 Spring
我试图让 SSO 在部署在 WebLogic 11 上的 Spring 应用程序中工作。我为此使用了 Waffle 实现。
我设置:
entry-point-ref="negotiateSecurityFilterEntryPoint"
和
<custom-filter ref="waffleNegotiateSecurityFilter" position="BASIC_AUTH_FILTER" />
我也加了
MyCustomNegotiateSecurityFilter
只是标准 Waffle 类的副本,因此没有影响。
当我使用 IP 地址访问应用程序时,此配置工作正常,但是当使用主机名(带域)时,我无法让 SSO 工作 - 401 Unauthorized response。
也许有人可以告知这种行为的原因。
maven-3 - 如何在 Maven 中添加 waffle 1.4 依赖项?
我试图在我现有的 maven 项目(maven 版本 3)中为 Waffle 1.4 jar 添加依赖项。如果您以前已经这样做过,有人可以帮助我吗?
找到 Waffle 1.3 版的此依赖项 XML,但找不到 1.4 版。
java - 使用 Java 从服务器端获取 Windows 用户帐户名
我正在使用 Spring MVC 框架编写 Java Web 应用程序,我已经通过带有 Spring Security 框架的 Windows AD 完成了授权。但是现在,我必须获取客户的 Windows 帐户用户名,该怎么做?我正在尝试使用 WAFFLE,但没有找到我正在寻找的确切位置。
java - 仅弹簧安全授权
我正在尝试使用 Waffle 开发一个用户管理工具,以使用 Spring Security 执行 Windows 身份验证。不幸的是,唯一提供给我的是身份验证部分。
我想将角色分配给特定的用户会话以限制用户权限。每个用户名及其相关角色都存储在数据库中。如何让 Spring Security 查询我的数据库并将关联的角色加载到会话中,以便我可以在控制器中使用 @PreAuthorize(hasRole(role)) 注释来限制对某些操作的访问?
编辑:感谢您的回答,但我认为这不是我想要的。所以我取得了一些进展(我认为)。对于我的身份验证提供程序,我创建了自己的自定义 GrantedAuthorityFactory 作为我的 waffleSpringAuthenticationProvider 的属性,如下所示:
grantAuthorityFactory 代码如下:
现在,当我运行程序并尝试登录时,登录失败。当我从配置文件中删除我的自定义工厂属性时,登录成功完成,没有分配角色。我不确定这是否重要,但 windowsAccount.getFqn() 没有返回我在登录表单中输入的正确用户名。我的工厂课有什么遗漏吗?
java - 使用 SPNEGO 的 Java SSO
我是这个话题的新手。我需要帮助才能通过 Tomcat 6.0.29 为 Web 应用程序实现身份验证 Java SSO。我已经阅读了有关 SPNEGO 的信息,并在http://spnego.sourceforge.net/上证明了示例 helloKDC.java 和 hello_spnego.jsp效果很好,但我不知道实现该解决方案必须遵循哪些步骤。即足以获取远程用户的名称?或者我必须做其他事情来确保其身份并保持当前用户的会话?
java - 在 xml 文件中为一位用户提供使用 spring 安全性的访问权限
我使用 waffle 和 spring security 3.2 来设置对 jsf2 页面的访问。我用了这个例子
一切正常,但我很好奇,是否可以通过 xml 文件为一个用户设置对页面的访问权限???像这样的东西:
我在互联网上找不到答案
谢谢
playframework - Windows 在 Play Framework 2 中登录用户 SSO
如何使用 MS Windows 登录用户为 Play Framework Web 应用程序配置 SSO?
我想在企业环境中部署一个 Play Framework Java Web 应用程序,其中用户希望使用 MS Windows 登录用户在幕后执行身份验证。能够根据用户是谁来调整 Java Web 应用程序的行为非常重要。
我知道这可以为使用 Waffle 或 SPNEGO 的 JEE 应用程序配置。但是,如何为 Play Framework 2.x 应用程序执行此操作?通过使用play2-war-plugin打包为 WAR并部署在 JBOSS 应用服务器上,例如?如果这是个好方法,我如何找到有关如何修复配置的信息?
windows - 为什么 Windows 8 在登录 MS 帐户后发送不同的授权标头
我们有什么?
客户端:win8,ie11,使用域凭据登录系统。
服务器:3 个 tomcat7 节点在 apache 2.2.22 之后运行。应用程序使用 waffle 库对以 sso 方式登录域的 windows 用户进行身份验证。
应用程序使用弹簧安全性,关于这个主题的主要内容是通过表单处理登录的过滤器位于处理身份验证标头的过滤器之前。
- NegotiateSecurityFilterProvider 仅支持 Negotiate 协议,不支持 NTLM
我们所做的?
通过直接链接进入应用程序:https ://app.domain.com/app_name/subordinates.do 。没关系,我们正在承载有效的 kerberos 标头(这很好,而且很大的一个 kerberos 令牌,提琴手将其描述为“授权标头(协商)似乎包含 kerberos 票证”^^)并且应用程序端的 waffle 通过 kerberos 回复将我们传递到内部.
登出。
通过登录页面上的表单登录:我们使用用户名和密码进行发布请求,我们再次使用相同的 kerberos 令牌。应用程序使用用户名和密码在 waffle WindowsAuthenticationProvider 的帮助下登录我们。在这里,我们在丰富 NegotiateSecurityFilter 之前获得身份验证,因此在来自服务器的回复中没有任何 kerberos 标头。无论如何,一切都很好。
现在我们通过操作系统登录到 MS 帐户。神奇的事情发生了。
当尝试通过直接链接登录时,我们在登录页面上收到“指定的句柄无效”错误作为 SPRING_SECURITY_LAST_EXCEPTION 常量。我的猜测是我们发送了某种无效的授权标头
当尝试通过表单登录时,我们得到“参数不正确”。在这里我认为我们发送带有空正文的 ntlm 类型 1 POST 请求,但我们仍然有无效的标头,因此应用程序无法识别它并且没有发送 401 回复,然后华夫饼向 AD 发送空名称,这里出现错误(只是猜测)
但是,当我打开 fiddler 以查看实际发生的情况时,一切都开始正常工作,就像登录 MS 帐户之前一样。
好的,为了弄清楚将什么标头发送到服务器,我在 cmd 文件中使用了一些代码:
UDPATED添加代码和输出
这是我得到的:
它肯定比提琴手在身份验证工作时看到的 kerberos 小得多。
所以问题是:
1. 为什么登录到 MS 帐户会影响发送到服务器的标头?
2. 为什么fiddler打开就开始工作?
3.这个头是什么类型的:协商oTMwMaADCgEBoioEKE5UTE1TU1AAAQAAAJeCCOIAAAAAAAAAAAAAAAAAAAAAAAABgOAJQAAAA8=,服务器应该如何处理?
2014 年 3 月 17 日更新: wireshark 捕获在 tgs 请求后显示 KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN 错误,提到服务器 - 带有 apache 的机器名称。在与支持团队进行调查后,我们发现用于在不同节点上运行 tomcat 服务器的特殊用户没有 spn 用于具有 apache 的机器的域名(它有 spn 用于资源域名,但没有用于当前机器)。添加 spn 后问题消失了。