* weisman491 <
weism...@gmail.com> [2014-11-13 16:19]:
> the reason I map to userPrincipalName and so on is the SP only looks
> for the oid and for specific ones. Anything not the exact oid they
> want gets skipped over.
You can call it what you want internally. I'm just saying that you're
needlessly confusing yourself by calling what is defined to be the
SAML2.0 URI name of the eduPersonPrincipalName attribute the
"userPrincipalName".
> <saml:Attribute Name="eduPersonScopedAffiliation"
> NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"><saml:AttributeValue
> xsi:type="xs:string">
uni.edu</saml:AttributeValue><saml:AttributeValue
> xsi:type="xs:string">
sub.uni.edu</saml:AttributeValue></saml:Attribute>
This is wrong. The XML-attribute 'Name' needs to be the URI for ePSA,
i.e. "urn:oid:1.3.6.1.4.1.5923.1.1.1.9", for one because the MACE-Dir
SAML specs defined it that way, but also because you're saying the
Name is a URI here (in the NameFormat XML-attribute), when clearly
"eduPersonScopedAffiliation" is not a valid URI.
The AttributeValue elements are OK.
> <saml:Attribute Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.1"
> NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"><saml:AttributeValue
> xsi:type="xs:string">member</saml:AttributeValue><saml:AttributeValue
> xsi:type="xs:string">student</saml:AttributeValue></saml:Attribute>
That is OK and your scoped affiliations should be sent just you're
already sending the unscoped ones.
> <saml:Attribute
> Name="urn:oid:0.9.2342.19200300.100.1.1"
> NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"><saml:AttributeValue
> xsi:type="xs:string">tsw003</saml:AttributeValue></saml:Attribute>
That's also OK, though sendung the userid/uid often doesn't make much
sense in federated deployments, i.e., where the SP is not from the
same organization as the IDP, since userid/uid is not defined to be
globally unique by itself.
> <saml:Attribute
> Name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6"
> NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"><saml:AttributeValue
> xsi:type="xs:string">
exa...@sub.uni.edu</saml:AttributeValue></saml:Attribute>
Your eduPersonPrincipalName (short ePPN; which is what
"urn:oid:1.3.6.1.4.1.5923.1.1.1.6" means) is also correct on the wire.
> <saml:Attribute
> Name="eduPersonPrincipalName"
> NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"><saml:AttributeValue
> xsi:type="xs:string">exa...@sub.uni.edu@
uni.edu</saml:AttributeValue><saml:AttributeValue
> xsi:type="xs:string">exa...@sub.uni.edu@
sub.uni.edu</saml:AttributeValue></saml:Attribute>
You already sent ePPN correctly above, now you're sending again
incorrectly. See the explanation above for the incorrect version of
your eduPersonScopedAffiliation ('Name' is wrong and matches neither
the spec nor the stated NameFormat).
And the values are wrong too, of course.
> Not sure why the highlighted happened, I guess that was from the
> mapping.
Seems you've managed confused yourself on several levels, you've added
a scope to an attribut that's already scoped.
> The names arn't getting changed to oid's anymore either. Should I move the
> priority of this up higher in the authproc for that to happen correctly,
> that way I can stick to friendlynames and convert:
> 30 => array('class' => 'core:AttributeMap', 'name2oid'),
>
> ),
Not sure that that means. I already told you to remove all the OIDs
from the authproc filter and only invoke the name2oid map after you've
created all the attributes to your liking.
> Then this is the warnings after it trys to get the metadata
> 2014-11-13 09:59:47 INFO Shibboleth.AttributeExtractor.XML [54]:
> skipping unmapped SAML 2.0 Attribute with Name:
> eduPersonScopedAffiliation
Yes, just what I said above. The name needs to be the OID-based URN
value that's defined for ePSA.
> 2014-11-13 09:59:47 DEBUG Shibboleth.AttributeDecoder.String [54]:
> decoding SimpleAttribute (unscoped-affiliation) from SAML 2
> Attribute (urn:oid:1.3.6.1.4.1.5923.1.1.1.1) with 2 value(s)
That went well, ilke I said above it would.
> 2014-11-13 09:59:47 DEBUG Shibboleth.AttributeDecoder.String [54]:
> decoding SimpleAttribute (uid) from SAML 2 Attribute
> (urn:oid:0.9.2342.19200300.100.1.1) with 1 value(s)
Same here.
> 2014-11-13 09:59:47 DEBUG Shibboleth.AttributeDecoder.Scoped [54]:
> decoding ScopedAttribute (eppn) from SAML 2 Attribute
> (urn:oid:1.3.6.1.4.1.5923.1.1.1.6) with 1 value(s)
And again.
> 2014-11-13 09:59:47 INFO
> Shibboleth.AttributeExtractor.XML [54]: skipping unmapped SAML 2.0
> Attribute with Name: eduPersonPrincipalName
Same mistake as for ePSA.
> 2014-11-13 09:59:47 DEBUG Shibboleth.AttributeFilter [54]: applying
> filtering rule(s) for attribute (uid) from (example)
> 2014-11-13 09:59:47 DEBUG Shibboleth.AttributeFilter [54]: applying
> filtering rule(s) for attribute (unscoped-affiliation) from (
> example)
These are ok.
> 2014-11-13 09:59:47 WARN Shibboleth.AttributeFilter [54]:
> no values left, removing attribute (eppn) from (example)
This one's gone.
All the info you might need is there for you, in that log from a
non-SimpleSAMLphp software.
-peter