[java-identity-provider] branch master updated: IDP-1456 - Apply attribute filtering code to inbound attributes
Scott Cantor
cantor.2 at osu.edu
Thu May 30 20:18:20 EDT 2019
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch master
in repository java-identity-provider.
View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=7efb10269e9c5b9f03da19c8e4d74afde712b6b1
The following commit(s) were added to refs/heads/master by this push:
new 7efb102 IDP-1456 - Apply attribute filtering code to inbound attributes
7efb102 is described below
commit 7efb10269e9c5b9f03da19c8e4d74afde712b6b1
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Thu May 30 20:18:06 2019 -0400
IDP-1456 - Apply attribute filtering code to inbound attributes
https://issues.shibboleth.net/jira/browse/IDP-1456
Downgrade some warnings and FAIL results for "expected" states.
---
.../attribute/filter/impl/AttributeFilterImpl.java | 34 +++++++------------
.../impl/AttributeIssuerPolicyRule.java | 4 +--
.../impl/AttributeIssuerRegexpPolicyRule.java | 4 +--
.../impl/AttributeRequesterPolicyRule.java | 4 +--
.../impl/AttributeRequesterRegexpPolicyRule.java | 4 +--
.../impl/PrincipalNamePolicyRule.java | 4 +--
.../impl/PrincipalNameRegexpPolicyRule.java | 4 +--
.../impl/AbstractEntityAttributePolicyRule.java | 2 +-
.../AttributeRequesterInEntityGroupPolicyRule.java | 30 +++++++++++++----
...ributeRequesterNameIDFormatExactPolicyRule.java | 38 ++++++++++++----------
.../impl/AttributeIssuerPolicyRuleTest.java | 4 +--
.../impl/AttributeIssuerRegexpPolicyRuleTest.java | 4 +--
.../impl/AttributeRequesterPolicyRuleTest.java | 4 +--
.../AttributeRequesterRegexpPolicyRuleTest.java | 4 +--
.../impl/PrincipalNamePolicyRuleTest.java | 4 +--
.../impl/PrincipalNameRegexpPolicyRuleTest.java | 4 +--
...ributeRequesterInEntityGroupPolicyRuleTest.java | 4 +--
17 files changed, 83 insertions(+), 73 deletions(-)
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
index 0922d2f..49e48d3 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/impl/AttributeFilterImpl.java
@@ -34,7 +34,6 @@ import net.shibboleth.idp.attribute.filter.AttributeFilterException;
import net.shibboleth.idp.attribute.filter.AttributeFilterPolicy;
import net.shibboleth.idp.attribute.filter.context.AttributeFilterContext;
import net.shibboleth.idp.attribute.filter.context.AttributeFilterWorkContext;
-import net.shibboleth.idp.profile.context.RelyingPartyContext;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NullableElements;
@@ -44,9 +43,9 @@ import net.shibboleth.utilities.java.support.component.ComponentInitializationEx
import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
-import org.opensaml.messaging.context.navigate.ParentContextLookup;
+import org.opensaml.messaging.context.navigate.ChildContextLookup;
+import org.opensaml.messaging.context.navigate.RootContextLookup;
import org.opensaml.profile.context.MetricContext;
-import org.opensaml.profile.context.ProfileRequestContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -67,8 +66,8 @@ public class AttributeFilterImpl extends AbstractServiceableComponent<AttributeF
/** Log prefix. */
private String logPrefix;
- /** Strategy to get the {@link ProfileRequestContext}. */
- @Nonnull private Function<AttributeFilterContext,ProfileRequestContext> profileContextStrategy;
+ /** Strategy to get the {@link MetricContext} for timing. */
+ @Nonnull private Function<AttributeFilterContext,MetricContext> metricContextLookupStrategy;
/**
* Constructor.
@@ -84,10 +83,7 @@ public class AttributeFilterImpl extends AbstractServiceableComponent<AttributeF
CollectionSupport.addIf(checkedPolicies, policies, Predicates.notNull());
filterPolicies = ImmutableList.copyOf(Iterables.filter(checkedPolicies, Predicates.notNull()));
- // Defaults to ProfileRequestContext -> RelyingPartyContext -> AttributeFilterContext.
- profileContextStrategy =
- new ParentContextLookup<RelyingPartyContext, ProfileRequestContext>().compose(
- new ParentContextLookup<AttributeFilterContext, RelyingPartyContext>());
+ metricContextLookupStrategy = new ChildContextLookup<>(MetricContext.class).compose(new RootContextLookup<>());
}
/**
@@ -227,13 +223,10 @@ public class AttributeFilterImpl extends AbstractServiceableComponent<AttributeF
* @return true iff the {@link #stopTimer(AttributeFilterContext)} method needs to be called
*/
private boolean startTimer(@Nonnull final AttributeFilterContext filterContext) {
- final ProfileRequestContext prc = profileContextStrategy.apply(filterContext);
- if (prc != null) {
- final MetricContext timerCtx = prc.getSubcontext(MetricContext.class);
- if (timerCtx != null) {
- timerCtx.start(getId());
- return true;
- }
+ final MetricContext timerCtx = metricContextLookupStrategy.apply(filterContext);
+ if (timerCtx != null) {
+ timerCtx.start(getId());
+ return true;
}
return false;
}
@@ -244,12 +237,9 @@ public class AttributeFilterImpl extends AbstractServiceableComponent<AttributeF
* @param filterContext attribute filtering context
*/
private void stopTimer(@Nonnull final AttributeFilterContext filterContext) {
- final ProfileRequestContext prc = profileContextStrategy.apply(filterContext);
- if (prc != null) {
- final MetricContext timerCtx = prc.getSubcontext(MetricContext.class);
- if (timerCtx != null) {
- timerCtx.stop(getId());
- }
+ final MetricContext timerCtx = metricContextLookupStrategy.apply(filterContext);
+ if (timerCtx != null) {
+ timerCtx.stop(getId());
}
}
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
index 3ff3f16..f612f56 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRule.java
@@ -48,8 +48,8 @@ public class AttributeIssuerPolicyRule extends AbstractStringPolicyRule {
final String issuer = filterContext.getAttributeIssuerID();
if (null == issuer) {
- log.warn("{} No attribute issuer found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No attribute issuer found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found attribute issuer: {}", getLogPrefix(), issuer);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
index 1cb122a..045d83c 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRule.java
@@ -48,8 +48,8 @@ public class AttributeIssuerRegexpPolicyRule extends AbstractRegexpPolicyRule {
final String issuer = filterContext.getAttributeIssuerID();
if (null == issuer) {
- log.warn("{} No attribute issuer found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No attribute issuer found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found attribute issuer: {}", getLogPrefix(), issuer);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
index 0f380ec..c9596c5 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRule.java
@@ -48,8 +48,8 @@ public class AttributeRequesterPolicyRule extends AbstractStringPolicyRule {
final String requester = filterContext.getAttributeRecipientID();
if (null == requester) {
- log.warn("{} No attribute requester found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No attribute requester found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found attribute requester: {}", getLogPrefix(), requester);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
index a0bccf6..ecde2cd 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRule.java
@@ -48,8 +48,8 @@ public class AttributeRequesterRegexpPolicyRule extends AbstractRegexpPolicyRule
final String requester = filterContext.getAttributeRecipientID();
if (null == requester) {
- log.warn("{} No attribute requester found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No attribute requester found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found attribute requester: {}", getLogPrefix(), requester);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
index c16f211..7fe744a 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRule.java
@@ -49,8 +49,8 @@ public class PrincipalNamePolicyRule extends AbstractStringPolicyRule {
final String principal = filterContext.getPrincipal();
if (null == principal) {
- log.warn("{} No principal found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No principal found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found principal: {}", getLogPrefix(), principal);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
index aacd43a..721560f 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRule.java
@@ -46,8 +46,8 @@ public class PrincipalNameRegexpPolicyRule extends AbstractRegexpPolicyRule {
final String principal = filterContext.getPrincipal();
if (null == principal) {
- log.warn("{} No principal found for comparison", getLogPrefix());
- return Tristate.FAIL;
+ log.debug("{} No principal found for comparison", getLogPrefix());
+ return Tristate.FALSE;
}
log.debug("{} Found principal: {}", getLogPrefix(), principal);
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
index f5e7eb7..a27dc33 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AbstractEntityAttributePolicyRule.java
@@ -173,7 +173,7 @@ public abstract class AbstractEntityAttributePolicyRule extends AbstractPolicyRu
final EntityDescriptor entityDescriptor = getEntityMetadata(filterContext);
if (entityDescriptor == null) {
- log.info("{} No metadata available for entity, returning FALSE", getLogPrefix());
+ log.debug("{} No metadata available for entity, returning FALSE", getLogPrefix());
return Tristate.FALSE;
}
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRule.java
index d366bab..320c90d 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRule.java
@@ -25,6 +25,9 @@ import javax.annotation.Nullable;
import net.shibboleth.idp.attribute.filter.context.AttributeFilterContext;
import net.shibboleth.idp.attribute.filter.policyrule.impl.AbstractPolicyRule;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
+import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -45,7 +48,7 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
@Nonnull private final Logger log = LoggerFactory.getLogger(AttributeRequesterInEntityGroupPolicyRule.class);
/** The entity group to match against. */
- @Nullable private String entityGroup;
+ @NonnullAfterInit @NotEmpty private String entityGroup;
/** Whether to search metadata for AffiliationDescriptor membership. */
private boolean checkAffiliations;
@@ -55,7 +58,7 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
*
* @return entity group to match against
*/
- @Nullable public String getEntityGroup() {
+ @NonnullAfterInit @NotEmpty public String getEntityGroup() {
return entityGroup;
}
@@ -65,6 +68,8 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
* @param group entity group to match against
*/
public void setEntityGroup(@Nullable final String group) {
+ ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+
entityGroup = StringSupport.trimOrNull(group);
}
@@ -80,9 +85,21 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
* @since 3.4.0
*/
public void setCheckAffiliations(final boolean flag) {
+ ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+
checkAffiliations = flag;
}
+ /** {@inheritDoc} */
+ @Override
+ protected void doInitialize() throws ComponentInitializationException {
+ super.doInitialize();
+
+ if (entityGroup == null) {
+ throw new ComponentInitializationException("entityGroup cannot be null");
+ }
+ }
+
/**
* Gets the entity descriptor for the entity to check.
*
@@ -94,7 +111,7 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
final SAMLMetadataContext metadataContext = filterContext.getRequesterMetadataContext();
if (null == metadataContext) {
- log.warn("{} Could not locate SP metadata context", getLogPrefix());
+ log.debug("{} No requester metadata found", getLogPrefix());
return null;
}
return metadataContext.getEntityDescriptor();
@@ -110,12 +127,12 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
*/
@Override
@Nonnull public Tristate matches(@Nonnull final AttributeFilterContext input) {
+ ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
Constraint.isNotNull(input, "Context must be supplied");
- ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
- if (entityGroup == null) {
- log.warn("{} No entity group specified, unable to check if entity is in group", getLogPrefix());
+ final EntityDescriptor entity = getEntityMetadata(input);
+ if (entity == null) {
return Tristate.FALSE;
}
@@ -123,7 +140,6 @@ public class AttributeRequesterInEntityGroupPolicyRule extends AbstractPolicyRul
new EntityGroupNamePredicate(Collections.singleton(entityGroup),
checkAffiliations ? input.getMetadataResolver() : null);
- final EntityDescriptor entity = getEntityMetadata(input);
return predicate.test(entity) ? Tristate.TRUE : Tristate.FALSE;
}
diff --git a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterNameIDFormatExactPolicyRule.java b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterNameIDFormatExactPolicyRule.java
index 231e4d9..67bfea5 100644
--- a/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterNameIDFormatExactPolicyRule.java
+++ b/idp-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterNameIDFormatExactPolicyRule.java
@@ -25,6 +25,7 @@ import javax.annotation.Nullable;
import net.shibboleth.idp.attribute.filter.context.AttributeFilterContext;
import net.shibboleth.idp.attribute.filter.policyrule.impl.AbstractPolicyRule;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
+import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import net.shibboleth.utilities.java.support.component.ComponentSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -40,17 +41,17 @@ import org.slf4j.LoggerFactory;
public class AttributeRequesterNameIDFormatExactPolicyRule extends AbstractPolicyRule {
/** Class logger. */
- private final Logger log = LoggerFactory.getLogger(AttributeRequesterNameIDFormatExactPolicyRule.class);
+ @Nonnull private final Logger log = LoggerFactory.getLogger(AttributeRequesterNameIDFormatExactPolicyRule.class);
/** The NameID format that needs to be supported by the entity. */
- private String nameIdFormat;
+ @NonnullAfterInit @NotEmpty private String nameIdFormat;
/**
* Get the NameID format that needs to be supported by the entity.
*
* @return NameID format that needs to be supported by the entity
*/
- @NonnullAfterInit public String getNameIdFormat() {
+ @NonnullAfterInit @NotEmpty public String getNameIdFormat() {
return nameIdFormat;
}
@@ -59,10 +60,22 @@ public class AttributeRequesterNameIDFormatExactPolicyRule extends AbstractPolic
*
* @param format NameID format that needs to be supported by the entity
*/
- public void setNameIdFormat(final String format) {
+ public void setNameIdFormat(@Nullable final String format) {
+ ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+
nameIdFormat = StringSupport.trimOrNull(format);
}
+ /** {@inheritDoc} */
+ @Override
+ protected void doInitialize() throws ComponentInitializationException {
+ super.doInitialize();
+
+ if (null == nameIdFormat) {
+ throw new ComponentInitializationException(getLogPrefix() + " No NameID format specified");
+ }
+ }
+
/**
* Gets the SSO role descriptor for the entity to be checked.
*
@@ -70,16 +83,16 @@ public class AttributeRequesterNameIDFormatExactPolicyRule extends AbstractPolic
*
* @return the SSO role descriptor of the entity or null if the entity does not have such a descriptor
*/
- @Nullable protected SSODescriptor getEntitySSODescriptor(final AttributeFilterContext filterContext) {
+ @Nullable protected SSODescriptor getEntitySSODescriptor(@Nonnull final AttributeFilterContext filterContext) {
final SAMLMetadataContext metadataContext = filterContext.getRequesterMetadataContext();
if (null == metadataContext) {
- log.warn("{} Could not locate SP metadata context", getLogPrefix());
+ log.debug("{} No requester metadata context found", getLogPrefix());
return null;
}
final RoleDescriptor role = metadataContext.getRoleDescriptor();
if (null == role) {
- log.warn("{} Could not locate RoleDescriptor in SP metadata", getLogPrefix());
+ log.warn("{} Could not locate RoleDescriptor in requester metadata context", getLogPrefix());
return null;
}
@@ -101,8 +114,8 @@ public class AttributeRequesterNameIDFormatExactPolicyRule extends AbstractPolic
*/
@Override
public Tristate matches(@Nonnull final AttributeFilterContext filterContext) {
-
ComponentSupport.ifNotInitializedThrowUninitializedComponentException(this);
+
final SSODescriptor role = getEntitySSODescriptor(filterContext);
if (role == null) {
// logged in above
@@ -125,14 +138,5 @@ public class AttributeRequesterNameIDFormatExactPolicyRule extends AbstractPolic
log.debug("{} Entity does not support the NameID format '{}'", getLogPrefix(), nameIdFormat);
return Tristate.FALSE;
}
-
- /** {@inheritDoc} */
- @Override
- protected void doInitialize() throws ComponentInitializationException {
- super.doInitialize();
- if (null == nameIdFormat) {
- throw new ComponentInitializationException(getLogPrefix() + " No NameID format specified");
- }
- }
}
\ No newline at end of file
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRuleTest.java
index e81a94b..f4dc4bc 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerPolicyRuleTest.java
@@ -59,7 +59,7 @@ public class AttributeIssuerPolicyRuleTest {
@Test public void testUnpopulated()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);
}
@SuppressWarnings("deprecation")
@@ -71,7 +71,7 @@ public class AttributeIssuerPolicyRuleTest {
@Test public void testNoIssuer()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);
}
@Test public void testCaseSensitive() throws ComponentInitializationException {
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRuleTest.java
index d12a903..9f1d073 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeIssuerRegexpPolicyRuleTest.java
@@ -71,12 +71,12 @@ public class AttributeIssuerRegexpPolicyRuleTest {
@Test public void testUnpopulated()
throws ComponentInitializationException {
- assertEquals(getMatcher(true).matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);;
+ assertEquals(getMatcher(true).matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);;
}
@Test public void testNoIssuer()
throws ComponentInitializationException{
- assertEquals(getMatcher(false).matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);;
+ assertEquals(getMatcher(false).matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);;
}
}
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRuleTest.java
index 3b548d3..8a8c5bf 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterPolicyRuleTest.java
@@ -58,12 +58,12 @@ public class AttributeRequesterPolicyRuleTest {
@Test public void testUnpopulated()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);
}
@Test public void testNoRequester()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);
}
@Test public void testCaseSensitive() throws ComponentInitializationException {
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRuleTest.java
index ea94787..a1ed3bc 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/AttributeRequesterRegexpPolicyRuleTest.java
@@ -59,12 +59,12 @@ public class AttributeRequesterRegexpPolicyRuleTest {
@Test public void testUnpopulated()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);
}
@Test public void testNoRequester()
throws ComponentInitializationException {
- assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);
+ assertEquals(getMatcher().matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);
}
}
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRuleTest.java
index 8c4319f..1cfebe6 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNamePolicyRuleTest.java
@@ -54,12 +54,12 @@ public class PrincipalNamePolicyRuleTest {
@Test public void testUnpopulated() throws ComponentInitializationException {
final PrincipalNamePolicyRule matcher = getMatcher(true);
- assertEquals(matcher.matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);
+ assertEquals(matcher.matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);
}
@Test public void testNoPrincipal() throws ComponentInitializationException {
final PrincipalNamePolicyRule matcher = getMatcher(true);
- assertEquals(matcher.matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);
+ assertEquals(matcher.matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);
}
@Test public void testCaseSensitive() throws ComponentInitializationException {
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRuleTest.java
index cefb6d6..85eb32e 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/filtercontext/impl/PrincipalNameRegexpPolicyRuleTest.java
@@ -60,12 +60,12 @@ public class PrincipalNameRegexpPolicyRuleTest {
@Test public void testNoPrincipal() throws ComponentInitializationException {
final PrincipalNameRegexpPolicyRule matcher = getMatcher();
- assertEquals(matcher.matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FAIL);
+ assertEquals(matcher.matches(DataSources.populatedFilterContext(null, null, null)), Tristate.FALSE);
}
@Test public void testUnpopulated() throws ComponentInitializationException {
final PrincipalNameRegexpPolicyRule matcher = getMatcher();
- assertEquals(matcher.matches(DataSources.unPopulatedFilterContext()), Tristate.FAIL);
+ assertEquals(matcher.matches(DataSources.unPopulatedFilterContext()), Tristate.FALSE);
}
}
diff --git a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRuleTest.java b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRuleTest.java
index 887b93d..7281ee9 100644
--- a/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRuleTest.java
+++ b/idp-attribute-filter-impl/src/test/java/net/shibboleth/idp/attribute/filter/policyrule/saml/impl/AttributeRequesterInEntityGroupPolicyRuleTest.java
@@ -52,10 +52,10 @@ public class AttributeRequesterInEntityGroupPolicyRuleTest extends BaseMetadataT
assertEquals(getMatcher("http://shibboleth.net").getEntityGroup(), "http://shibboleth.net");
}
- @Test public void noGroup() throws ComponentInitializationException {
+ @Test(expectedExceptions=ComponentInitializationException.class)
+ public void noGroup() throws ComponentInitializationException {
AttributeRequesterInEntityGroupPolicyRule matcher = new AttributeRequesterInEntityGroupPolicyRule();
matcher.setId("matcher");
matcher.initialize();
- assertEquals(matcher.matches(reqMetadataContext(null, null)), Tristate.FALSE);
}
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list