Extracting a value from an LDAP attribute

florentvercourt at gmail.com florentvercourt at gmail.com
Thu Feb 2 10:54:37 UTC 2023


Hello all, 

 

I have been looking for a way to extract a part of an LDAP attribute that I
retrieved and map to the RADIUS attribute " Tunnel-Private-Group-Id".

 

The syntax of my LDAP attribute: "schacUserStatus :
urn:mace:terena.org:schac:userStatus:FR:vlan:13+mode=manuel"

 

I want to extract the number of the vlan, to affect it to "
Tunnel-Private-Group-Id" attribute. With the given example, I want to only
have "13" stored in " Tunnel-Private-Group-Id".

 

I tried that in the ldap module :

        update {

                control:Password-With-Header    += 'userPassword'

                reply:Tunnel-Private-Group-ID   := 'schacUserStatus'

        }

 

However, with this solution I retrieve
"urn:mace:terena.org:schac:userStatus:FR:vlan:13+mode=manuel" in "
Tunnel-Private-Group-Id". 

I also try to split it, but its length is 1.

 

 

I read all the documentations at https://networkradius.com/doc/3.0.10 and I
still don't know if there is a way to do that in unlang, and if so, do I
have to do it in the ldap module, or in my virtual server configuration; or
if it's possible to parse the LDAP attribute using Bash commands.

 

Thank you for your advice and help,

Florent VERCOURT 



More information about the Freeradius-Users mailing list