active directory filtre avec objectGUID codées comme spécifié dans la rfc2254 ne fonctionne pas
Je suis en utilisant java ldap pour accéder à active directory, plus précisément printemps ldap.
un groupe de recherche en objectGUID ne donne aucun résultat lorsque le filtre est codé comme spécifié dans rfc2254.
c'est le guid dans sa représentation hexadécimale:
\49\00\f2\58\1e\93\69\4b\ba\5f\8b\86\54\e9\d8\e9
\f2eb\bafb\e9\d8\e9
printemps ldap code pour le filtre comme ça:
(&(objectClass=group)(objectGUID=c49c00cf2c58c1ec93c69c4bcbac5fc8bc86c54ce9cd8ce9))
comme mentionné dans rfc2254 et microsoft technet:
le personnage doit être codée sous la forme de l'anti-slash '\' caractères (ASCII
0x5c), suivie par les deux chiffres hexadécimaux représentant de l'ASCII
la valeur du caractère codé. Le cas des deux hexadécimal
les chiffres ne sont pas significatifs.
Blockquote
donc une barre oblique inverse devrait être '\5c"
mais je n'obtiens pas les résultats ci-dessus avec filtre à partir d'AD. aussi, si j'ai mis ce filtre dans l'ANNONCE de la console de gestion des filtres personnalisés, il ne fonctionne pas.
quand j'enlève le 5c à partir du filtre il travaille à la fois à partir de java et dans l'ANNONCE de la console.
Suis-je manqué quelque chose?
bien sûr, je peux coder le filtre sans le 5c mais je suis nt assurer de la bonne façon et je préfère laisser le printemps encoder les filtres car il connaît un tas de choses que je dois le faire manuellement.
OriginalL'auteur Shalom938 | 2013-02-18
Vous devez vous connecter pour publier un commentaire.
Je pense que l'entrée de blog à:http://www.developerscrappad.com/1109/windows/active-directory/java-ldap-jndi-2-ways-of-decoding-and-using-the-objectguid-from-windows-active-directory/ fournit les informations dont vous avez besoin.
OriginalL'auteur jwilleke
j'ai trouvé la solution avec php pour obtenir de l'utilisateur avec objectGUID
etap quand je créer un utilisateur j'ai mis son objectGuid dans la bdd, le guid de l'objet que vous voyez dans l'Ad ex $guid_str = "31207E1C-D81C-4401-8356-33FEF9C8A"
après j'ai créer ma propre fonction pour transformer cet objet id int hexadécimal
}
cette fonction m'a fait une chaîne de caractères comme \1C\7E\20\31\1C\D8\01\44\83\EF\9C\8A"\F9\ED\C2\7F après ce que j'ai mis dans cette chaîne de mon filtre et je reçois l'utilisateur
#
pour obtenir le format de objectGuid
j'utilise cette fonction que j'ai trouvé dans internet
je veux dire ce format = 31207E1C-D81C-4401-8356-33FEF9C8A
je suis heureux que cela vous aidera 🙂
OriginalL'auteur abdallah ismail
Passer un tableau d'octets et de recherche devrait fonctionner.
OriginalL'auteur Michael-O