Випуск дозволів з віртуальним каталогом до шляху UNC


13

У мене на своєму сайті є віртуальний каталог (тестове середовище). Це частка UNC, яка також використовується як публічний FTP.

Він налаштований на підключення як обліковий запис адміністратора домену, і "Тестові настройки" повідомляють, що все, здається, працює. Однак, коли я намагаюся підключитися до нього, я отримую:

500 - "Не вдалося запустити моніторинг змін на \ INTRANET \ FTP \ test \ web.config, оскільки доступ заборонено"

Це ASP.NET YSOD. Я не впевнений, чому ASP.NET взагалі залучається, оскільки це статичний .jpg файл, який я прошу.

Я спробував увімкнути невдалий пошук запиту, і це конкретна помилка:

  • ModuleName WindowsAuthentication
  • Повідомлення 2
  • HttpStatus 500
  • Помилка внутрішнього сервера HttpReason
  • HttpSubStatus 0
  • ErrorCode 0
  • ConfigExceptionInfo
  • Сповіщення AUTHENTICATE_REQUEST
  • ErrorCode Операція успішно завершена. (0x0)

Якщо я зміню "Тип входу фізичного шляху" з ClearText на Мережу. Я отримую таку помилку IIS:

Помилка HTTP 500.19 - внутрішній сервер

Помилка Доступ до запитуваної сторінки неможливо, оскільки пов’язані дані конфігурації для сторінки недійсні.

Детальна інформація про помилку

  • Модуль IIS Web Core
  • Повідомлення BeginRequest
  • Обробник ще не визначений
  • Код помилки 0x80070005
  • Помилка конфігурації Неможливо прочитати конфігураційний файл через недостатню кількість дозволів
  • Налаштування файлу \\?\UNC\INTRANET\FTP\test\web.config
  • Запитана URL-адреса http://test.mydowmain.com:80/uploads/images/ca49acf6-6174-412e-8abd-59fab983e931.jpg

  • Фізичний шлях \\INTRANET\FTP\test\images\ca49acf6-6174-412e-8abd-59fab983e931.jpg

  • Метод входу ще не визначений

  • Користувач входу ще не визначений
  • Помилка запиту журналу журналу відстеження C:\inetpub\logs\FailedReqLogFiles

Це не генерує невдалий журнал запитів досить дивним чином - я встановив невдалий запит відстеження помилок з кодами помилок 400-999.

Також варто зазначити, що якщо я відкриваю функцію конфігурації в межах IIS, я бачу помилку в доступі, відхилену.

У мене точно такий же настрій на моїй локальній машині розробки на той самий шлях UNC і той самий користувач, який він працює. Просто на тестовому сервері цього немає.

Що я роблю неправильно?

Відповіді:


10

Те, що це додаток ASP.net, ймовірно, саме в цьому полягає проблема. Ідентифікатор пулу додатків повинен мати права (не обов'язково ідентифікатор IIS; за замовчуванням ідентифікатор пулу додатків - це локальний обліковий запис мережі.

http://msdn.microsoft.com/en-us/library/cb6t8dtz%28v=vs.80%29.aspx

http://learn.iis.net/page.aspx/50/aspnet-20-35-shared-hosting-configuration/

%windir%\Microsoft.NET\Framework\v2.0.50727\caspol -m -ag 1.  -url "file://\\remotefileserver\content$\*" FullTrust

7

Я вирішив нашу проблему, створивши відповідні облікові записи як на веб-сервері, так і на unc сервері. Потім я змінив пул додатків для запуску з використанням відповідного облікового запису, а не мережевої служби. Це дало мені можливість синхронізувати пароль на обох серверах, не впливаючи на інші функції, що залежать від мережі.


3
Витративши 5 годин і шукаючи рішення, нарешті, рішення ІТ-Дії працювало для мене. Тому я створив абсолютно однакових користувачів на обох машинах, а потім встановив пул додатків для запуску за допомогою цього облікового запису. Я просто збирався зійти з розуму від цього. Нарешті вирішено. Сподіваюсь, це допомагає всім мати те саме питання

Масовий +1. Я в тому ж човні, що і @ user249232 - коли дзеркальний обліковий запис на машині IIS миттєво вирішив проблему після багатьох пошуків. Однак я встановив користувача за допомогою "Підключити як" у основних налаштуваннях сайту, а не шляхом зміни ідентифікатора пулу додатків.
Скруфі

1
Кудо, для кого це рішення працює, але це для мене жахливе рішення, оскільки я не хочу намагатися імітувати налаштування мого імені користувача corp у власному персональному налаштуваннях Linux Linux, для якого я використовую інший режим ім'я користувача. Синхронізація паролів - це додаткова складність для мене, оскільки я вже використовую спліт-сервери (iis на моєму хості та php56 на Linux для доступу композитора)
Брайан Томас

витративши 2 дні. Це працювало для мене. Навіть я спробував ті ж дані, і це не працювало. Нарешті, це працює після переміщення цього загального користувача в групі адміністраторів
Кетан Котак,

2

Якщо це спільне джерело не є додатком (еквівалентна папка зображень), спробуйте налаштувати віртуальний каталог ігнорувати кореневою програмою, яка включає в себе віртуальний каталог (у моєму випадку я доповнив це, змінивши тип пулу кореневих додатків як Класичний замість інтегрованого режиму). Але якщо в спільній точці є додаток, то ви можете слідувати способу, зазначеному @mfinni.


1

Ви можете переконатися, що обліковий запис, під яким працює IIS, має належні / потрібні права на проблемну UNC.


3
Якби це не програма ASP.net, ви б заробляли гроші. Оскільки він працює в пулі додатків, потрібен доступ, ідентифікатор пулу додатків, а не обліковий запис користувача IIS.
mfinni

1

У мене була та сама проблема на IIS 7.5. Я знайшов рішення таким:

  1. Створіть локального користувача на сервері за допомогою спільного доступу
  2. Створіть мережевий доступ, надавши користувачеві, створеному на кроці 1, потрібні дозволи. Windows встановить дозволи для вказаного вами користувача
  3. Перейдіть у віртуальний каталог на IIS та відкрийте "розширені налаштування"
  4. Введіть URL-адресу на фізичному шляху для мережевої частки як \\<servername>\<sharename>
  5. клацнути в облікових даних фізичного шляху; додайте облікові дані для користувача, створені на кроці 1

0

Так само виникала проблема з недоменним веб-сервером, який здійснював доступ до деяких ресурсів домену за допомогою облікового запису домену. У нас виникає дивна поведінка ("тестові облікові дані" не зможуть, хоча ми знали, що облікові дані правильні, ми могли бачити папки та файли у режимі перегляду вмісту, але не могли "переглядати" їх). Рішенням було створити локального користувача на машині з тим самим іменем, що і користувач домену.

Я думаю, що це сталося б, якби веб-сервер був членом домену, а місцевому користувачеві потрібно було отримати деякі локальні ресурси (config?) Для того, щоб відобразити віртуальний.

Сподіваюся, що хтось допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.