tento nazor zastavam taky. Diky za zaslany priklad.
Adámek Lukáš <[EMAIL PROTECTED]> Odeslal: [EMAIL PROTECTED] 21.11.2007 11:04 Odpovězte prosím uživateli Java <[email protected]> Komu "Java" <[email protected]> Kopie Předmět RE: Tomcat + LDAP Ahoj Zastavam nazor, ze priklad je za 1000 stran teorie: DirContext dirContext = null; DirContext dirContextUser = null; NamingEnumeration results = null; String userHierarchy = null; try { Hashtable<String, String> account = new Hashtable<String, String>(); account.put(Context.INITIAL_CONTEXT_FACTORY, contextFactory); account.put("com.sun.jndi.ldap.connect.timeout", "5000"); account.put(Context.PROVIDER_URL, "ldap://" + server + portS); account.put(Context.SECURITY_PRINCIPAL, login); account.put(Context.SECURITY_CREDENTIALS, psswd); account.put(Context.SECURITY_AUTHENTICATION, securityAuthentication); dirContextOKBase = new InitialDirContext(account); SearchControls controls = new SearchControls(); controls.setSearchScope(SearchControls.SUBTREE_SCOPE); results = dirContext.search(hierarchy, "(&(objectClass=user)(samaccountname=" + loginUser + "))", controls); while (results.hasMoreElements()) { SearchResult sr = (SearchResult) results.next(); userHierarchy = sr.getName(); } } catch (CommunicationException e) { logger.error(e); throw new AutentizaceException(AutentizaceExceptionTyp.CHYBA_KOMUNIKACE_S_AD); } catch (AuthenticationException e) { logger.error(e); throw new AutentizaceException(AutentizaceExceptionTyp.VADNY_UCET_K_AD); } catch (NamingException e) { logger.error(e); throw new AutentizaceException(AutentizaceExceptionTyp.CHYBA_KOMUNIKACE_S_AD); } finally { if (results != null) { try { results.close(); } catch (NamingException e) { logger.error(e); } } if (dirContextOKBase != null) { try { dirContextOKBase.close(); } catch (NamingException e) { logger.error(e); } } if (dirContextUser != null) { try { dirContextUser.close(); } catch (NamingException e) { logger.error(e); } } } l. From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Pavel Zelenka Sent: Wednesday, November 21, 2007 10:54 AM To: Java Subject: Re: Tomcat + LDAP Ne nepouzivam. "Petr Burdik" <[EMAIL PROTECTED]> Odeslal: [EMAIL PROTECTED] 21.11.2007 09:13 Odpovězte prosím uživateli Java <[email protected]> Komu Java <[email protected]> Kopie Předmět Re: Tomcat + LDAP Jeste dotaz nez napisu cely prispevek. Pouzivate spring? Pet On Wed, 21 Nov 2007 08:56:26 +0100, Pavel Zelenka <[EMAIL PROTECTED]> wrote: > Dobrý den, > > potřeboval bych poradit jak rozchodit LDAP autentifikaci. > V současnosti provádím autentifikaci uživatelů webové aplikace, která > běží > > na Tomcatu 6.0.14 tak, že mám v SQL databázi tabulku uživatelů a > uživatelé > > se hlásí prostřednictvím formuláře, kde následně servletem zkontroluji > jméno a heslo. > Chtěl bych však pro autentifikaci uživatelů použít LDAP server, který u > nás běží. Z dostupných informací, které jsem dopsud našel však nejsem > nijak moudrý. Nevíte jak na to? > > Možná bych ještě upřesnil, že bych autentifikaci chtěl nadále dělat tak, > že uživatel zadá do formuláře jméno + heslo a následně servlet provede > autentifikaci oproti LDAP. Z různých zdrojů jsem nakonec vypotil > následujcí kód, ale nevím jestli je vhodný i pro webovou aplikaci a > hlavně, jestli je to správné řešení > > public class Main { > > public static void main(String[] args) { > > Hashtable env = new Hashtable(); > env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory"); > env.put(Context.PROVIDER_URL, > "ldap://muj_server:389/o=Mediaservis"); > > // Authenticate as > env.put(Context.SECURITY_AUTHENTICATION, "simple"); > env.put(Context.SECURITY_PRINCIPAL, "cn=Pavel Zelenka, > o=Mediaservis"); > env.put(Context.SECURITY_CREDENTIALS, "heslo"); > > try { > // Create initial context > DirContext ctx = new InitialDirContext(env); > ctx.close(); > } catch (NamingException e) { > e.printStackTrace(); > } > } > } > > Díky > > Pavel Zelenka -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
