2017-09-24 34 views
0

我使用這種方法查找LDAP服務器。該列表包含大約30個LDAP服務器。在我的Tomcat應用程序中,我需要授權用戶。我無法找到任何有關Shiro如何操作的文檔。我知道如何指向一個LDAP。但是我怎樣才能指向多個LDAP服務器?這些LDAP服務器中的任何一個都可能在任何時候關閉。他們大多數雖然通常起來。另外我如何定期刷新LDAP列表?我對LDAP沒有任何控制權。所以我需要指出Shiro以下方法返回什麼如何將Apache Shiro指向多個動態生成的LDAP服務器?

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

有幾種方法可以做到這一點。 1.)你可以在加載Shiro之前生成一個shiro.ini(簡單但不完全可靠的解決方案) 2.)您可以創建一個新領域(擴展LDAP領域)並以這種方式處理您的初始化。 3.)執行LdapContextFactory並以這種方式管理連接。

我推薦#3

相關問題