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

Как установить разрешения для приложений ASP.NET для запуска под IIS6 с проверкой подлинности Windows, но без «всеобщего чтения»

У нас есть ведомственный веб-сервер под управлением Server 2003, IIS 6 и SQL Server Express. IIS настроен только для проверки подлинности Windows, а все пулы приложений настроены для использования учетной записи сетевой службы. Мы запускаем несколько приложений ASP.NET, большинство из которых обращаются к базам данных SQL Server. В файле web.config (или в других местах) этих приложений у нас есть необходимые строки подключения для доступа к БД.

Недавно я понял, что любой может просматривать общий ресурс, содержащий файлы веб-сервера («Прошедшие проверку» имеют разрешение на чтение), поскольку он находится в другом каталоге на сервере, который используется совместно по разным причинам.

Я попытался удалить это разрешение доступа «на чтение», но затем пользователи больше не могли запускать приложения (они не могли читать общий доступ к файлам, что было предполагаемым поведением, но это также мешало им запускать приложения). Я все еще мог запускать приложения, так как я являюсь частью группы администраторов, у которой все еще есть полный контроль над папкой приложений.

Мой вопрос (наконец): какую комбинацию разрешений Windows и настроек IIS я могу использовать для удовлетворения этих потребностей:

  1. Нам нужно знать, какие пользователи используют приложение, и определить, какие роли / разрешения имеет текущий пользователь в каждом приложении.
  2. Нам нужно / желаем сохранить строки подключения к БД в файле web.config или других приложениях (слишком много работы, чтобы переместить их все в другое место).
  3. Нам нужно запретить пользователям просматривать общий доступ к файлам и читать такие вещи, как строки подключения внутри приложений. (Мы бы НЕ хотели перемещать приложения в новую общую папку!)

Я боролся с этим некоторое время и буду признателен за любые предложения!

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