У меня есть класс сервлетов Java, который обращается к папке NetApp для файлов. Класс работает на Tomcat 6.0 в Windows 2003 и использует аутентификацию Active Directory (LDAP) для аутентификации пользователей веб-приложения.
Tomcat (и, следовательно, также веб-приложение с классами Java-сервлетов) работает с учетной записью xyz
, которая является учетной записью службы. Папка NetApp имеет различные разрешения, установленные для некоторых групп.
Сейчас я проверяю, входит ли пользователь webapp в группы, выполняя запрос AD:
"cmd.exe /C dsquery user -samid <username> dsget user -memberof -expand|grep -f <filename containing groups>"
Это немного утомительно и подвержено ошибкам, потому что, если кто-то добавит новую группу в папку в NetApp, приведенная выше команда не будет выполнена, пока я не обновлю файл групп. Итак, есть ли способ выдать себя за доступ к идентификатору пользователя в Java и получить файл непосредственно из netapp и пройти вышеупомянутую проверку AD?