IdP attribute filter strategy
Jeffrey Crawford
jeffreyc at ucsc.edu
Mon Jun 8 17:41:54 EDT 2015
Jeffrey <jeffreyc at ucsc.edu>
Both pilots and IT professionals require training and currency before
charging into clouds!
---------------------------------------
On Mon, Jun 8, 2015 at 2:21 PM, Cantor, Scott <cantor.2 at osu.edu> wrote:
> On 6/8/15, 4:59 PM, "users on behalf of Jeffrey Crawford" <
> users-bounces at shibboleth.net on behalf of jeffreyc at ucsc.edu> wrote:
>
> >I think the <MetadataFilter xsi:type="EntityAttributes">
> >
> > may be broken
>
> It's not broken. Trust me, it's not. You have this backwards. You're
> ascribing bugs in the code that is *consuming* what you're creating to the
> code that's creating it. The creation happens, the consuming code is not
> handling multiple copies of the Attribute. Some of the code does and some
> of it doesn't. The AttributeFilter code doesn't, which is the bug you're
> hitting.
Yes, you would know this better than me
>
> >Correct attributes are added as long as the <Attribute Name="xxx"
> doesn't already exist
>
> No. They are added regardless. There is no way for you to tell that
> though, because nothing would show it either way. You're observing a bug
> and then assuming the cause, but the cause is something else, that's all.
>
> >The behaviour I'm not expecting is in the MetadataFilter
> EntityAttributes type functionality.
>
> No, it's in the EntityAttribute-based AttributeFilter policy rules. That's
> where the bug is.
>
> >The attribute filter is working fine as is the relying party.
>
> No, it's not. The filter rule will work as long as the AttributeValues are
> all in one Attribute but not if they're separate. That doesn't mean the
> MetadataFilter isn't adding things, it means it's adding them in a way that
> triggers a bug later.
>
> >Then the metadata filter doesn't work (I verify by knowing my
> attribute-filter.xml works via other means and using the consent page to
> see if I'm trying to release AttributeC), however if the metadata did not
> contain <saml:Attribute Name="some-name"
> >to begin with, then the metadata filter does add the attribute because I
> can see it being released in the consent page. I'm just using entity
> attributes to define which saml attributes I want to release.
>
> You are incorrect about the attribute filter working. It does not work.
> That's the bug. If you want to observe that yourself, just forget the
> metadata filter for now, add the EntityAttribute extension content directly
> into a metadata file, but split the AttributeValues across two duplicate
> Attributes. That's the same thing the MetadataFilter is producing now, and
> it will trigger the same bug. Your rule acting on the second value won't
> fire.
>
I'll leave you with this. This is what I've been doing with our locally
managed metadata. This does work as I expect when setting up some basic
attributes commonName, givenName, and surname
---------------------------------------------------
attribute-filter.xml
<afp:AttributeFilterPolicy
id="commonName">
<afp:PolicyRequirementRule
xsi:type="saml:EntityAttributeExactMatch"
attributeName="urn:mace:ucsc.edu:metadata:attr:profile"
attributeValue="urn:mace:ucsc.edu:
metadata:attr:profile:filter:common-name"/>
<afp:AttributeRule
attributeID="commonName">
<afp:PermitValueRule
xsi:type="basic:ANY"/>
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
<afp:AttributeFilterPolicy
id="surname">
<afp:PolicyRequirementRule
xsi:type="saml:EntityAttributeExactMatch"
attributeName="urn:mace:ucsc.edu:metadata:attr:profile"
attributeValue="urn:mace:ucsc.edu:
metadata:attr:profile:filter:surname"/>
<afp:AttributeRule
attributeID="surname">
<afp:PermitValueRule
xsi:type="basic:ANY"/>
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
<afp:AttributeFilterPolicy
id="givenName">
<afp:PolicyRequirementRule
xsi:type="saml:EntityAttributeExactMatch"
attributeName="urn:mace:ucsc.edu:metadata:attr:profile"
attributeValue="urn:mace:ucsc.edu:
metadata:attr:profile:filter:given-name"/>
<afp:AttributeRule
attributeID="givenName">
<afp:PermitValueRule
xsi:type="basic:ANY"/>
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
---------------------------------------------------------------------
local metadata:
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
ID="_6adb70bdbbf7e14ab9d9231e70b7afa4cdd969d5" entityID="
https://idm-test-sp.ucsc.edu/shibboleth">
...
<md:Extensions xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi">
...
<mdrpi:RegistrationInfo registrationAuthority="http://ucsc.edu"/>
<mdattr:EntityAttributes
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
<saml:Attribute Name="urn:mace:ucsc.edu:metadata:attr:profile"
NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml:AttributeValue>urn:mace:ucsc.edu:
metadata:attr:profile:filter:common-name</saml:AttributeValue>
<saml:AttributeValue>urn:mace:ucsc.edu:
metadata:attr:profile:filter:given-name</saml:AttributeValue>
<saml:AttributeValue>urn:mace:ucsc.edu:
metadata:attr:profile:filter:surname</saml:AttributeValue>
</saml:Attribute>
</mdattr:EntityAttributes>
</md:Extensions>
...
</md:EntityDescriptor>
> -- Scott
>
> --
> To unsubscribe from this list send an email to
> users-unsubscribe at shibboleth.net
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://shibboleth.net/pipermail/users/attachments/20150608/4c961845/attachment.html>
More information about the users
mailing list