인증프로그램을 꼭 Exception으로 처리 하시려고 하십니까
인증을 그렇게 하지 마시고 Serarch로 그 사람을 찾아서 리턴 값의 갯수로
인증을 하는 것이 어떨런지 그러면 이와 같은 문제가 없을 것 같고
Weblogic이라고 하셨는데 이전 작업에 아마 JAVA를 많이 패치 한것 같네요...어느 회사에 다니시는지는 모르겠지만 잘 되시시길 바랍니다.
그럼
-- 박세혁 님이 쓰신 글:
>> 안녕하세요.
>>
>> 밑에 글을 올린 사람입니다.
>>
>> 계속해서 sun os, Hp-Ux 에서 테스트를 하고 있습니다.
>>
>> 혹시 HP-Ux에서 작업하시는 분 계십니까?
>>
>> 현재,
>> weblogic5 sp9 와 netscape directory server 4.x 버젼을 사용하고 있고,
>> 다음 페이지를 만들어서 접속을 하려고 하는데...
>> dn 틀리면, exception이 정상적으로 발생하는데,
>> password만 틀리면, exception이 발생하지 않습니다.
>> 거의 무한 루프같은 현상이... --;
>>
>> ldap access log를 살펴보면 정상적으로 49번 에러 코드를 발생시키는데,
>> 이쪽에서는 그것을 잡아내질 못하고 있는 것같습니다.
>>
>> 비슷한 환경에서 작업하시는 분이 계시면 테스트 부탁드리겠습니다.
>>
>> ===================================================================
>>
>> <%@ page import="java.util.*,java.util.Hashtable,java.util.Enumeration"%>
>> <%@ page import="javax.naming.*,javax.naming.directory.*"%>
>> <%
>>
>> String INITCTX = "com.sun.jndi.ldap.LdapCtxFactory";
>> String LDAP_HOST = "ldap://70.22.107.51:30000";
>> String LDAP_AUTH = "simple";
>>
>> String strDn = " ";
>> String strPasswd = " ";
>>
>> DirContext ctx = null;
>> try {
>>
>> Hashtable env = new Hashtable();
>>
>> env.put(Context.INITIAL_CONTEXT_FACTORY,INITCTX);
>> env.put(Context.PROVIDER_URL,LDAP_HOST);
>>
>> env.put(Context.SECURITY_AUTHENTICATION, LDAP_AUTH );
>> env.put(Context.SECURITY_PRINCIPAL, strDn );
>> env.put(Context.SECURITY_CREDENTIALS, strPasswd );
>>
>> ctx = new InitialDirContext(env);
>> out.println( "인증성공<BR>" );
>> }
>> catch( NamingException e )
>> {
>> out.println( "인증실패<BR>" );
>> e.printStackTrace();
>> }
>> out.print( "access!" );
>>
>> %>
>>
>> =================================================================
|