tech:pb_vio_openstack_encoding_ldap_non-acsii_or_extended_ascii_char
Pb VIO OpenStack encoding LDAP non-ACSII or Extended_ASCII char
Le problème est lié aux caractères spéciaux présent dans l'AD. Pour information : même pb pour tous les utilisateurs présents dans l'OU “Int\C3\A9gration”
$ openstack role assignment list --user userok --name --effective --user-domain aaa +--------+------------+-------+---------+--------+-----------+ | Role | User | Group | Project | Domain | Inherited | +--------+------------+-------+---------+--------+-----------+ | member | USEROK@aaa | | ovs@aaa | | False | | reader | USEROK@aaa | | ovs@aaa | | False | +--------+------------+-------+---------+--------+-----------+ $ openstack role assignment list --user nokuser1 --name --effective --user-domain aaa Internal Server Error (HTTP 500) $ echo |ldapsearch -E pr=1000 -D "adminde" -y ~/.ldap_pass sAMAccountName |grep USEROK # USEROK Jean, Utilisateurs, Infra dn: CN=USEROK Jean,OU=Utilisateurs,OU=Infra sAMAccountName: USEROK $ echo |ldapsearch -E pr=1000 -D "adminde" -y ~/.ldap_pass sAMAccountName |grep NOKUSER1 # NOKUSER1 Ga\C3\ABl, Utilisateurs, Dev, sAMAccountName: NOKUSER1 $ echo |ldapsearch -E pr=1000 -D "adminde" -y ~/.ldap_pass sAMAccountName |grep NOKUSER2 # NOKUSER2 Robert, Utilisateurs, Int\C3\A9gration sAMAccountName: NOKUSER2
Faisons une liste d'utilisateur OK, Non_OK et OWNI si ni l'un ni l'autre.
#! /bin/bash > user_bad.txt > user_ok.txt > user_owni.txt DOMAIN=aaa for USER in $(openstack user list --domain "$DOMAIN" -c Name -f value) do openstack role assignment list --user "$USER" --name --effective --user-domain "$DOMAIN" RET=$? echo -e "$USER \t $RET" if [[ RET -eq 1 ]] then echo "$USER" >> user_NonOK.txt elif [[ RET -eq 0 ]] then echo "$USER" >> user_ok.txt else echo -e "$USER \t $RET" >> user_owni.txt fi done
Nous n'avons aucun OWNI.Tant mieux.
Note : Il faut enlever les '-LL' et '-LLL' à ldapsearch
echo |ldapsearch -E pr=1000 -D admin -y ~/.ldap_pass -o ldif-wrap=no "(memberOf=CN=Openstack,OU=Groupes,DC=aaa,DC=local)" |grep --color '\\C'
Tous les NonOK correspond à ceux contenant des caractères Non_ASCII ou Extended_ASCII
# NOKUSER1 Ga\C3\ABl, Utilisateurs, dev, aaa.local # NOKUSER2 Robert, Utilisateurs, Int\C3\A9gration, aaa.local
Pour l'encodage voir : 'URL encoding / Percent encoding'
tech/pb_vio_openstack_encoding_ldap_non-acsii_or_extended_ascii_char.txt · Dernière modification : de 127.0.0.1
