After many weeks of working on this in between my other duties I was finally 
able to resolve the issue I had while retrieving the attributes I needed in the 
format I needed from the backend server.

Using the example I got from William and Ray I came up with:

…
"attributeReleasePolicy": {
     "@class": 
"org.apereo.cas.oidc.claims.OidcProfileScopeAttributeReleasePolicy”,
     "claimMappings" : {
     "@class" : "java.util.TreeMap”,
     "name" : "displayName”,
     "groups" : ‘''
      groovy {
          def rawAttributes = attributes['memberOf’]
          def groups = []
          for ( cn in rawAttributes ){
               def group = (cn =~ /(?i)^cn=([^,]+),/)
               if ( group.find() ){
                   groups.add( group.group(1) )
               }
          }
          return groups
      }
      '’',
      "email" : “mail"
    }
}
…

I know it is verbose but this way the next person will be able to understand it 
right away.

Thank you Ray and William for your help.  Get in touch and I will send you some 
coffee or something.

Dan.



> On Nov 12, 2024, at 22:26, William Jojo <jojo...@gmail.com> wrote:
> 
> Daniel,
> 
> I have the following in my service def as an attribute in allowedAttributes:
> 
>       memberOf:
>       [
>         java.util.ArrayList
>         [
>           groovy { def groups = attributes['memberOf']; def result = []; for 
> ( cn in groups )  result.add( ( cn =~ /CN=([^,]+),/)[0][1] ) ;  return 
> result; }
>         ]
>       ]
> 
> Hope this helps.
> 
> On Tue, Nov 12, 2024 at 10:13 PM Ray Bon <r...@uvic.ca> wrote:
> Daniel,
> 
> See PATTERN FORMAT or EXTERNAL SCRIPT at the bottom of 
> https://apereo.github.io/cas/7.1.x/integration/Attribute-Definitions.html
> 
> 
> Ray
> On Tue, 2024-11-12 at 18:06 -0500, Daniel Maldonado wrote:
>> [You don't often get email from dmaldon...@epc-instore.com. Learn why this 
>> is important at https://aka.ms/LearnAboutSenderIdentification ]
>> 
>> I would like to get the top leven “cn” from my ldap query.  The values 
>> returned look like:
>> 
>> memberOf=[cn=admins,cn=groups,cn=accounts,dc=mycompany,dc=com,…]
>> 
>> as one of the attributes.  I only need the top values:  “admins”
>> and not everything else.
>> 
>> I can not find in the documentation where I can basically return this top 
>> level value as a set.
>> 
>> I can do it in my Java app but that would mean a “custom” solution for all 
>> my apps.
>> 
>> Am I missing something here?
>> 
>> CAS version: 7.1.1
>> 
>> --
>> - Website: 
>> https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapereo.github.io%2Fcas&data=05%7C02%7Crbon%40uvic.ca%7C6108767894c042badf2e08dd0389a1a9%7C9c61d3779894427cb13b1d6a51662b4e%7C0%7C0%7C638670611835591998%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=qgt4zh8Hcuxw%2BQ4YHy%2BFEHqcJWXbxV%2BAs5JpC%2FKshxM%3D&reserved=0
>> - List Guidelines: 
>> https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgoo.gl%2F1VRrw7&data=05%7C02%7Crbon%40uvic.ca%7C6108767894c042badf2e08dd0389a1a9%7C9c61d3779894427cb13b1d6a51662b4e%7C0%7C0%7C638670611835611345%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=kx2P69WsJOUbVv7xHygFbDRJ7BdX6kLq3tsEn3hples%3D&reserved=0
>> - Contributions: 
>> https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgoo.gl%2Fmh7qDG&data=05%7C02%7Crbon%40uvic.ca%7C6108767894c042badf2e08dd0389a1a9%7C9c61d3779894427cb13b1d6a51662b4e%7C0%7C0%7C638670611835622203%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=jdSb24WsOrqHL8pe9JGn3VV7Zrf2VUoBWfPlI0sqbl4%3D&reserved=0
>> ---
>> You received this message because you are subscribed to the Google Groups 
>> "CAS Community" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to cas-user+unsubscr...@apereo.org.
>> To view this discussion visit 
>> https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fa%2Fapereo.org%2Fd%2Fmsgid%2Fcas-user%2FE73E9572-BC4B-4428-97CE-7241ED1F4CC1%2540epc-instore.com&data=05%7C02%7Crbon%40uvic.ca%7C6108767894c042badf2e08dd0389a1a9%7C9c61d3779894427cb13b1d6a51662b4e%7C0%7C0%7C638670611835633812%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=29McdrmdbESKw0nhBiDbQUY91xTaP3gA19yT8iE3gn0%3D&reserved=0.
> 
> 
> -- 
> - Website: https://apereo.github.io/cas
> - List Guidelines: https://goo.gl/1VRrw7
> - Contributions: https://goo.gl/mh7qDG
> --- 
> You received this message because you are subscribed to the Google Groups 
> "CAS Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to cas-user+unsubscr...@apereo.org.
> To view this discussion visit 
> https://groups.google.com/a/apereo.org/d/msgid/cas-user/d4e3128410fe5a4e3d2fe930da1fdfcff05e64e8.camel%40uvic.ca.
> 
> -- 
> - Website: https://apereo.github.io/cas
> - List Guidelines: https://goo.gl/1VRrw7
> - Contributions: https://goo.gl/mh7qDG
> --- 
> You received this message because you are subscribed to the Google Groups 
> "CAS Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to cas-user+unsubscr...@apereo.org.
> To view this discussion visit 
> https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAOGev1j_jO4_BGXphpUoC5p-q%3DgeWUwvRtOa3RyesW%2BoR6fjVw%40mail.gmail.com.

-- 
- Website: https://apereo.github.io/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
--- 
You received this message because you are subscribed to the Google Groups "CAS 
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cas-user+unsubscr...@apereo.org.
To view this discussion visit 
https://groups.google.com/a/apereo.org/d/msgid/cas-user/9F3FCBD8-4AD2-4E53-84C5-AA7839803890%40epc-instore.com.

Reply via email to