<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<meta content="text/html; charset=UTF-8">
<style type="text/css" style="">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr">
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif">
<p>Thanks much Scott. This is what I arrived at that works:</p>
<p><br>
</p>
<p><br>
</p>
<p></p>
<div>    <resolver:AttributeDefinition xsi:type="ad:Simple" id="cn" sourceAttributeID="lcn"></div>
<div><span style="white-space:pre"></span>    <resolver:Dependency ref="lcn" /></div>
<div><span style="white-space:pre"></span><resolver:AttributeEncoder xsi:type="enc:SAML1String" name="urn:mace:dir:attribute-def:cn" /></div>
<div>                <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="urn:oid:2.5.4.3" friendlyName="cn" /></div>
<div>                            </resolver:AttributeDefinition></div>
<div><br>
</div>
<div><resolver:AttributeDefinition xsi:type="ad:Script" id="lcn" dependencyOnly="true"></div>
<div>        <resolver:Dependency ref="oud" /></div>
<div><span style="white-space:pre"></span><ad:Script></div>
<div>        <![CDATA[</div>
<div>                var value = cn.getValues().get(0);</div>
<div><span style="white-space:pre"></span>lcn.addValue(value.toLowerCase());</div>
<div>        ]]></div>
<div>        </ad:Script></div>
<div></resolver:AttributeDefinition></div>
<div><br>
</div>
<br>
<p></p>
<p>Is that the sort of approach you're referring to?</p>
<div id="x_Signature">
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif">
<p></p>
<div>--</div>
<div>Brandon McKean</div>
<div>IT / Systems</div>
<div>Linux Administrator</div>
<div>(540)568-4235</div>
<br>
<p></p>
</div>
</div>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> users <users-bounces@shibboleth.net> on behalf of Cantor, Scott <cantor.2@osu.edu><br>
<b>Sent:</b> Tuesday, September 26, 2017 2:59:43 PM<br>
<b>To:</b> Shib Users<br>
<b>Subject:</b> Re: Making Attribute Lowercase</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt;">
<div class="PlainText">On 9/26/17, 1:58 PM, "users on behalf of McKean, Brandon Scott - mckeanbs" <users-bounces@shibboleth.net on behalf of mckeanbs@jmu.edu> wrote:<br>
<br>
> But it doesn't work due to what I'm guessing is getValues not producing a string.<br>
<br>
You don't have to guess.<br>
<br>
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__wiki.shibboleth.net_confluence_display_IDP30_ScriptedAttributeDefinition&d=DwICAg&c=eLbWYnpnzycBCgmb7vCI4uqNEB9RSjOdn_5nBEmmeq0&r=iZ_ekq9_90q96juMacb0Sg&m=i9rvrkgsIF5RHt4uFahCVO6_OfJD-gXPZT1NP61YiKs&s=Bh7tozqN7r0s5IjL94fZWesrbZnukc1D_Ivou8bNqzg&e=">https://urldefense.proofpoint.com/v2/url?u=https-3A__wiki.shibboleth.net_confluence_display_IDP30_ScriptedAttributeDefinition&d=DwICAg&c=eLbWYnpnzycBCgmb7vCI4uqNEB9RSjOdn_5nBEmmeq0&r=iZ_ekq9_90q96juMacb0Sg&m=i9rvrkgsIF5RHt4uFahCVO6_OfJD-gXPZT1NP61YiKs&s=Bh7tozqN7r0s5IjL94fZWesrbZnukc1D_Ivou8bNqzg&e=</a>
<br>
<br>
See link to ScriptedIdPAttribute, whose javadoc documents getValues as Collection<Object> (and which notes it's there for simplification for scripts written for V2 that assume string values are just exposed as strings).<br>
<br>
Collection however is somewhat annoying to use because you can't index into it for simple cases but for iteration it's fine.<br>
<br>
ScriptedIdPAttribute.getNativeAttribute is simpler sometimes, but the values are still wrapped inside typed classes so it depends on the scenario.<br>
<br>
But fundamentally your script here isn't workable, you can't take an input attribute and start changing its values, that won't work. You need to layer a new one on top of the dependency.<br>
<br>
-- Scott<br>
<br>
<br>
-- <br>
To unsubscribe from this list send an email to users-unsubscribe@shibboleth.net<br>
</div>
</span></font>
</body>
</html>