X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=opendaylight%2Fsecurity%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsecurity%2FControllerCustomRealm.java;h=a988673c7ef91b2f9d2297c4808b44b98986b63b;hb=7e82c13539bf01ba2c00989ced01a96cb7a0214e;hp=f2e339f0c71dbc927ad1fe93964e61bdb3813bca;hpb=d4489fe02637f4cc5c5fd79f218b5ebe43dbe84c;p=controller.git diff --git a/opendaylight/security/src/main/java/org/opendaylight/controller/security/ControllerCustomRealm.java b/opendaylight/security/src/main/java/org/opendaylight/controller/security/ControllerCustomRealm.java index f2e339f0c7..a988673c7e 100644 --- a/opendaylight/security/src/main/java/org/opendaylight/controller/security/ControllerCustomRealm.java +++ b/opendaylight/security/src/main/java/org/opendaylight/controller/security/ControllerCustomRealm.java @@ -31,8 +31,9 @@ public class ControllerCustomRealm extends RealmBase { .getGlobalInstance(IUserManager.class, this); if (userManager != null) { return userManager.getPassword(username); - } else + } else { throw new RuntimeException("User Manager reference is null"); + } } @Override @@ -40,14 +41,14 @@ public class ControllerCustomRealm extends RealmBase { IUserManager userManager = (IUserManager) ServiceHelper .getGlobalInstance(IUserManager.class, this); if (userManager != null) { - final List levels = new ArrayList(); - UserLevel level = userManager.getUserLevel(username); - if (level == null) level = UserLevel.NOUSER; - levels.add(level.toString()); - return new GenericPrincipal(username, "", levels); - } else + List controllerRoles = new ArrayList(); + for (UserLevel level : userManager.getUserLevels(username)) { + controllerRoles.add(level.toString()); + } + return new GenericPrincipal(username, "", controllerRoles); + } else { throw new RuntimeException("User Manager reference is null"); - + } } @Override @@ -66,8 +67,9 @@ public class ControllerCustomRealm extends RealmBase { logger.error("Authentication failed for user " + username); return null; } - } else + } else { throw new RuntimeException("User Manager reference is null"); + } } }