Update with latest change to the security interface for the webconsole
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@953124 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/karaf/webconsole/branding/src/main/java/org/apache/felix/karaf/webconsole/JaasSecurityProvider.java b/karaf/webconsole/branding/src/main/java/org/apache/felix/karaf/webconsole/JaasSecurityProvider.java
index a32f31d..b2a37ba 100644
--- a/karaf/webconsole/branding/src/main/java/org/apache/felix/karaf/webconsole/JaasSecurityProvider.java
+++ b/karaf/webconsole/branding/src/main/java/org/apache/felix/karaf/webconsole/JaasSecurityProvider.java
@@ -17,7 +17,6 @@
package org.apache.felix.karaf.webconsole;
import java.io.IOException;
-import java.security.GeneralSecurityException;
import javax.security.auth.Subject;
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
@@ -40,26 +39,30 @@
this.realm = realm;
}
- public Object authenticate(final String username, final String password) throws GeneralSecurityException {
- Subject subject = new Subject();
- LoginContext loginContext = new LoginContext(realm, subject, new CallbackHandler() {
- public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
- for (int i = 0; i < callbacks.length; i++) {
- if (callbacks[i] instanceof NameCallback) {
- ((NameCallback) callbacks[i]).setName(username);
- } else if (callbacks[i] instanceof PasswordCallback) {
- ((PasswordCallback) callbacks[i]).setPassword(password.toCharArray());
- } else {
- throw new UnsupportedCallbackException(callbacks[i]);
+ public Object authenticate(final String username, final String password) {
+ try {
+ Subject subject = new Subject();
+ LoginContext loginContext = new LoginContext(realm, subject, new CallbackHandler() {
+ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ if (callbacks[i] instanceof NameCallback) {
+ ((NameCallback) callbacks[i]).setName(username);
+ } else if (callbacks[i] instanceof PasswordCallback) {
+ ((PasswordCallback) callbacks[i]).setPassword(password.toCharArray());
+ } else {
+ throw new UnsupportedCallbackException(callbacks[i]);
+ }
}
}
- }
- });
- loginContext.login();
- return subject;
+ });
+ loginContext.login();
+ return subject;
+ } catch (Exception e) {
+ return null;
+ }
}
- public void authorize(Object o, String s) throws GeneralSecurityException {
- throw new UnsupportedOperationException();
+ public boolean authorize(Object o, String s) {
+ return true;
}
}