У меня есть приложение winforms, которое использует серверную часть SQL Express (которая всегда находится на локальной машине).
Я столкнулся с множеством проблем пользователей, когда пользователь выполняет задачу, которая создает новую базу данных в определенном месте, но оказывается, что «NT Authority \ Network Service» не имеет достаточных разрешений в указанном месте.
Я хотел бы проверить во время выполнения, имеет ли пользователь, работающий с SQLSERVR, доступ к определенной папке.
У меня запущен код WMI для определения пользователя / SID процесса SQLSERVR. Мой следующий шаг - попытаться получить WindowsIdentity / WindowsPrincipal пользователя, чтобы я мог запросить правила доступа к файлу.
Но я застрял - как я могу надежно получить WindowsIdentity, когда у меня есть только пользователь / домен / SID? Не похоже, что есть конструктор, который подходит для этого?