我用下面的代碼從一個獨立的Java應用程序驗證用戶身份的性能:LDAPS綁定從Java
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.directory.InitialDirContext;
public class Authenticate
{
public static void main(String[] args)
{
try
{
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "LDAPS://my_ldap_server:636");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL,
"[email protected],CN=myCustomers,CN=PartX,DC=testCom,DC=local");
env.put(Context.SECURITY_CREDENTIALS, "user_password");
env.put(Context.SECURITY_PROTOCOL, "ssl");
for (int i = 0; i < 50; i++)
{
long start = System.currentTimeMillis();
new InitialDirContext(env);
// send request, wait for response
long end = System.currentTimeMillis();
System.out.println("Round trip response time = "
+ (end - start) + " millis");
}
System.out.println("Welcome");
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
我得到每綁定接近200毫秒,這是非常高的響應時間。我的問題是別人在從java執行LDAP綁定時看到的響應時間。
必須有其他方法將用戶與LDAP綁定。請分享你的方法。我有一個綁定操作的.NET實現,它在大約20毫秒時執行。任何的意見都將會有幫助。
在此先感謝。
您好專家。請輸入其他任何內容?特別是針對其他綁定用戶的java實現看到的響應時間。 – Aspirant 2014-10-28 17:49:23