You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@tomee.apache.org by bu...@apache.org on 2012/07/20 15:57:20 UTC

svn commit: r826460 - in /websites/staging/openejb/trunk: cgi-bin/ content/ content/dev/jira/ content/examples-trunk/testing-security-3/ content/examples-trunk/testing-security-3/src/main/java/org/superbiz/injection/secure/ content/examples-trunk/testi...

Author: buildbot
Date: Fri Jul 20 13:57:19 2012
New Revision: 826460

Log:
Staging update by buildbot for openejb

Removed:
    websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/resources/groups.properties
    websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/resources/users.properties
Modified:
    websites/staging/openejb/trunk/cgi-bin/   (props changed)
    websites/staging/openejb/trunk/content/   (props changed)
    websites/staging/openejb/trunk/content/dev/jira/todo.html
    websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/README.html
    websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/main/java/org/superbiz/injection/secure/MyLoginProvider.java
    websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/java/org/superbiz/injection/secure/MovieTest.java
    websites/staging/openejb/trunk/content/sitemap.xml

Propchange: websites/staging/openejb/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Jul 20 13:57:19 2012
@@ -1 +1 @@
-1363758
+1363777

Propchange: websites/staging/openejb/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Jul 20 13:57:19 2012
@@ -1 +1 @@
-1363758
+1363777

Modified: websites/staging/openejb/trunk/content/dev/jira/todo.html
==============================================================================
--- websites/staging/openejb/trunk/content/dev/jira/todo.html (original)
+++ websites/staging/openejb/trunk/content/dev/jira/todo.html Fri Jul 20 13:57:19 2012
@@ -295,7 +295,6 @@
 <li><a href="https://issues.apache.org/jira/browse/TOMEE-298">TOMEE-298</a>: Review and Close JIRAs for version</li>
 <li><a href="https://issues.apache.org/jira/browse/TOMEE-297">TOMEE-297</a>: Update fixVersions for JIRAs used in svn commits</li>
 <li><a href="https://issues.apache.org/jira/browse/TOMEE-296">TOMEE-296</a>: Ensure JIRAs have been filed for commits</li>
-<li><a href="https://issues.apache.org/jira/browse/TOMEE-295">TOMEE-295</a>: Ensure Build is passing</li>
 <li><a href="https://issues.apache.org/jira/browse/OPENEJB-1836">OPENEJB-1836</a>: Validation: @Local on bean with no-interface should use @LocalBean</li>
 <li><a href="https://issues.apache.org/jira/browse/OPENEJB-1827">OPENEJB-1827</a>: Validation: @DataSourceDefinition className must be set</li>
 <li><a href="https://issues.apache.org/jira/browse/OPENEJB-1767">OPENEJB-1767</a>: Validation: Allow missing no-arg constructor for beans with @Inject constructor</li>

Modified: websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/README.html
==============================================================================
--- websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/README.html (original)
+++ websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/README.html Fri Jul 20 13:57:19 2012
@@ -247,6 +247,39 @@ public class Movies {
 }
 </code></pre>
 
+<h2>MyLoginProvider</h2>
+
+<pre><code>package org.superbiz.injection.secure;
+
+import org.apache.openejb.core.security.jaas.LoginProvider;
+
+import javax.security.auth.login.FailedLoginException;
+import java.util.Arrays;
+import java.util.List;
+
+public class MyLoginProvider implements LoginProvider {
+
+
+    @Override
+    public List&lt;String&gt; authenticate(String user, String password) throws FailedLoginException {
+        if ("paul".equals(user) &amp;&amp; "michelle".equals(password)) {
+            return Arrays.asList("Manager", "rockstar", "beatle");
+        }
+
+        if ("eddie".equals(user) &amp;&amp; "jump".equals(password)) {
+            return Arrays.asList("Employee", "rockstar", "vanhalen");
+        }
+
+        throw new FailedLoginException("Bad user or password!");
+    }
+}
+</code></pre>
+
+<h2>org.apache.openejb.core.security.jaas.LoginProvider</h2>
+
+<pre><code>org.superbiz.injection.secure.MyLoginProvider
+</code></pre>
+
 <h2>persistence.xml</h2>
 
 <pre><code>&lt;persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"&gt;
