Назад | Перейти на главную страницу

Python, сценарии IIS и учетные записи пользователей

Это не вопрос моей конкретной проблемы, поскольку она более или менее решена, а вопрос IIS / Python и учетных записей пользователей в целом.

У меня есть сценарии Python, которые я запускаю с IIS 7.5 (Mercurial с использованием сценария hgweb.wsgi). Один из плагинов (больших файлов) получает разрешение на чтение и запись файлов.

Сценарий пытался записать файлы во временный каталог, проверяя APPDATA и LOCALAPPDATA переменные среды, которые возвращали C:\Windows\System32\config\systemprofile\AppData\Local, и сбой из-за разрешений.

Я пробовал распечатать USERNAME переменная среды, но независимо от того, какого пользователя я установил в удостоверении пула приложений IIS, она всегда возвращала MACHINENAME$

Итак, как я могу запустить сценарии Python в IIS, чтобы переменные среды указывали на правильное домашнее местоположение пользователя? Или это просто ошибка разработчика (у Hg не было проблем с разрешениями, только расширение largefiles)?

Кроме того, когда у меня изначально были репозитории в C:/Data, файлы, записанные большими файлами в этот каталог, имеют значок блокировки, а разрешения были SYSTEM: полный контроль и Administrators: полный контроль, владелец установлен на Administrators (группа, а не пользователь-администратор). После записи файла его больше нельзя было прочитать. Даже если бы я дал Everyone полный контроль над C:/Data каталог, новые файлы все равно будут заблокированы, если я не отредактирую разрешения вручную. Опять же, у Hg не было этой проблемы, только файлы, записанные большими файлами.

Попробуйте использовать Монитор процесса чтобы разобраться в проблемах с разрешениями.

Вы можете использовать этот инструмент, чтобы узнать, какой пользователь пытается получить доступ к файлу, какой процесс и другие важные детали, которые удобны для устранения неполадок с разрешениями IIS.