* Jaime Perez Crespo <
jaime...@uninett.no> [2016-07-28 10:01]:
> NameIDs inside the Subject element are fine, because they are always
> parsed as XML.
Ah, OK, that's great then! That also means IDPs sending it according
to saml2int (that number will get higher with IDPv3 deployments taking
off, I'm expecting) will not cause any issues for deployed SPs.
> Actually, at least SimpleSAMLphp can perfectly generate two
> completely different NameIDs, one for the Subject element and one
> for the eduPersonTargetedID. I even realized a couple of days ago
> that that’s what we are doing in the Feide IdP. I’m uncertain
> whether the spec forbids that behaviour or not (I don’t think so),
> though I would assume any interop profiles to do that.
It's certainly legal and there's even a (fringe) use-case for that
specific scenario (transients in the Subject, persistent in
eduPersonTargetedID attribute), when the IDP wants/needs to provide a
persistent NameID to the SP but is not willing/able to *reverse*
that NameID from incoming messages (e.g. attribute queries) into a
locally meaningful identifier.
The main cause for that is generating persistent NameIDs dynamically
from (salting and) hashing some other attribute at the IDP, *without*
persisting the values into an RDBMS (together with a mapping to the
local subject identifier it was generated from). Now when an IDP
entity also announcing support for attribute queries (or SLO) is then
presented with that persistent (but not persisted) NameID it cannot
easily reverse that salted hash into the local subject identifier to
resolve attributes (or identify sessions to terminate, in case of SLO).
But that model shouldn't really be promoted (as persistent NameIDs
generate that way may not be so persistent after all, and with just an
algorithm you don't really have any tools at hand to "fix" the
occasional error, or revoke identifiers if needed) and so the whole
eduPersonTargetedID attribute should be deprecated by the community
for SAML2 usage.
I'm not convinced it's worth the effort myself, and this will probably
not be completed before people start moving off SAML, but the current
situation is bad enough (and saml2int clear enough) that doing it only
the SAML-intended way (Subject of the Assertion) seems the least worse
forward (rather than continuing with the mess).
> Just another thing we should do, on top of a huge queue where almost
> nobody is getting stuff out of :-)
ACK. Maybe some federation or organisation is willing to contribute
code, or finance someone to do that, to get some of that done.
(As an aside: The GEANT "Greenhouse" activity might help with that a
bit, be sure to have someone represent SSP there.)
-peter