<div dir="ltr"><div>Example --- when DisplayName DisplayDescrption added to an attribute in attribute-resolver.xml --- the attribute subsequently does not appear in attribute-release.vm.<br><br><resolver:AttributeDefinition id="uid" xsi:type="Simple" xmlns="urn:mace:shibboleth:2.0:resolver:ad" sourceAttributeID="loginName"><br>               <resolver:Dependency ref="myLDP" /><br>               <resolver:DisplayName xml:lang="en">Foo</resolver:DisplayName><br>            <resolver:DisplayDescription xml:lang="en">BAR</resolver:DisplayDescription><br>            <resolver:AttributeEncoder xsi:type="SAML2String" <br>                                 xmlns="urn:mace:shibboleth:2.0:attribute:encoder" <br>                                 name="urn:oid:0.9.2342.19200300.100.1.1" <br>                                    friendlyName="uid" /><br>        </resolver:AttributeDefinition><br><br></div>In 'attribute-release.vm' --- which is the function which triggers the display of DisplayName & DisplayDescription above......<br><br>## attributeReleaseContext - context holding consentable attributes<br>## attributeReleaseFlowDescriptor - attribute consent flow descriptor<br>## attributeDisplayNameFunction - function to display attribute name<br>## consentContext - context representing the state of a consent flow<br>## encoder - HTMLEncoder class<br>## flowExecutionKey - SWF execution key (this is built into the flowExecutionUrl)<br>## flowExecutionUrl - form action location<br>## flowRequestContext - Spring Web Flow RequestContext<br>## profileRequestContext - OpenSAML profile request context<br>## request - HttpServletRequest<br>## response - HttpServletResponse<br>## rpUIContext - context with SP UI information from the metadata<br>## environment - Spring Environment object for property resolution<br>#set ($serviceName = $rpUIContext.serviceName)<br>#set ($serviceDescription = $rpUIContext.serviceDescription)<br>#set ($informationURL = $rpUIContext.informationURL)<br>#set ($privacyStatementURL = $rpUIContext.privacyStatementURL)<br>#set ($rpOrganizationLogo = $rpUIContext.getLogo())<br>#set ($rpOrganizationName = $rpUIContext.organizationName)<br>#set ($replaceDollarWithNewline = true)<br><br>                   <tbody><br>                            #foreach ($attribute in $attributeReleaseContext.getConsentableAttributes().values())<br>                                <tr><br>                                    <td>$encoder.encodeForHTML($attributeDisplayNameFunction.apply($attribute))</td><br>                                    <td><br>                                        #foreach ($value in $attribute.values)<br>                                            #if ($replaceDollarWithNewline)<br>                                                #set ($encodedValue = $encoder.encodeForHTML($value.getDisplayValue()).replaceAll($encoder.encodeForHTML("$"),"<br>"))<br>                                            #else<br>                                                #set ($encodedValue = $encoder.encodeForHTML($value.getDisplayValue()))<br>                                            #end<br>                                            #if ($attributeReleaseFlowDescriptor.perAttributeConsentEnabled)<br>                                                <label for="$<a href="http://attribute.id">attribute.id</a>">$encodedValue</label><br>                                            #else<br>                                                $encodedValue<br>                                            #end<br>                                            <br><br>                                        #end<br>                                    </td><br><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 2 August 2017 at 10:37, Joshua Brodie <span dir="ltr"><<a href="mailto:josbrodie@gmail.com" target="_blank">josbrodie@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Thank you.....very good to have this.</div><div><br></div>Is there a trigger in idp.properties -- or elsewhere -- to enable the human readable names to appear?<div><br></div><div>We are using 3.3.1 and added the DisplayName & DisplayDescription (english only) -- after doing so the attribute itself also does not show up on the attribute consent page.</div><div><br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On 28 July 2017 at 04:31, Daniel Lutz <span dir="ltr"><<a href="mailto:daniel.lutz@switch.ch" target="_blank">daniel.lutz@switch.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Joshua Brodie [28.07.17 05:18]:<br>
<span>> We have had it running for over a year -- but have been getting feedback that the attribute names are too cryptic: cn,<br>
> eduPersonEntitlement etc<br>
><br>
> We have a link where users can bounced away to read what the attribute names signify but the masses are still not happy.<br>
><br>
> Is there any other potential to map the attribute names top something more non-techie friendly -- without too much<br>
> development?<br>
<br>
</span>Note that uApprove is for IdP V2 and is not supported anymore.<br>
IdP V3 has built-in support for user consent.<br>
<br>
For both, V2 and V3, you can configure human readable names per attribute in the AttributeResolver configuration.<br>
You need to add <DisplayName> and <DisplayDescription> elements to each <AttributeDefinition>.<br>
<br>
In the uApprove manual [1], this is documented at "Customizations / Attribute Names and Descriptions".<br>
The uApprove distribution contains an example attributer-resolver.xml file.<br>
<br>
If you use IdP V3, please refer to the documentation at [2] and [3].<br>
<br>
You can find examples for various attributes on the following page:<br>
<br>
  <a href="https://wiki.shibboleth.net/confluence/display/IDP30/Human+Readable+Attribute+Names" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/co<wbr>nfluence/display/IDP30/Human+<wbr>Readable+Attribute+Names</a><br>
<br>
If you need the names in English only, you just need those <DisplayName> and <DisplayDescription><br>
elements specifying 'xml:lang="en"'.<br>
<br>
- Daniel<br>
<br>
<br>
<br>
[1] <a href="https://www.switch.ch/aai/downloads/uApprove-manual/" rel="noreferrer" target="_blank">https://www.switch.ch/aai/down<wbr>loads/uApprove-manual/</a><br>
[2] <a href="https://wiki.shibboleth.net/confluence/display/IDP30/ConsentConfiguration" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/co<wbr>nfluence/display/IDP30/Consent<wbr>Configuration</a><br>
[3] <a href="https://wiki.shibboleth.net/confluence/display/IDP30/AttributeDefinitionConfiguration" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/co<wbr>nfluence/display/IDP30/Attribu<wbr>teDefinitionConfiguration</a><br>
<span class="m_2010255547385853267HOEnZb"><font color="#888888">--<br>
To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net" target="_blank">users-unsubscribe@shibboleth.n<wbr>et</a><br>
</font></span></blockquote></div><br></div>
</div></div></blockquote></div><br></div>