@@ -274,6 +307,7 @@ import javax.ejb.EJBAccessException;
 import javax.ejb.embeddable.EJBContainer;
 import javax.naming.Context;
 import javax.naming.InitialContext;
+import javax.naming.NamingException;
 import java.util.List;
 import java.util.Properties;
 
@@ -282,11 +316,17 @@ public class MovieTest extends TestCase 
     @EJB
     private Movies movies;
 
-    protected void setUp() throws Exception {
+    private Context getContext(String user, String pass) throws NamingException {
+        Properties p = new Properties();
+        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
+        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
+        p.put(Context.SECURITY_PRINCIPAL, user);
+        p.put(Context.SECURITY_CREDENTIALS, pass);
 
-        // Uncomment this line to set the login/logout functionality on Debug
-        //System.setProperty("log4j.category.OpenEJB.security", "debug");
+        return new InitialContext(p);
+    }
 
+    protected void setUp() throws Exception {
         Properties p = new Properties();
         p.put("movieDatabase", "new://Resource?type=DataSource");
         p.put("movieDatabase.JdbcDriver", "org.hsqldb.jdbcDriver");
@@ -296,13 +336,7 @@ public class MovieTest extends TestCase 
     }
 
     public void testAsManager() throws Exception {
-        Properties p = new Properties();
-        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
-        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
-        p.put(Context.SECURITY_PRINCIPAL, "paul");
-        p.put(Context.SECURITY_CREDENTIALS, "");
-
-        InitialContext context = new InitialContext(p);
+        final Context context = getContext("paul", "michelle");
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -323,13 +357,7 @@ public class MovieTest extends TestCase 
     }
 
     public void testAsEmployee() throws Exception {
-        Properties p = new Properties();
-        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
-        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
-        p.put(Context.SECURITY_PRINCIPAL, "eddie");
-        p.put(Context.SECURITY_CREDENTIALS, "jump");
-
-        InitialContext context = new InitialContext(p);
+        final Context context = getContext("eddie", "jump");
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -380,6 +408,22 @@ public class MovieTest extends TestCase 
         }
 
     }
+
+    public void testLoginFailure() throws NamingException {
+        try {
+            getContext("eddie", "panama");
+            fail("supposed to have a login failure here");
+        } catch (javax.naming.AuthenticationException e) {
+            //expected
+        }
+
+        try {
+            getContext("jimmy", "foxylady");
+            fail("supposed to have a login failure here");
+        } catch (javax.naming.AuthenticationException e) {
+            //expected
+        }
+    }
 }
 </code></pre>
 
@@ -471,6 +515,7 @@ Tests run: 3, Failures: 0, Errors: 0, Sk
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/ejb/embeddable/EJBContainer.html">javax.ejb.embeddable.EJBContainer</a></li>
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/naming/Context.html">javax.naming.Context</a></li>
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/naming/InitialContext.html">javax.naming.InitialContext</a></li>
+<li><a href="http://docs.oracle.com/javaee/6/api/javax/naming/NamingException.html">javax.naming.NamingException</a></li>
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/Entity.html">javax.persistence.Entity</a></li>
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/EntityManager.html">javax.persistence.EntityManager</a></li>
 <li><a href="http://docs.oracle.com/javaee/6/api/javax/persistence/PersistenceContext.html">javax.persistence.PersistenceContext</a></li>

