Refine search
@Override public AuthStatus validateRequest(MessageInfo messageInfo, Subject clientSubject, Subject serviceSubject) throws AuthException { HttpServletResponse response = (HttpServletResponse) messageInfo.getResponseMessage(); try { response.getWriter().write("validateRequest invoked\n"); boolean isMandatory = Boolean.valueOf((String) messageInfo.getMap().get("javax.security.auth.message.MessagePolicy.isMandatory")); response.getWriter().write("isMandatory: " + isMandatory + "\n"); handler.handle(new Callback[] { new CallerPrincipalCallback(clientSubject, "test"), new GroupPrincipalCallback(clientSubject, new String[] { "architect" }) }); } catch (IOException | UnsupportedCallbackException e) { throw (AuthException) new AuthException().initCause(e); } return SUCCESS; }
Principal callbackPrincipal = callerPrincipalCallback.getPrincipal(); callerPrincipal = callbackPrincipal != null ? new NamePrincipal(callbackPrincipal.getName()) : callerPrincipalCallback.getName() != null ? new NamePrincipal(callerPrincipalCallback.getName()) : null; String[] groups = groupPrincipalCallback.getGroups(); if (groups != null) { Set<String> roles = new HashSet<>(Arrays.asList(groups));
groupPrincipalCallback = (GroupPrincipalCallback) callback; if (this.executionSubject == null) { this.executionSubject = groupPrincipalCallback.getSubject(); } else if (!this.executionSubject.equals(groupPrincipalCallback.getSubject())) { callerPrincipalCallback = (CallerPrincipalCallback) callback; if (this.executionSubject == null) { this.executionSubject = callerPrincipalCallback.getSubject(); } else if (!this.executionSubject.equals(callerPrincipalCallback.getSubject())) {
log.trace("Handling CallerPrincipalCallback"); final CallerPrincipalCallback cpc = (CallerPrincipalCallback) callback; Principal originalPrincipal = cpc.getPrincipal(); final String callerName = cpc.getName(); final Principal callerPrincipal = originalPrincipal != null ? originalPrincipal : callerName != null ? new NamePrincipal(callerName) : null; final Subject subject = cpc.getSubject(); if (subject != null && !subject.isReadOnly()) { subject.getPrincipals().add(authorizedIdentity.getPrincipal()); log.trace("Handling GroupPrincipalCallback"); GroupPrincipalCallback gpc = (GroupPrincipalCallback) callback; String[] groups = gpc.getGroups(); if (groups != null && groups.length > 0) { roles.addAll(Arrays.asList(groups));
Principal p = null; Principal callerPrincipal = callerPrincipalCallback.getPrincipal(); if (callerPrincipal != null) name = callerPrincipal.getName(); if (name == null && callerPrincipalCallback.getName() != null) name = callerPrincipalCallback.getName(); if (groupPrincipalCallback.getGroups() != null && groupPrincipalCallback.getGroups().length > 0) List<String> gs = new ArrayList<String>(groupPrincipalCallback.getGroups().length); for (String g : groupPrincipalCallback.getGroups()) l.add(new GroupPrincipalCallback(groupPrincipalCallback.getSubject(), gs.toArray(new String[gs.size()])));
CallerPrincipalCallback callerPrincipalCallback = new CallerPrincipalCallback(clientSubject, userPrincipal); if (callerPrincipalCallback.getName() == null && callerPrincipalCallback.getPrincipal() == null) { assignGroups = false; handler.handle((assignGroups ? new Callback[]{ callerPrincipalCallback, new GroupPrincipalCallback(callerPrincipalCallback.getSubject(), assignedGroups)} : new Callback[]{callerPrincipalCallback}));
private static void handleCallbacks(Subject clientSubject, CallbackHandler handler, CallerPrincipalCallback callerPrincipalCallback, Set<String> groups) { if (clientSubject == null) { throw new IllegalArgumentException("Null clientSubject!"); } if (handler == null) { throw new IllegalArgumentException("Null callback handler!"); } try { if (groups == null || isEmpty(groups) || (callerPrincipalCallback.getPrincipal() == null && callerPrincipalCallback.getName() == null)) { // don't handle groups if null/empty or if caller is null handler.handle(new Callback[] { callerPrincipalCallback }); } else { handler.handle(new Callback[] { callerPrincipalCallback, new GroupPrincipalCallback(clientSubject, groups.toArray(new String[groups.size()])) }); } } catch (IOException | UnsupportedCallbackException e) { // Should not happen throw new IllegalStateException(e); } }
private Callback handleGroupPrincipalCallbackWithMapping(GroupPrincipalCallback gpc) { String[] groups = gpc.getGroups(); List<String> asGroupNames = new ArrayList<String>(); for (String groupName : groups) { Group mappedGroup = (Group) securityMap.get(new Group(groupName)); if (mappedGroup != null) { if(logger.isLoggable(Level.FINEST)){ logger.finest("got mapped group as [" + groupName + "] for eis-group [" + mappedGroup.getName() + "]"); } asGroupNames.add(mappedGroup.getName()); } } String[] asGroupsString = new String[asGroupNames.size()]; for (int i = 0; i < asGroupNames.size(); i++) { asGroupsString[i] = asGroupNames.get(i); } return new GroupPrincipalCallback(gpc.getSubject(), asGroupsString); //SecurityContext.setCurrent(new SecurityContext(gpc.getSubject())); }
callerPrincipal = ((CallerPrincipalCallback) callback).getPrincipal(); } else if (callback instanceof GroupPrincipalCallback) { groupsArray = ((GroupPrincipalCallback) callback).getGroups(); } else if (callback instanceof PasswordValidationCallback) { final PasswordValidationCallback passwordValidationCallback = (PasswordValidationCallback) callback;
private void processGroupPrincipal(GroupPrincipalCallback gpCallback) { final Subject fs = gpCallback.getSubject(); final String[] groups = gpCallback.getGroups(); if (groups != null && groups.length > 0) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { for (String group : groups) { fs.getPrincipals().add(new Group(group)); } return fs; } }); } else if (groups == null) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { Set<Principal> principalSet = fs.getPrincipals(); principalSet.removeAll(fs.getPrincipals(Group.class)); return fs; } }); } }
callbacks = new Callback[] { new CallerPrincipalCallback(client, tp), new GroupPrincipalCallback(client, groups) }; authenticated = true; tp = newTokenPrincipal(token); groups = fetchGroups(tp); callbacks = new Callback[] { new CallerPrincipalCallback(client, tp), new GroupPrincipalCallback(client, groups) }; authenticated = true; attachAuthnInfoToSession = true;
if (callback instanceof CallerPrincipalCallback) { CallerPrincipalCallback cpc = (CallerPrincipalCallback) callback; name = cpc.getName(); principal = cpc.getPrincipal(); subject = cpc.getSubject(); } else if (callback instanceof GroupPrincipalCallback) { GroupPrincipalCallback gpc = (GroupPrincipalCallback) callback; groups = gpc.getGroups(); } else {
private static void handleCallbacks(Subject clientSubject, CallbackHandler handler, CallerPrincipalCallback callerPrincipalCallback, Set<String> groups) { if (clientSubject == null) { throw new IllegalArgumentException("Null clientSubject!"); } if (handler == null) { throw new IllegalArgumentException("Null callback handler!"); } try { if (groups == null || isEmpty(groups) || (callerPrincipalCallback.getPrincipal() == null && callerPrincipalCallback.getName() == null)) { // don't handle groups if null/empty or if caller is null handler.handle(new Callback[] { callerPrincipalCallback }); } else { handler.handle(new Callback[] { callerPrincipalCallback, new GroupPrincipalCallback(clientSubject, groups.toArray(new String[groups.size()])) }); } } catch (IOException | UnsupportedCallbackException e) { // Should not happen throw new IllegalStateException(e); } }
callerPrincipal = ((CallerPrincipalCallback) callback).getPrincipal(); } else if (callback instanceof GroupPrincipalCallback) { groupsArray = ((GroupPrincipalCallback) callback).getGroups(); } else if (callback instanceof PasswordValidationCallback) { final PasswordValidationCallback passwordValidationCallback = (PasswordValidationCallback) callback;
private void processGroupPrincipal(GroupPrincipalCallback gpCallback) { final Subject fs = gpCallback.getSubject(); final String[] groups = gpCallback.getGroups(); if (groups != null && groups.length > 0) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { for (String group : groups) { fs.getPrincipals().add(new Group(group)); } return fs; } }); } else if (groups == null) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { Set<Principal> principalSet = fs.getPrincipals(); principalSet.removeAll(fs.getPrincipals(Group.class)); return fs; } }); } }
if (callback instanceof CallerPrincipalCallback) { CallerPrincipalCallback cpc = (CallerPrincipalCallback) callback; name = cpc.getName(); principal = cpc.getPrincipal(); subject = cpc.getSubject(); } else if (callback instanceof GroupPrincipalCallback) { GroupPrincipalCallback gpc = (GroupPrincipalCallback) callback; groups = gpc.getGroups(); } else {
@Override public AuthStatus validateRequest(MessageInfo messageInfo, Subject clientSubject, Subject serviceSubject) throws AuthException { HttpServletRequest request = (HttpServletRequest) messageInfo.getRequestMessage(); Callback[] callbacks; if (request.getParameter("doLogin") != null) { callbacks = new Callback[] { new CallerPrincipalCallback(clientSubject, "test"), new GroupPrincipalCallback(clientSubject, new String[] { "architect" }) }; } else { // The JASPIC protocol for "do nothing" callbacks = new Callback[] { new CallerPrincipalCallback(clientSubject, (Principal) null) }; } try { handler.handle(callbacks); } catch (IOException | UnsupportedCallbackException e) { throw (AuthException) new AuthException().initCause(e); } return SUCCESS; }
Principal callbackPrincipal = callerPrincipalCallback.getPrincipal(); callerPrincipal = callbackPrincipal != null ? new NamePrincipal(callbackPrincipal.getName()) : callerPrincipalCallback.getName() != null ? new NamePrincipal(callerPrincipalCallback.getName()) : null; String[] groups = groupPrincipalCallback.getGroups(); if (groups != null) { Set<String> roles = new HashSet<>(Arrays.asList(groups));
private void processGroupPricipal(GroupPrincipalCallback gpCallback) { final Subject fs = gpCallback.getSubject(); final String[] groups = gpCallback.getGroups(); if (groups != null && groups.length > 0) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { for (String group : groups) { fs.getPrincipals().add(new Group(group)); } return fs; } }); } else if (groups == null) { AppservAccessController.doPrivileged(new PrivilegedAction(){ public java.lang.Object run() { Set<Principal> principalSet = fs.getPrincipals(); principalSet.removeAll(fs.getPrincipals(Group.class)); return fs; } }); } } }
if (callback instanceof CallerPrincipalCallback) { CallerPrincipalCallback cpc = (CallerPrincipalCallback) callback; s.getPrincipals().addAll(cpc.getSubject().getPrincipals()); s.getPublicCredentials().addAll(cpc.getSubject().getPublicCredentials()); s.getPrivateCredentials().addAll(cpc.getSubject().getPrivateCredentials()); } else if (callback instanceof GroupPrincipalCallback) { GroupPrincipalCallback gpc = (GroupPrincipalCallback) callback; s.getPrincipals().addAll(gpc.getSubject().getPrincipals()); s.getPublicCredentials().addAll(gpc.getSubject().getPublicCredentials()); s.getPrivateCredentials().addAll(gpc.getSubject().getPrivateCredentials()); } else if (callback instanceof PasswordValidationCallback) { PasswordValidationCallback pvc = (PasswordValidationCallback) callback;