Можно ли получить учетные данные пользователя, который скопировал файл на сетевой ресурс?
У меня есть сетевой ресурс, который смотрит FileSystemWatcher
объект...
Если несколько пользователей в домене Windows имеют доступ для копирования файлов в этот общий ресурс, возможно ли это с помощью FileSystemWatcher
объект или иным образом, чтобы получить учетные данные человека, который скопировал файл в эту сетевую папку и как?
1 ответ
Решение
Я использовал FileInfo.GetAccessControl
способ получить FileSecurity
объект. С помощью GetOwner
метод этого FileSecurity
объект, который вы можете получить Principal.NTAccount
объект, чтобы получить пользователя NT...
var fi = new FileInfo(filePath);
var ac = fi.GetAccessControl();
var owner = ac.GetOwner(typeof (System.Security.Principal.NTAccount)).Value;