3909N/A * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 0N/A * published by the Free Software Foundation. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2362N/A * or visit www.oracle.com if you need additional information or have any 0N/A * @author Vincent Ryan 0N/A * @summary Check that an LdapLoginModule can be initialized using various 0N/A * JAAS configurations. 0N/A * (LdapLoginModule replaces the JndiLoginModule for LDAP access) 0N/A * Run this test twice, once using the default security manager: 0N/A ?
"[security manager is not running]" 0N/A :
"[security manager is running: " +
0N/A // search-first mode 0N/A // expected behaviour (because no LDAP server is available) 0N/A // authentication-first mode 0N/A // expected behaviour (because no LDAP server is available) 0N/A // authentication-only mode 0N/A // expected behaviour (because no LDAP server is available) 0N/A // The JAAS configuration name for ldap-based authentication 0N/A // The JAAS configuration for ldap-based authentication 0N/A // The classname of the login module for ldap-based authentication 0N/A * Gets the JAAS configuration for ldap-based authentication 0N/A * Refreshes the configuration. 0N/A // the configuration is fixed 0N/A * This class defines the JAAS configuration for ldap-based authentication. 0N/A * It is equivalent to the following textual configuration entry: 0N/A * com.sun.security.auth.module.LdapLoginModule REQUIRED 0N/A * userProvider="ldap://localhost:23456/dc=example,dc=com" 0N/A * userFilter="(&(uid={USERNAME})(objectClass=inetOrgPerson))" 0N/A * authzIdentity="{EMPLOYEENUMBER}" 0N/A options.
put(
"userProvider",
"ldap://localhost:23456/dc=example,dc=com");
0N/A "(&(uid={USERNAME})(objectClass=inetOrgPerson))");
0N/A * This class defines the JAAS configuration for ldap-based authentication. 0N/A * It is equivalent to the following textual configuration entry: 0N/A * com.sun.security.auth.module.LdapLoginModule REQUIRED 0N/A * userProvider="ldap://localhost:23456/dc=example,dc=com" 0N/A * authIdentity="{USERNAME}" 0N/A * userFilter="(&(|(samAccountName={USERNAME})(userPrincipalName={USERNAME})(cn={USERNAME}))(objectClass=user))" 0N/A options.
put(
"userProvider",
"ldap://localhost:23456/dc=example,dc=com");
0N/A "(&(|(samAccountName={USERNAME})(userPrincipalName={USERNAME})" +
0N/A "(cn={USERNAME}))(objectClass=user))");
0N/A * This class defines the JAAS configuration for ldap-based authentication. 0N/A * It is equivalent to the following textual configuration entry: 0N/A * com.sun.security.auth.module.LdapLoginModule REQUIRED 0N/A * userProvider="ldap://localhost:23456 ldap://localhost:23457" 0N/A * authIdentity="cn={USERNAME},ou=people,dc=example,dc=com" 0N/A * authzIdentity="staff" 0N/A "ldap://localhost:23456 ldap://localhost:23457");
0N/A "cn={USERNAME},ou=people,dc=example,dc=com");