Fixed
Details
Details
Assignee
Rod Widdowson
Rod WiddowsonReporter
Rod Widdowson
Rod WiddowsonOriginal estimate
7h
Components
Fix versions
Affects versions
Created September 7, 2015 at 10:11 AM
Updated October 10, 2018 at 2:01 PM
Resolved October 3, 2015 at 10:41 AM
As discussed in the dev meeting 5/Sep.
consider a filter section
<afp:AttributeRule attributeID="email" xmlns:afp="urn:mace:shibboleth:2.0:afp" xmlns:basic="urn:mace:shibboleth:2.0:afp:mf:basic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mace:shibboleth:2.0:afp http://shibboleth.net/schema/idp/shibboleth-afp.xsd urn:mace:shibboleth:2.0:afp:mf:basic http://shibboleth.net/schema/idp/shibboleth-afp-mf-basic.xsd"> <afp:PermitValueRule xsi:type="basic:AND"> <basic:Rule xsi:type="basic:NOT"> <basic:Rule xsi:type="basic:ANY" /> </basic:Rule> <basic:Rule xsi:type="basic:ANY" /> </afp:PermitValueRule> </afp:AttributeRule>
It would be considerably nice if we could say
<AttributeRule attributeID="email" xmlns="urn:mace:shibboleth:2.0:afp" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mace:shibboleth:2.0:afp http://shibboleth.net/schema/idp/shibboleth-afp.xsd"> <PermitValueRule type="AND"> <Rule type="NOT"> <Rule type="ANY" /> </Rule> <Rule type="ANY" /> </PermitValueRule> </AttributeRule>
This consists of three steps
remove saml: and basic:
include (cut & paste) the saml: and basic: schemata into the afp: one.
Extend the NameSpaceProvider to look for afp:whatever and basic:whatever
Modify some of the parsers to look for afs:thing as well as basic:thing
remove xsi:type
modify the schema to have afp:type
modify our basic parser to handle XYZ:type as well as xsi:type
Document at the appropriate time (close to V3.2 release)
Deprecate the old syntax with a warning
Status
I have protoyped the first and it will be pretty easy
I have not yet looked at the second but I don't think that it will be hard (potentially modulo a new method in the base parser to get the secondary (XYZ: above) namespace)
The last only requires a decision as to whether to warn
once per name space encountered (per load)
once per Type/Element encountered (per load)
once per load.
Input on the last is solicited