/** * Determine if have entity role criteria. * * @param criteria the current criteria set * * @return true if have role criteria, false otherwise */ protected boolean haveRoleCriteria(@Nonnull final CriteriaSet criteria) { return criteria.contains(EntityRoleCriterion.class); }
/** * Resolve the RoleDescriptor from the criteria. * * @param criteria the input criteria * @return the input role descriptor criterion or null if could not be resolved */ private RoleDescriptor resolveRoleDescriptor(@Nonnull final CriteriaSet criteria) { if (criteria.contains(RoleDescriptorCriterion.class)) { return criteria.get(RoleDescriptorCriterion.class).getRole(); } return null; }
/** * Resolve the entityID from the criteria. * * @param criteria the input criteria * @return the input entityID criterion or null if could not be resolved */ private String resolveEntityID(@Nonnull final CriteriaSet criteria) { if (criteria.contains(EntityIdCriterion.class)) { return criteria.get(EntityIdCriterion.class).getEntityId(); } final EntityDescriptor ed = resolveEntityDescriptor(criteria); if (ed != null) { return ed.getEntityID(); } return null; }
/** * Build the dynamic {@link CriteriaSet} instance to be used for TLS trust evaluation. * * @param request the HTTP client request * @param operationContext the current operation context * @return the new criteria set instance */ @Nonnull protected CriteriaSet buildTLSCriteriaSet(@Nonnull final HttpUriRequest request, @Nonnull final InOutOperationContext operationContext) { CriteriaSet criteriaSet = new CriteriaSet(); if (getTLSCriteriaSetStrategy() != null) { CriteriaSet resolved = getTLSCriteriaSetStrategy().apply(operationContext); if (resolved != null) { criteriaSet.addAll(resolved); } } if (!criteriaSet.contains(UsageType.class)) { criteriaSet.add(new UsageCriterion(UsageType.SIGNING)); } return criteriaSet; }
if (criteriaSet.contains(SignatureValidationParametersCriterion.class)) { log.warn("Supplied criteria contained already an instance of " + "SignatureValidationParametersCriterion, "
@Nullable protected String resolveReferenceDigestMethod(@Nonnull final CriteriaSet criteria, @Nonnull final Predicate<String> whitelistBlacklistPredicate) { if (!criteria.contains(RoleDescriptorCriterion.class)) { return super.resolveReferenceDigestMethod(criteria, whitelistBlacklistPredicate);
if (!newCriteriaSet.contains(UsageCriterion.class)) { newCriteriaSet.add( new UsageCriterion(UsageType.SIGNING) );
if (!criteriaSet.contains(EntityIdCriterion.class)) { String issuer = null; if (input.getAssertion().getIssuer() != null) { if (!criteriaSet.contains(UsageCriterion.class)) { log.debug("Adding internally-generated UsageCriterion with value of: {}", UsageType.SIGNING); criteriaSet.add(new UsageCriterion(UsageType.SIGNING));
if (criteriaSet.contains(RoleDescriptorCriterion.class)) { final RoleDescriptor roleDescriptor = criteriaSet.get(RoleDescriptorCriterion.class).getRole(); return resolveFromRoleDescriptor(criteriaSet, roleDescriptor, usage); } else if (criteriaSet.contains(EntityIdCriterion.class) && criteriaSet.contains(EntityRoleCriterion.class)) { if (getRoleDescriptorResolver() == null) { throw new ResolverException("EntityID and role input were supplied "
@Nonnull final CriteriaSet criteria, @Nonnull final Predicate<String> whitelistBlacklistPredicate) { if (!criteria.contains(RoleDescriptorCriterion.class)) { super.resolveAndPopulateCredentialAndSignatureAlgorithm(params, criteria, whitelistBlacklistPredicate); return;