Я выполняю проверку авторизации из приложения WinForms с помощью провайдера авторизации AzMan из Enterprise Library и получаю следующую ошибку:
Невозможно обновить пароль. Значение, предоставленное в качестве текущего пароля, неверно. (Исключение из HRESULT: 0x8007052B) (Microsoft.Practices.EnterpriseLibrary.Security.AzMan)
Невозможно обновить пароль. Значение, предоставленное в качестве текущего пароля, неверно. (Исключение из HRESULT: 0x8007052B) (Microsoft.Interop.Security.AzRoles)
Магазин AzMan размещен в ADAM на другом компьютере в том же домене. На других компьютерах и у других пользователей такой проблемы нет. Пользователь, выполняющий вызов, имеет доступ на чтение как к ADAM, так и к хранилищу AzMan. Компьютер с приложением WinForms и компьютер с ADAM работают под управлением Windows XP SP2.
У меня и раньше были проблемы с доступом к AzMan, которые я решал, но это новая проблема... Что я упускаю?
Для AzMan с ASP.NET включите имперсонацию в web.config
(<identity impersonate="true" username="xx" pasword="xx" />
), и убедитесь с помощью администратора AD, что имперсонационная учетная запись имеет "читательские" права на хранилище AzMan; плюс, дайте права на запись этой учетной записи в папку Temporary ASP.NET Files
(в папке C:\Windows\Microsoft.NET\<framework>
).
Из журнала событий я узнал, что существует проблема безопасности, связанная с пользователем, совершающим вызов AzMan с удаленного компьютера. Пользователь не принадлежал к группе локальных пользователей на компьютере, на котором запущен ADAM/AzMan. Когда я исправил это, все снова заработало.