Modified: websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/main/java/org/superbiz/injection/secure/MyLoginProvider.java
==============================================================================
--- websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/main/java/org/superbiz/injection/secure/MyLoginProvider.java (original)
+++ websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/main/java/org/superbiz/injection/secure/MyLoginProvider.java Fri Jul 20 13:57:19 2012
@@ -27,7 +27,7 @@ public class MyLoginProvider implements 
 
     @Override
     public List<String> authenticate(String user, String password) throws FailedLoginException {
-        if ("paul".equals(user)) {
+        if ("paul".equals(user) && "michelle".equals(password)) {
             return Arrays.asList("Manager", "rockstar", "beatle");
         }
 

Modified: websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/java/org/superbiz/injection/secure/MovieTest.java
==============================================================================
--- websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/java/org/superbiz/injection/secure/MovieTest.java (original)
+++ websites/staging/openejb/trunk/content/examples-trunk/testing-security-3/src/test/java/org/superbiz/injection/secure/MovieTest.java Fri Jul 20 13:57:19 2012
@@ -23,6 +23,7 @@ import javax.ejb.EJBAccessException;
 import javax.ejb.embeddable.EJBContainer;
 import javax.naming.Context;
 import javax.naming.InitialContext;
+import javax.naming.NamingException;
 import java.util.List;
 import java.util.Properties;
 
@@ -32,11 +33,17 @@ public class MovieTest extends TestCase 
     @EJB
     private Movies movies;
 
-    protected void setUp() throws Exception {
+    private Context getContext(String user, String pass) throws NamingException {
+        Properties p = new Properties();
+        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
+        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
+        p.put(Context.SECURITY_PRINCIPAL, user);
+        p.put(Context.SECURITY_CREDENTIALS, pass);
 
-        // Uncomment this line to set the login/logout functionality on Debug
-        //System.setProperty("log4j.category.OpenEJB.security", "debug");
+        return new InitialContext(p);
+    }
 
+    protected void setUp() throws Exception {
         Properties p = new Properties();
         p.put("movieDatabase", "new://Resource?type=DataSource");
         p.put("movieDatabase.JdbcDriver", "org.hsqldb.jdbcDriver");
@@ -46,13 +53,7 @@ public class MovieTest extends TestCase 
     }
 
     public void testAsManager() throws Exception {
-        Properties p = new Properties();
-        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
-        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
-        p.put(Context.SECURITY_PRINCIPAL, "paul");
-        p.put(Context.SECURITY_CREDENTIALS, "");
-
-        InitialContext context = new InitialContext(p);
+        final Context context = getContext("paul", "michelle");
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -73,13 +74,7 @@ public class MovieTest extends TestCase 
     }
 
     public void testAsEmployee() throws Exception {
-        Properties p = new Properties();
-        p.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.core.LocalInitialContextFactory");
-        p.setProperty("openejb.authentication.realmName", "ServiceProviderLogin");
-        p.put(Context.SECURITY_PRINCIPAL, "eddie");
-        p.put(Context.SECURITY_CREDENTIALS, "jump");
-
-        InitialContext context = new InitialContext(p);
+        final Context context = getContext("eddie", "jump");
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -130,5 +125,21 @@ public class MovieTest extends TestCase 
         }
 
     }
+
+    public void testLoginFailure() throws NamingException {
+        try {
+            getContext("eddie", "panama");
+            fail("supposed to have a login failure here");
+        } catch (javax.naming.AuthenticationException e) {
+            //expected
+        }
+
+        try {
+            getContext("jimmy", "foxylady");
+            fail("supposed to have a login failure here");
+        } catch (javax.naming.AuthenticationException e) {
+            //expected
+        }
+    }
 }
 //END SNIPPET: code

Modified: websites/staging/openejb/trunk/content/sitemap.xml
==============================================================================
--- websites/staging/openejb/trunk/content/sitemap.xml (original)
+++ websites/staging/openejb/trunk/content/sitemap.xml Fri Jul 20 13:57:19 2012
@@ -803,6 +803,10 @@
         <priority>0.9</priority>
     </url>
     <url>
+        <loc>http://tomee.apache.org/examples-trunk/testing-security-3/README.html</loc>
+        <priority>0.9</priority>
+    </url>
+    <url>
         <loc>http://tomee.apache.org/examples-trunk/testing-security-meta/README.html</loc>
         <priority>0.9</priority>
     </url>