Author: mir
Date: Thu Mar 11 17:26:03 2010
New Revision: 921951
URL: http://svn.apache.org/viewvc?rev=921951&view=rev
Log:
CLEREZZA-153: added createSubject()-method to UserUtil
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserUtil.java
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/auth/AuthenticatingFilter.java
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserUtil.java
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserUtil.java?rev=921951&r1=921950&r2=921951&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserUtil.java
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserUtil.java
Thu Mar 11 17:26:03 2010
@@ -23,8 +23,10 @@ import java.security.AccessController;
import java.security.Principal;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
+import java.util.Collections;
import java.util.Iterator;
import javax.security.auth.Subject;
+import org.apache.clerezza.platform.security.auth.PrincipalImpl;
/**
* Utility methods for retrieving user information.
@@ -67,6 +69,9 @@ public class UserUtil {
}
throw new RuntimeException(cause);
}
+ if (subject == null) {
+ return null;
+ }
Iterator<Principal> iter = subject.getPrincipals().iterator();
String name = null;
if (iter.hasNext()) {
@@ -74,4 +79,10 @@ public class UserUtil {
}
return name;
}
+
+ public static Subject createSubject(String userName) {
+ return new Subject(true,
+ Collections.singleton(new PrincipalImpl(userName)),
Collections.EMPTY_SET,
+ Collections.EMPTY_SET);
+ }
}
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/auth/AuthenticatingFilter.java
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/auth/AuthenticatingFilter.java?rev=921951&r1=921950&r2=921951&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/auth/AuthenticatingFilter.java
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/auth/AuthenticatingFilter.java
Thu Mar 11 17:26:03 2010
@@ -20,13 +20,14 @@ package org.apache.clerezza.platform.sec
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
-
import java.util.Collections;
+
import java.util.Comparator;
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
import javax.security.auth.Subject;
+import org.apache.clerezza.platform.security.UserUtil;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Reference;
import org.apache.felix.scr.annotations.ReferenceCardinality;
@@ -57,9 +58,7 @@ public class AuthenticatingFilter implem
private final Logger logger =
LoggerFactory.getLogger(AuthenticatingFilter.class);
private SortedSet<WeightedAuthenticationMethod> methodList =
new TreeSet<WeightedAuthenticationMethod>(new
WeightedAuthMethodComparator());
- public static final Subject ANONYMOUS_SUBJECT = new Subject(true,
- Collections.singleton(new PrincipalImpl("anonymous")),
Collections.EMPTY_SET,
- Collections.EMPTY_SET);
+ public static final Subject ANONYMOUS_SUBJECT =
UserUtil.createSubject("anonymous");
@Override
public void handle(final Request request, final Response response,
@@ -86,8 +85,7 @@ public class AuthenticatingFilter implem
if (userName == null) {
subject = ANONYMOUS_SUBJECT;
} else {
- subject = new Subject();
- subject.getPrincipals().add(new
PrincipalImpl(userName));
+ subject = UserUtil.createSubject(userName);
}
try {
Subject.doAsPrivileged(subject, new
PrivilegedExceptionAction() {