[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-spring/src: main/java/net/shibboleth/idp/attribute/r...

noreply at shibboleth.net noreply at shibboleth.net
Sat Mar 28 13:11:39 EDT 2015


Author: rdw
Date: Sat Mar 28 13:11:39 2015
New Revision: 7455

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=7455&view=rev
Log:
IDP-665 Warn if an attribute definition contains sourceAttributeID if this is irrelevant and also if one isn't when it should be

Modified:
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/BaseAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/CryptoTransientIdAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/PrescopedAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/PrincipalAuthenticationMethodAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/PrincipalNameAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/RegexSplitAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/SAML1NameIdentifierAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/SAML2NameIDAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/ScopedAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/ScriptedAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/SimpleAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/TemplateAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/TransientIdAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/mapped/MappedAttributeDefinitionParser.java
    trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverTest.java
    trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/ad/SimpleAttributeParserTest.java
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/attribute-resolver.xml
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/sealer.xml

Modified: trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/BaseAttributeDefinitionParser.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/BaseAttributeDefinitionParser.java?rev=7455&r1=7454&r2=7455&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/BaseAttributeDefinitionParser.java (original)
+++ trunk/idp-attribute-resolver-spring/src/main/java/net/shibboleth/idp/attribute/resolver/spring/ad/BaseAttributeDefinitionParser.java Sat Mar 28 13:11:39 2015
@@ -58,6 +58,7 @@
     private final Logger log = LoggerFactory.getLogger(BaseAttributeDefinitionParser.class);
 
     /** {@inheritDoc} */
+    // CheckStyle: CyclomaticComplexity OFF
     @Override protected void doParse(@Nonnull final Element config, @Nonnull final ParserContext parserContext,
             @Nonnull final BeanDefinitionBuilder builder) {
         super.doParse(config, parserContext, builder);
@@ -86,14 +87,17 @@
             builder.addPropertyValue("dependencyOnly", dependencyOnly);
         }
 
-        final String sourceAttributeId;
         if (config.hasAttributeNS(null, "sourceAttributeID")) {
-            sourceAttributeId = config.getAttributeNodeNS(null, "sourceAttributeID").getValue();
-            log.debug("{} setting sourceAttributeId {}.", getLogPrefix(), sourceAttributeId);
-        } else {
-            sourceAttributeId = getDefinitionId();
+            final String sourceAttributeId = config.getAttributeNodeNS(null, "sourceAttributeID").getValue();
+            log.debug("{} setting sourceAttributeID {}.", getLogPrefix(), sourceAttributeId);
+            builder.addPropertyValue("sourceAttributeId", sourceAttributeId);
+            if (!needsAttributeSourceID()) {
+                log.warn("{} sourceAttributeID was specified but is meaningless.  Add {} as a <Dependency> instead.",
+                        getLogPrefix(), sourceAttributeId);
+            }
+        } else if (needsAttributeSourceID()) {

[... 369 lines stripped ...]


More information about the commits mailing list