我想在執行身份驗證之前檢查當前的LDAP服務器是打開還是關閉。我正在使用UnboundID LDAP SDK。有沒有可能的方法來做到這一點?如何在進行身份驗證之前檢查當前的LDAP服務器是打開還是關閉
0
A
回答
0
我們可以用SSUtil做到這一點。這裏不需要認證條目,我們可以在進行任何認證之前檢查服務器是啓動還是關閉。
SSLUtil su = new SSLUtil(new TrustAllTrustManager());
SSLSocketFactory sf = su.createSSLSocketFactory();
LDAPConnection connection = new LDAPConnection(sf,"localhost", 10636);
尋找此解決方案的優缺點。
0
有一種方法isConnected():
public boolean isConnected()
Indicates whether this connection is currently established.
Returns:
true if this connection is currently established, or false if it is not.
所以一個簡單的例子是這樣的:
LDAPConnection ldc = new LDAPConnection()
ldc.connect(...);
if (ldc.isConnected())
{
do good stuff
}
else
{
getLDAPConnection(...);
}
應該做的伎倆。
0
測試任何資源是否可用的最好方法就是嘗試在應用程序的正常過程中使用它,並在出現錯誤時處理它們。
否則你試圖預測未來。
0
檢查端口是否已啓動並正在運行。它是純Java。不需要SSL工廠或SSL上下文或證書。如果軟件包被防火牆丟棄,則會以毫秒爲單位超時。
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Socket;
public static boolean isPortReachable(String host, int port, int timeOutMS) {
try (Socket serverSocket = new Socket();) {
serverSocket.connect(new InetSocketAddress(host, port), timeOutMS);
return true;
} catch (final IOException e) { /* Ignore, Port not reachable */ }
return false;
}
用途爲LDAP或LDAPS:
if (isPortReachable(hostname, 389, 200)) { ... }
if (isPortReachable(hostname, 636, 200)) { ... }
相關問題
- 1. 檢查當前屏幕在iOS中是打開還是關閉
- 2. 如何訪問LDAP服務器進行身份驗證
- 3. 檢查谷歌reCaptcha服務是打開還是關閉
- 4. 在發出任何請求之前驗證服務器身份
- 5. 如何在C#中的文章之前進行身份驗證?
- 6. 在呼叫路由控制器之前進行身份驗證
- 7. 通過LDAP爲當前Windows用戶的憑證進行身份驗證?
- 8. 如何檢查是否UDP端口是打開還是關閉
- 9. 如何檢查IOS中的藍牙是打開還是關閉?
- 10. 創建檢查腳本的dameon如果httpd服務是打開還是關閉
- 11. 的Oauth服務LDAP身份驗證
- 12. 在撥打網絡服務互聯網之前檢查打開或關閉
- 13. 使用JWT進行身份驗證:服務器還是客戶端?
- 14. 使用Java中的服務帳戶進行LDAP身份驗證
- 15. slideToggle如何檢查它是打開還是關閉
- 16. 如何檢查相機閃光燈是打開還是關閉?
- 17. LDAP身份驗證查詢
- 18. 通過WSO2身份驗證服務器從LDAP獲取驗證
- 19. 使用Jetty進行LDAP身份驗證
- 20. 使用Laravel4進行LDAP身份驗證
- 21. 使用PHP進行LDAP身份驗證
- 22. 使用CakePHP進行LDAP身份驗證
- 23. 使用VB.NET進行LDAP身份驗證
- 24. 通過LDAP進行身份驗證
- 25. 如何獲取WCF服務,如果是服務進行身份驗證
- 26. 如何檢查CD驅動器在linux中是打開還是關閉?
- 27. 在顯示iFrame之前對用戶進行身份驗證
- 28. 在Express中提供目錄之前進行身份驗證
- 29. RSpec:在使用devise_auth_token測試之前進行身份驗證
- 30. Azure和身份驗證:在生成身份驗證Cookie之前執行其他檢查的最佳選擇
騙局:你試圖預測未來。服務器在您進行測試時可能會啓動,在您進行驗證時服務器可能會啓動。或者相反。這是沒有意義的。 – EJP
預測未來意味着什麼。只需要在進行任何身份驗證之前檢查服務器是啓動還是關閉。 – Malinda