protected boolean verifyRequiredAttribute(
        final Map.Entry<String, Object> entry,
        final RegisteredServiceAccessStrategyRequest request) {
        val currentValues = ObjectUtils.defaultIfNull(request.getAttributes().get(entry.getKey()), List.of());
        val requiredValues = CollectionUtils.toCollection(entry.getValue());
        val pattern = RegexUtils.concatenate(requiredValues, true);
        LOGGER.debug("Checking activation criteria [{}] against [{}] with pattern [{}] for attribute [{}]",
            requiredValues, currentValues, pattern, entry.getKey());
        return pattern.equals(RegexUtils.MATCH_NOTHING_PATTERN)
            ? currentValues.stream().anyMatch(requiredValues::contains)
            : currentValues.stream().map(Object::toString).anyMatch(pattern.asPredicate());
    }
This is {@link AttributeBasedRegisteredServiceAccessStrategyActivationCriteria}.

@author Misagh Moayyed
@since 6.5.0
core/cas-server-core-services-api/src/main/java/org/apereo/cas/services/AttributeBasedRegisteredServiceAccessStrategyActivationCriteria.java