Аутентификация LDAP с AD

Когда я пытаюсь настроить аутентификацию Cloudify LDAP с помощью Microdoft LDAP, я получаю следующую ошибку:

Вызвано: ErrorStatusException, код причины: не авторизован, аргументы сообщения: многословно: [LDAP: код ошибки 49 - 80090308: LdapErr: DSID-0C0903A9, комментарий: ошибка AcceptSecurityContext, данные 52e, v1db1]; вложенное исключение - javax.naming.AuthenticationException: [LDAP: код ошибки 49 - 80090308: LdapErr: DSID-0C0903A9, комментарий: ошибка AcceptSecurityContext, данные 52e, v1db1]

Я использую "домен \ пользователь" и только "пользователь", но получаю ту же ошибку. Я пытаюсь соединиться с ldapsearch из vm management в LDAP, и я должен использовать "домен \ пользователь", иначе я получаю ошибку 52e.

1 ответ

Как вы описываете, код ошибки 52e означает, что комбинация пароля и имени пользователя недопустима.

Cloudify обычно используется со стандартными каталогами (я лично тестировал на OpenLDAP), но официально не тестировался на AD, поэтому весьма вероятно, что это вопрос соглашений об именах.

Следуя этой теме, я предлагаю вам использовать "cn" вместо "uid" при составлении dn пользователя. Для этого вы должны отредактировать конфигурацию вашего бина spring-security.xml "userSearch". Заменить:value="(uid={0})"с value="(cn={0})"

Также, насколько мне известно, имя пользователя не должно содержать "\" (часто используется для разделения домена и имени пользователя). Попробуйте использовать это форматирование: user@mydomain.com вместо.

Если изменение конфигурации не поможет вам, вы также можете реализовать свой собственный провайдер аутентификации и подключить его к Cloudify, как описано в разделе "Интеграция нестандартного провайдера аутентификации" здесь.

Другие вопросы по тегам