Скрипт PowerShell для подтверждения DN, совместимого с RCF в AD - PullRequest
0 голосов
/ 16 октября 2019

Первое сообщение!
Это проблема, с которой я недавно столкнулся, когда приложение с поддержкой LDAP, которое должно остаться безымянным, сообщает об ошибке в DN в одном из 19 доменов в лесу, но поставщик не может дать мне дальнейшие указания. подробно о том, что объект с ошибкой отличается от «Мы довольно жестки в отношении соответствия RFC, поэтому это может быть что угодно, и мы видим ошибку 34»

Справка справа.

Мои другие приложения, поддерживающие LDAP, прекрасно работают, так что это скорее упражнение типа "докажи, что ты не прав".
У меня есть список DN, экспортированных из каждого объекта, который изменился за последние 10 днейиз каждого домена.
9 дней назад, когда вещь сломалась, она захватила бы все, что они пытаются сказать, что это будет.

Что я надеюсь выяснить, есть ли у меня способ запустить сценарий PS для проверки жалоб RFC в строке DN?
У меня нет идентификаторов, связанных с RFC, даже не могу найтичеткое объяснение того, что есть и не принято.

У кого-нибудь есть указатели?

1 Ответ

2 голосов
/ 16 октября 2019

Это всего лишь предположение, но это то, что жгло меня раньше: у вас есть аккаунты с косой чертой в названии? Даже у собственного кода Microsoft есть проблемы с этим .

DN будет выглядеть примерно так:

CN=test/user,OU=Users,DC=domain,DC=com

Это совершенно правильно (по крайней мере, AD это позволяет). Но если вы попытаетесь связать это напрямую через LDAP и просто поместите его в путь LDAP, вы получите следующее:

LDAP://CN=test/user,OU=Users,DC=domain,DC=com

Однако в пути LDAP косые черты являются специальными символами, поэтомувидит путь как LDAP://CN=test, что, конечно, не сработает. Слэш должен быть экранирован (просто замените / на \/):

LDAP://CN=test\/user,OU=Users,DC=domain,DC=com

Чтобы выяснить, есть ли у вас аккаунты с косыми чертами в названии, вы можете выполнить запрос, подобный следующему:

(&(objectClass=user)(cn=*/*))

В PowerShell вы можете сделать это следующим образом:

Get-ADUser -LDAPFilter "(cn=*/*)"

Это также может произойти, если у вас есть OU с косой чертой в имени.

...