使用 ADFS 和 SAML 通过 Java 查询 AD
我需要从 Java 应用程序查询组织边界之外的 AD,并使用 ADFS 和 SAML 从中获取具有正确身份验证和权限的用户列表。
我是 ADFS 和 SAML 以及基于声明的身份验证的新手。我需要将这些技术与JAVA一起使用。
在这种情况下如何将ADFS与java集成?
I need to query AD outside organizational boundaries from a Java application and get a list of users from that with proper authentication and privileges using ADFS and SAML.
I am new to ADFS and SAML and claim based authentication. I need to use these technologies with JAVA.
How can I integrate ADFS with java in this scenario?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
ADFS 不提供获取“用户列表”的方法。为此,您应该考虑使用 LDAP 查询 AD 的传统方法(如 Aaron 所建议的)。
正如您所指出的 - ADFS 通过 SAML 2 和 WS-Federation 等协议提供基于声明的身份验证功能。这些协议通常用于获取用户的安全令牌,并使用该令牌在服务提供商(外部应用程序)处对他们进行身份验证。这种交互将在用户发起的基础上完成,他们首先向 ADFS 进行身份验证(充当身份提供者)。
我不清楚你的整个项目需要什么,但也许可以应用这种方法?如果没有 - 您可能需要考虑打开防火墙端口以通过 LDAP(或 LDAPS)访问 AD。
ADFS doesn't offer a means to get "a list of users". For that you should look at traditional ways of querying AD using LDAP (as proposed by Aaron).
As you point out - ADFS provides claims-based authentication features, via protocols such as SAML 2 and WS-Federation. These protocols are typically used to get a security token for a user, and use that token to authenticate them at a Service Provider (external application). This interaction would be done on a user initiated basis, with them first authenticating to ADFS (acting as the Identity Provider).
It's not clear to me what your entire project entails, but perhaps that approach could be applied? If not - you may have to look at opening up firewall ports to access AD via LDAP (or LDAPS).
这是一个很好的起点:http://jeftek.com/ 222/使用-java-code-with-active-directory/
Here is a good place to start: http://jeftek.com/222/using-java-code-with-active-directory/