[jboss-cvs] JBossAS SVN: r62877 - projects/security/security-jboss-sx/trunk/src/tests/org/jboss/test.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue May 8 12:03:42 EDT 2007
Author: anil.saldhana at jboss.com
Date: 2007-05-08 12:03:41 -0400 (Tue, 08 May 2007)
New Revision: 62877
Removed:
projects/security/security-jboss-sx/trunk/src/tests/org/jboss/test/LoginModulesTestCase.java
Log:
ldap test moved to a separate ldap package
Deleted: projects/security/security-jboss-sx/trunk/src/tests/org/jboss/test/LoginModulesTestCase.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/tests/org/jboss/test/LoginModulesTestCase.java 2007-05-08 16:03:28 UTC (rev 62876)
+++ projects/security/security-jboss-sx/trunk/src/tests/org/jboss/test/LoginModulesTestCase.java 2007-05-08 16:03:41 UTC (rev 62877)
@@ -1,815 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test;
-
-import java.lang.reflect.Method;
-import java.security.acl.Group;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.ConsoleHandler;
-import javax.security.auth.Subject;
-import javax.security.auth.login.AppConfigurationEntry;
-import javax.security.auth.login.Configuration;
-import javax.security.auth.login.LoginContext;
-import javax.management.MBeanServer;
-import javax.management.MBeanServerFactory;
-import javax.management.ObjectName;
-
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.jboss.security.SimplePrincipal;
-import org.jboss.security.plugins.JaasSecurityDomain;
-import org.jboss.security.auth.callback.UsernamePasswordHandler;
-import org.jboss.logging.Logger;
-
-/** Tests of the LoginModule classes.
-
- @author Scott.Stark at jboss.org
- @version $Revision$
- */
-public class LoginModulesTestCase extends TestCase
-{
- static
- {
- try
- {
- Configuration.setConfiguration(new TestConfig());
- System.out.println("Installed TestConfig as JAAS Configuration");
- Logger.setPluginClassName("org.jboss.logging.JDK14LoggerPlugin");
- java.util.logging.Logger security = java.util.logging.Logger.getLogger("org.jboss.security");
- security.setLevel(Level.FINEST);
- ConsoleHandler console = new ConsoleHandler();
- console.setLevel(Level.FINEST);
- security.addHandler(console);
- Logger log = Logger.getLogger("org.jboss.security");
- log.trace("Configured JDK trace logging");
- }
- catch(Exception e)
- {
- e.printStackTrace();
- }
- }
- /** Hard coded login configurations for the test cases. The configuration
- name corresponds to the unit test function that uses the configuration.
- */
- static class TestConfig extends Configuration
- {
- public void refresh()
- {
- }
-
- public AppConfigurationEntry[] getAppConfigurationEntry(String name)
- {
- AppConfigurationEntry[] entry = null;
- try
- {
- Class[] parameterTypes = {};
- Method m = getClass().getDeclaredMethod(name, parameterTypes);
- Object[] args = {};
- entry = (AppConfigurationEntry[]) m.invoke(this, args);
- }
- catch(Exception e)
- {
- }
- return entry;
- }
- AppConfigurationEntry[] testLdapExample1()
- {
- String name = "org.jboss.security.auth.spi.LdapLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
- options.put("principalDNPrefix", "uid=");
- options.put("principalDNSuffix", ",ou=People,dc=jboss,dc=org");
- options.put("rolesCtxDN", "ou=Roles,dc=jboss,dc=org");
- options.put("uidAttributeID", "member");
- options.put("matchOnUserDN", "true");
- options.put("roleAttributeID", "cn");
- options.put("roleAttributeIsDN", "false");
- options.put("searchTimeLimit", "5000");
- options.put("searchScope", "ONELEVEL_SCOPE");
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- AppConfigurationEntry[] testLdapExample11()
- {
- String name = "org.jboss.security.auth.spi.LdapLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
- options.put("java.naming.security.principal", "cn=Root,dc=jboss,dc=org");
- options.put("java.naming.security.credentials", "secret1");
-
- options.put("principalDNPrefix", "uid=");
- options.put("principalDNSuffix", ",ou=People,dc=jboss,dc=org");
- options.put("rolesCtxDN", "ou=Roles,dc=jboss,dc=org");
- options.put("uidAttributeID", "member");
- options.put("matchOnUserDN", "true");
- options.put("roleAttributeID", "cn");
- options.put("roleAttributeIsDN", "false");
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- AppConfigurationEntry[] testLdapExample11Encrypt()
- {
- String name = "org.jboss.security.auth.spi.LdapLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
- options.put("java.naming.security.principal", "cn=Root,dc=jboss,dc=org");
- // secret1 encrypted
- options.put("java.naming.security.credentials", "7hInTB4HCBL");
-
- options.put("jaasSecurityDomain", "jboss.test:service=JaasSecurityDomain,domain=testLdapExample11Encrypt");
- options.put("principalDNPrefix", "uid=");
- options.put("principalDNSuffix", ",ou=People,dc=jboss,dc=org");
- options.put("rolesCtxDN", "ou=Roles,dc=jboss,dc=org");
- options.put("uidAttributeID", "member");
- options.put("matchOnUserDN", "true");
- options.put("roleAttributeID", "cn");
- options.put("roleAttributeIsDN", "false");
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- AppConfigurationEntry[] testLdapExample2()
- {
- String name = "org.jboss.security.auth.spi.LdapLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
- options.put("principalDNPrefix", "uid=");
- options.put("principalDNSuffix", ",ou=People,o=example2,dc=jboss,dc=org");
- options.put("rolesCtxDN", "ou=Roles,o=example2,dc=jboss,dc=org");
- options.put("uidAttributeID", "uid");
- options.put("matchOnUserDN", "false");
- options.put("roleAttributeID", "memberOf");
- options.put("roleAttributeIsDN", "true");
- options.put("roleNameAttributeID", "cn");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
-
- /**
- testLdapExample21 {
- org.jboss.security.auth.spi.LdapExtLoginModule
- java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
- java.naming.provider.url="ldap://lamia/"
- java.naming.security.authentication=simple
- bindDN="cn=Root,dc=jboss,dc=org"
- bindCredential=secret1
- baseCtxDN="ou=People,dc=jboss,dc=org"
- baseFilter="(uid={0})"
- rolesCtxDN="ou=Roles,dc=jboss,dc=org";
- roleFilter="(member={1})"
- roleAttributeID="cn"
- roleRecursion=0
- };
- */
- AppConfigurationEntry[] testLdapExample21()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
- options.put("bindDN", "cn=Root,dc=jboss,dc=org");
- options.put("bindCredential", "secret1");
- options.put("baseCtxDN", "ou=People,dc=jboss,dc=org");
- options.put("baseFilter", "(uid={0})");
-
- options.put("rolesCtxDN", "ou=Roles,dc=jboss,dc=org");
- options.put("roleFilter", "(member={1})");
- options.put("roleAttributeID", "cn");
- options.put("roleRecursion", "0");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- AppConfigurationEntry[] testLdapExample21Encrypt()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
- options.put("jaasSecurityDomain", "jboss.test:service=JaasSecurityDomain,domain=testLdapExample21Encrypt");
- options.put("bindDN", "cn=Root,dc=jboss,dc=org");
- // secret1 encrypted
- options.put("bindCredential", "7hInTB4HCBL");
- options.put("baseCtxDN", "ou=People,dc=jboss,dc=org");
- options.put("baseFilter", "(uid={0})");
-
- options.put("rolesCtxDN", "ou=Roles,dc=jboss,dc=org");
- options.put("roleFilter", "(member={1})");
- options.put("roleAttributeID", "cn");
- options.put("roleRecursion", "0");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- /**
- testLdapExample23 {
- org.jboss.security.auth.spi.LdapExtLoginModule
- java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
- java.naming.provider.url="ldap://lamia/"
- java.naming.security.authentication=simple
- bindDN="cn=Root,dc=jboss,dc=org"
- bindCredential=secret1
- baseCtxDN="ou=People,o=example3,dc=jboss,dc=org"
- baseFilter="(cn={0})"
- rolesCtxDN="ou=Roles,o=example3,dc=jboss,dc=org";
- roleFilter="(member={1})"
- roleAttributeID="cn"
- roleRecursion=0
- };
- */
- AppConfigurationEntry[] testLdapExample23()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
-
- options.put("bindDN", "cn=Root,dc=jboss,dc=org");
- options.put("bindCredential", "secret1");
- options.put("baseCtxDN", "ou=People,o=example3,dc=jboss,dc=org");
- options.put("baseFilter", "(cn={0})");
-
- options.put("rolesCtxDN", "ou=Roles,o=example3,dc=jboss,dc=org");
- options.put("roleFilter", "(member={1})");
- options.put("roleAttributeID", "cn");
- options.put("roleRecursion", "0");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- /**
- testLdapExample22 {
- org.jboss.security.auth.spi.LdapExtLoginModule
- java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
- java.naming.provider.url="ldap://lamia/"
- java.naming.security.authentication=simple
- bindDN="cn=Root,dc=jboss,dc=org"
- bindCredential=secret1
- baseCtxDN="ou=People,o=example2,dc=jboss,dc=org"
- baseFilter="(uid={0})"
- rolesCtxDN="ou=Roles,o=example2,dc=jboss,dc=org";
- roleFilter="(uid={0})"
- roleAttributeID="memberOf"
- roleAttributeIsDN="true"
- roleNameAttributeID="cn"
- roleRecursion=0
- };
- */
- AppConfigurationEntry[] testLdapExample22()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
-
- options.put("bindDN", "cn=Root,dc=jboss,dc=org");
- options.put("bindCredential", "secret1");
- options.put("baseCtxDN", "ou=People,o=example2,dc=jboss,dc=org");
- options.put("baseFilter", "(uid={0})");
-
- options.put("rolesCtxDN", "ou=Roles,o=example2,dc=jboss,dc=org");
- options.put("roleFilter", "(uid={0})");
- options.put("roleAttributeID", "memberOf");
- options.put("roleAttributeIsDN", "true");
- options.put("roleNameAttributeID", "cn");
- options.put("roleRecursion", "0");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
- /**
- testLdapExample24 {
- org.jboss.security.auth.spi.LdapExtLoginModule
- java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
- java.naming.provider.url="ldap://lamia/"
- java.naming.security.authentication=simple
- bindDN="cn=Root,dc=jboss,dc=org"
- bindCredential=secret1
- baseCtxDN="ou=People,o=example4,dc=jboss,dc=org"
- baseFilter="(cn={0})"
- rolesCtxDN="ou=Roles,o=example4,dc=jboss,dc=org";
- roleFilter="(member={1})"
- roleAttributeID="memberOf"
- roleRecursion=1
- };
- */
- AppConfigurationEntry[] testLdapExample24()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
- options.put("bindDN", "cn=Root,dc=jboss,dc=org");
- options.put("bindCredential", "secret1");
- options.put("baseCtxDN", "ou=People,o=example4,dc=jboss,dc=org");
- options.put("baseFilter", "(cn={0})");
-
- options.put("rolesCtxDN", "ou=Roles,o=example4,dc=jboss,dc=org");
- options.put("roleFilter", "(member={1})");
- options.put("roleAttributeID", "cn");
- options.put("roleRecursion", "1");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
-
- AppConfigurationEntry[] testJBAS3312()
- {
- String name = "org.jboss.security.auth.spi.LdapExtLoginModule";
- HashMap options = new HashMap();
- options.put("java.naming.factory.initial", "com.sun.jndi.ldap.LdapCtxFactory");
- options.put("java.naming.provider.url", "ldap://lamia/");
- options.put("java.naming.security.authentication", "simple");
-
- options.put("bindDN", "cn=Root,DC=uz,DC=kuleuven,DC=ac,DC=be");
- options.put("bindCredential", "root");
- options.put("baseCtxDN", "ou=People,dc=uz,dc=kuleuven,dc=ac,dc=be");
- options.put("baseFilter", "(sAMAccountName={0})");
-
- options.put("rolesCtxDN", "OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be");
- options.put("roleFilter", "(member={1})");
- options.put("roleAttributeID", "memberOf");
- options.put("roleAttributeIsDN", "true");
- options.put("roleNameAttributeID", "cn");
- options.put("roleRecursion", "5");
- options.put("searchScope", "ONELEVEL_SCOPE");
-
- AppConfigurationEntry ace = new AppConfigurationEntry(name,
- AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, options);
- AppConfigurationEntry[] entry = {ace};
- return entry;
- }
-
- }
-
- public LoginModulesTestCase(String testName)
- {
- super(testName);
- }
-
- public void testLdapExample1() throws Exception
- {
- System.out.println("testLdapExample1");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke", "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample1", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- assertTrue("Principals contains jduke", subject.getPrincipals().contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- }
- public void testLdapExample11() throws Exception
- {
- System.out.println("testLdapExample11");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke", "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample11", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- assertTrue("Principals contains jduke", subject.getPrincipals().contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- }
- public void testLdapExample11Encrypt() throws Exception
- {
- System.out.println("testLdapExample11Encrypt");
- MBeanServer server = MBeanServerFactory.createMBeanServer("jboss");
- JaasSecurityDomain secDomain = new JaasSecurityDomain("testLdapExample11Encrypt");
- secDomain.setSalt("abcdefgh");
- secDomain.setIterationCount(13);
- secDomain.setKeyStorePass("master");
- secDomain.setManagerServiceName(null);
- secDomain.start();
- ObjectName name = new ObjectName("jboss.test:service=JaasSecurityDomain,domain=testLdapExample11Encrypt");
- server.registerMBean(secDomain, name);
-
- // secret1 encrypts to 7hInTB4HCBL
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke", "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample11Encrypt", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- assertTrue("Principals contains jduke", subject.getPrincipals().contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- MBeanServerFactory.releaseMBeanServer(server);
- }
- /*
-version: 1
-dn: o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: dcObject
-objectClass: organization
-dc: jboss
-o: JBoss
-
-dn: ou=People,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: organizationalUnit
-ou: People
-
-dn: uid=jduke,ou=People,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: uidObject
-objectClass: person
-objectClass: inetOrgPerson
-cn: Java Duke
-employeeNumber: judke-123
-sn: Duke
-uid: jduke
-userPassword:: dGhlZHVrZQ==
-
-dn: uid=jduke2,ou=People,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: uidObject
-objectClass: person
-objectClass: inetOrgPerson
-cn: Java Duke2
-employeeNumber: judke2-123
-sn: Duke2
-uid: jduke2
-userPassword:: dGhlZHVrZTI=
-
-dn: ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: organizationalUnit
-ou: Roles
-
-dn: uid=jduke,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: groupUserEx
-memberOf: cn=Echo,ou=Roles,o=example2,dc=jboss,dc=org
-memberOf: cn=TheDuke,ou=Roles,o=example2,dc=jboss,dc=org
-uid: jduke
-
-dn: uid=jduke2,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: groupUserEx
-memberOf: cn=Echo2,ou=Roles,o=example2,dc=jboss,dc=org
-memberOf: cn=TheDuke2,ou=Roles,o=example2,dc=jboss,dc=org
-uid: jduke2
-
-dn: cn=Echo,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: groupOfNames
-cn: Echo
-description: the echo role
-member: uid=jduke,ou=People,dc=jboss,dc=org
-
-dn: cn=TheDuke,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: groupOfNames
-objectClass: top
-cn: TheDuke
-description: the duke role
-member: uid=jduke,ou=People,o=example2,dc=jboss,dc=org
-
-dn: cn=Echo2,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: groupOfNames
-cn: Echo2
-description: the Echo2 role
-member: uid=jduke2,ou=People,dc=jboss,dc=org
-
-dn: cn=TheDuke2,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: groupOfNames
-objectClass: top
-cn: TheDuke2
-description: the duke2 role
-member: uid=jduke2,ou=People,o=example2,dc=jboss,dc=org
-
-dn: cn=JBossAdmin,ou=Roles,o=example2,dc=jboss,dc=org
-objectClass: top
-objectClass: groupOfNames
-cn: JBossAdmin
-description: the JBossAdmin group
-member: uid=jduke,ou=People,dc=jboss,dc=org
- */
- public void testLdapExample2() throws Exception
- {
- System.out.println("testLdapExample2");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke", "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample2", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- assertTrue("Principals contains jduke", subject.getPrincipals().contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
- assertFalse("Echo2 is NOT a role", roles.isMember(new SimplePrincipal("Echo2")));
- assertFalse("TheDuke2 is NOT a role", roles.isMember(new SimplePrincipal("TheDuke2")));
-
- lc.logout();
- }
- public void testLdapExample21() throws Exception
- {
- System.out.println("testLdapExample21");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample21", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains jduke", principals.contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- }
- public void testLdapExample21Encrypt() throws Exception
- {
- System.out.println("testLdapExample21Encrypt");
- MBeanServer server = MBeanServerFactory.createMBeanServer("jboss");
- JaasSecurityDomain secDomain = new JaasSecurityDomain("testLdapExample21Encrypt");
- secDomain.setSalt("abcdefgh");
- secDomain.setIterationCount(13);
- secDomain.setKeyStorePass("master");
- secDomain.setManagerServiceName(null);
- secDomain.start();
- ObjectName name = new ObjectName("jboss.test:service=JaasSecurityDomain,domain=testLdapExample21Encrypt");
- server.registerMBean(secDomain, name);
-
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample21Encrypt", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains jduke", principals.contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- MBeanServerFactory.releaseMBeanServer(server);
- }
- public void testLdapExample23() throws Exception
- {
- System.out.println("testLdapExample23");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("Java Duke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample23", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains Java Duke", principals.contains(new SimplePrincipal("Java Duke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- }
- public void testLdapExample22() throws Exception
- {
- System.out.println("testLdapExample22");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample22", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains jduke", principals.contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("Echo is a role", roles.isMember(new SimplePrincipal("Echo")));
- assertTrue("TheDuke is a role", roles.isMember(new SimplePrincipal("TheDuke")));
-
- lc.logout();
- }
- public void testLdapExample24() throws Exception
- {
- System.out.println("testLdapExample24");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("Java Duke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testLdapExample24", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains Java Duke", principals.contains(new SimplePrincipal("Java Duke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- assertTrue("RG2 is a role", roles.isMember(new SimplePrincipal("RG2")));
- assertTrue("R1 is a role", roles.isMember(new SimplePrincipal("R1")));
- assertTrue("R2 is a role", roles.isMember(new SimplePrincipal("R2")));
- assertTrue("R3 is a role", roles.isMember(new SimplePrincipal("R3")));
- assertFalse("R4 is NOT a role", roles.isMember(new SimplePrincipal("R4")));
- assertTrue("R5 is a role", roles.isMember(new SimplePrincipal("R5")));
-
- lc.logout();
- }
-
- /* JBAS-3312 testcase
-dn: DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-
-dn: ou=People,dc=uz,dc=kuleuven,dc=ac,dc=be
-objectClass: organizationalUnit
-ou: People
-
-dn: CN=jduke,ou=People,dc=uz,dc=kuleuven,dc=ac,dc=be
-memberOf: ou=People,dc=uz,dc=kuleuven,dc=ac,dc=be
-objectClass: top
-objectClass: person
-objectClass: organizationalPerson
-objectClass: user
-cn: JDuke
-name: Java Duke
-sn: TheDuke
-sAMAccountName: jduke
-userPrincipalName: jduke at jboss.org
-userPassword: theduke
-
-dn: OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-objectClass: organizationalUnit
-objectClass: orgUnitEx
-ou: Groups
-objectCategory: CN=Organizational-Unit,CN=Schema,CN=Configuration,DC=uz,DC=kuleuven,DC=ac,DC=be
-
-
-dn: OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-objectClass: organizationalUnit
-objectClass: orgUnitEx
-ou: Informatiesystemen
-objectCategory: CN=Organizational-Unit,CN=Schema,CN=Configuration,DC=uz,DC=kuleuven,DC=ac,DC=be
-
-
-dn: CN=inf_map_informatiesystemen_lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-objectClass: group
-cn: inf_map_informatiesystemen_lijst
-member: CN=inf_map_vmware_Lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-member: CN=inf_map_carenet_Lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-sAMAccountName: inf_map_informatiesystemen_lijst
-objectCategory: CN=Group,CN=Schema,CN=Configuration,DC=uz,DC=kuleuven,DC=ac,DC=be
-
-
-dn: CN=inf_map_vmware_Lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-objectClass: group
-cn: inf_map_vmware_Lijst
-description: \\uz\data\Admin\VMWare Lijst
-member: CN=inf_map_vmware_iso_S,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-member: CN=inf_map_vmware_iso_L,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-memberOf: CN=inf_map_informatiesystemen_lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-sAMAccountName: inf_map_vmware_Lijst
-objectCategory: CN=Group,CN=Schema,CN=Configuration,DC=uz,DC=kuleuven,DC=ac,DC=be
-
-
-dn: CN=inf_map_vmware_iso_S,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-objectClass: top
-objectClass: group
-cn: inf_map_vmware_iso_S
-description: \\uz\data\Admin\VMWare\ISO Schrijven
-member: CN=markv,OU=People,DC=uz,DC=kuleuven,DC=ac,DC=be
-member: CN=jduke,OU=People,DC=uz,DC=kuleuven,DC=ac,DC=be
-memberOf: CN=inf_map_informatiesystemen_lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-memberOf: CN=inf_map_vmware_Lijst,OU=Informatiesystemen,OU=Groups,DC=uz,DC=kuleuven,DC=ac,DC=be
-sAMAccountName: inf_map_vmware_iso_S
-objectCategory: CN=Group,CN=Schema,CN=Configuration,DC=uz,DC=kuleuven,DC=ac,DC=be
- */
- public void testJBAS3312() throws Exception
- {
- System.out.println("testJBAS3312");
- UsernamePasswordHandler handler = new UsernamePasswordHandler("jduke",
- "theduke".toCharArray());
- LoginContext lc = new LoginContext("testJBAS3312", handler);
- lc.login();
-
- Subject subject = lc.getSubject();
- System.out.println("Subject: "+subject);
-
- Set groups = subject.getPrincipals(Group.class);
- Set principals = subject.getPrincipals();
- assertTrue("Principals contains Java Duke", principals.contains(new SimplePrincipal("jduke")));
- assertTrue("Principals contains Roles", groups.contains(new SimplePrincipal("Roles")));
- Group roles = (Group) groups.iterator().next();
- Enumeration names = roles.members();
- while( names.hasMoreElements() )
- {
- System.out.println(names.nextElement());
- }
- assertTrue("inf_map_vmware_iso_S is a role", roles.isMember(new SimplePrincipal("inf_map_vmware_iso_S")));
- assertTrue("inf_map_informatiesystemen_lijst is a role", roles.isMember(new SimplePrincipal("inf_map_informatiesystemen_lijst")));
- assertTrue("inf_map_vmware_Lijst is a role", roles.isMember(new SimplePrincipal("inf_map_vmware_Lijst")));
-
- lc.logout();
- }
-
- public static void main(java.lang.String[] args)
- {
- System.setErr(System.out);
- TestSuite suite = new TestSuite(LoginModulesTestCase.class);
- junit.textui.TestRunner.run(suite);
- }
-
-}
More information about the jboss-cvs-commits
mailing list