Repository: karaf Updated Branches: refs/heads/master 3f078732d -> 79cf40932
KARAF-2775 Use AccessControlContext to log into web shell Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/79cf4093 Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/79cf4093 Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/79cf4093 Branch: refs/heads/master Commit: 79cf409326450d66fe4b2aaa0fff19a400c79178 Parents: 3f07873 Author: Christian Schneider <[email protected]> Authored: Fri Feb 21 15:55:40 2014 +0100 Committer: Christian Schneider <[email protected]> Committed: Fri Feb 21 15:55:40 2014 +0100 ---------------------------------------------------------------------- .../java/org/apache/karaf/webconsole/gogo/GogoPlugin.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/79cf4093/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java ---------------------------------------------------------------------- diff --git a/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java b/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java index ed6a26d..077c31b 100644 --- a/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java +++ b/webconsole/gogo/src/main/java/org/apache/karaf/webconsole/gogo/GogoPlugin.java @@ -31,6 +31,8 @@ import java.io.PipedOutputStream; import java.io.PrintStream; import java.io.PrintWriter; import java.net.URL; +import java.security.AccessControlContext; +import java.security.AccessController; import java.util.zip.GZIPOutputStream; import javax.security.auth.Subject; @@ -40,7 +42,6 @@ import javax.servlet.http.HttpServletResponse; import org.apache.felix.service.command.CommandProcessor; import org.apache.felix.service.threadio.ThreadIO; -import org.apache.karaf.jaas.boot.principal.UserPrincipal; import org.apache.karaf.shell.console.Console; import org.apache.karaf.shell.console.ConsoleFactory; import org.apache.felix.webconsole.AbstractWebConsolePlugin; @@ -195,8 +196,9 @@ public class GogoPlugin extends AbstractWebConsolePlugin { out = new PipedInputStream(); PrintStream pipedOut = new PrintStream(new PipedOutputStream(out), true); - final Subject subject = new Subject(); - subject.getPrincipals().add(new UserPrincipal("karaf")); + AccessControlContext acc = AccessController.getContext(); + final Subject subject = Subject.getSubject(acc); + Console console = consoleFactory.create(commandProcessor, threadIO, new PipedInputStream(in),
