[java-identity-provider COMMIT] in /trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml: attribute/resolver/imp...
noreply at shibboleth.net
noreply at shibboleth.net
Sun Jan 18 14:47:42 EST 2015
Author: scantor
Date: Sun Jan 18 14:47:42 2015
New Revision: 7259
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=7259&view=rev
Log:
IDP-573 - Match V2 behavior by checking for all-whitespace, but don't trim source ID.
Modified:
trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/AbstractPersistentIdDataConnector.java
trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/nameid/impl/PersistentSAML2NameIDGenerator.java
Modified: trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/AbstractPersistentIdDataConnector.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/AbstractPersistentIdDataConnector.java?rev=7259&r1=7258&r2=7259&view=diff
==============================================================================
--- trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/AbstractPersistentIdDataConnector.java (original)
+++ trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/attribute/resolver/impl/AbstractPersistentIdDataConnector.java Sun Jan 18 14:47:42 2015
@@ -143,15 +143,20 @@
final String val;
if (attributeValue instanceof StringAttributeValue) {
- val = StringSupport.trimOrNull(((StringAttributeValue) attributeValue).getValue());
+ if (StringSupport.trimOrNull((String) attributeValue.getValue()) == null) {
+ log.warn("{} Source attribute {} for connector {} was all-whitespace", getLogPrefix(),
+ getSourceAttributeId(), getId());
+ return null;
+ }
+ val = (String) attributeValue.getValue();
} else {
- log.warn("{} Source attribute {} for connector {} was not a string type. Not used", getLogPrefix(),
- getSourceAttributeId(), getId());
+ log.warn("{} Source attribute {} for connector {} was of an unsupported type: {}", getLogPrefix(),
+ getSourceAttributeId(), getId(), attributeValue.getClass().getName());
return null;
}
if (val == null) {
- log.warn("{} Attribute {} for connector resolved as empty or null. Not used", getLogPrefix(),
+ log.warn("{} Attribute value {} for connector {} resolved as empty or null", getLogPrefix(),
getSourceAttributeId(), getId());
}
return val;
Modified: trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/nameid/impl/PersistentSAML2NameIDGenerator.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/nameid/impl/PersistentSAML2NameIDGenerator.java?rev=7259&r1=7258&r2=7259&view=diff
==============================================================================
--- trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/nameid/impl/PersistentSAML2NameIDGenerator.java (original)
+++ trunk/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/nameid/impl/PersistentSAML2NameIDGenerator.java Sun Jan 18 14:47:42 2015
@@ -201,14 +201,14 @@
((ScopedStringAttributeValue) value).getValue() + '@'
+ ((ScopedStringAttributeValue) value).getScope());
} else if (value instanceof StringAttributeValue) {
- final String strVal = StringSupport.trimOrNull((String) value.getValue());
- if (strVal == null) {
+ // Check for all whitespace, but don't trim the value used.
+ if (StringSupport.trimOrNull((String) value.getValue()) == null) {
log.debug("Skipping all-whitespace string value");
continue;
}
log.debug("Generating NameID from String-valued attribute {}", sourceId);
return persistentIdStrategy.generate(responderId, relyingPartyId, subjectCtx.getPrincipalName(),
- strVal);
+ (String) value.getValue());
} else {
log.info("Unrecognized attribute value type: {}", value.getClass().getName());
}
More information about the commits
mailing list