作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用这种方法查找 LDAP 服务器。该列表包含大约 30 个 LDAP 服务器。在我的 Tomcat 应用程序中,我需要授权用户。我找不到任何关于如何使用 Shiro 执行此操作的文档。我知道如何指向一个 LDAP
。但是我怎样才能指向多个 LDAP
服务器呢?这些 LDAP
服务器中的任何一个都可能随时关闭。他们中的大多数人通常都是起来的。另外,如何定期刷新 LDAP
列表?我无法控制 LDAP。所以我需要将 Shiro 指向以下方法返回的内容
public List<String> getLdapServers (final String dnsServQuery)
{
final List<String> serverList = new ArrayList<>();
try {
final DirContext dnsContext = new InitialDirContext(env);
final String dnsQueryType[] = { "SRV" };
. . . blah blah
return serverList;
}
最佳答案
有几种方法可以做到这一点。1.) 你可以在加载 Shiro 之前生成一个 shiro.ini
(简单,但不是一个可靠的解决方案)2.) 您可以创建一个新领域(扩展 LDAP 领域)并以这种方式处理您的初始化。3.) 实现 LdapContextFactory并以这种方式管理连接。
我推荐 #3
关于tomcat - 如何将 Apache Shiro 指向多个动态生成的 LDAP 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46391337/
我是一名优秀的程序员,十分优秀!