Меню Рубрики

Iis express authentication windows

Настройка аутентификации в IIS 8

IIS 8 поддерживает интегрированный режим ASP.NET, который помимо прочего объединяет конвейер обработки ASP.NET HTTP с конвейером обработки IIS HTTP. Это предоставляет в распоряжение богатейший набор новых возможностей, которые можно использовать в сочетании с имеющимися знаниями ASP.NET. Например, одна из них — это возможность применения аутентификации с помощью форм ASP.NET для других веб-приложений, сконфигурированных в IIS 8, которые не обязательно должны быть построены на ASP.NET.

Более того, IIS 8 использует файл web.config для хранения многих частей конфигурации веб-приложений внутри веб-сервера. Это означает возможность настройки многих параметров приложения с использованием либо консоли управления IIS 8, либо за счет непосредственной модификации файла web.config. Благодаря тесной интеграции средств конфигурирования ASP.NET и IIS 8, любые изменения, внесенные непосредственно в файл web.config, немедленно отражаются в консоли управления, и наоборот.

Давайте сначала рассмотрим возможности конфигурирования аутентификации с помощью форм из среды консоли управления IIS 8. Конфигурировать аутентификацию с помощью форм можно с использованием средства настройки аутентификации консоли управления IIS 8, как показано на рисунке ниже:

После разрешения аутентификации с помощью форм подобным образом также понадобится сконфигурировать необходимые правила авторизации. Наиболее важно добавить правило deny для анонимных пользователей с помощью средства конфигурирования авторизации в консоли управления IIS 8:

Обе конфигурационные настройки затрагивают файл web.config и веб-сервер берет эту информацию из web.config для определения собственного поведения, что видно в следующем фрагменте кода:

Вы заметите, что аутентификация с помощью форм, сконфигурированная IIS, как и следовало ожидать, находится в разделе . Но по умолчанию (и если вы ранее не добавили этого вручную), никаких правил авторизации там не будет. Как упоминалось ранее, не все опции конфигурации по умолчанию помещаются непосредственно в файл web.config. Авторизация URL — одна из таких опций конфигурации.

В любом случае унифицированная консоль управления очень хорошо продумана, так что настраивать безопасность IIS и ASP.NET посредством других инструментов нет необходимости. Многие опции по умолчанию сохраняются непосредственно в файле web.config. Как известно можно даже сконфигурировать IIS так, чтобы почти все опции помещались непосредственно в web.config. Однако, как упоминалось ранее, интеграция ASP.NET предоставляет множество возможностей при запуске IIS 8 в интегрированном с ASP NET режиме.

При запуске IIS 8 в интегрированном режиме (выбираемом по умолчанию) IIS использует канал обработки HTTP для обработки как основанных на ASP.NET HTTP-модулей, так и встроенных HTTP-модулей IIS 8.

Поскольку аутентификация с помощью форм реализована в виде HTTP-модуля ASP.NET, ее можно использовать для любого веб-приложения и виртуального каталога, сконфигурированного в IIS, который функционирует в интегрированном режиме. Это значит, что аутентификацию с помощью форм можно применять вместе с приложениями других типов, такими как статические HTML-сайты, классические приложения ASP или даже приложения PHP. Все, что потребуется сделать — это настроить веб-приложение как виртуальный каталог и затем сконфигурировать аутентификацию с помощью форм через консоль управления IIS 8. Это автоматически добавит к приложению конфигурацию web.config.

Поскольку нужно позаботиться об одной дополнительной детали, давайте в этом разделе кратко рассмотрим настройку аутентификации с помощью форм для приложения, отличного от ASP.NET. Предположим, что имеется следующая страница PHP, работающая на веб-сервере:

Теперь просто откройте доступ к папке, где расположен PHP-файл (например, test.php), как к виртуальному каталогу или веб-приложению внутри IIS. После этого можно сконфигурировать аутентификацию с помощью форм и настройки авторизации, как было описано ранее.

Поскольку IIS 8 органично поддерживает аутентификацию с помощью форм, полагаясь на HTTP-модуль аутентификации с помощью форм, поставляемый в ASP.NET, она работает точно также, как работала бы с приложением ASP.NET. Все что нужно — это удостовериться в наличии необходимой страницы входа, которая сама по себе является страницей ASP.NET. Также должны быть доступны части, необходимые для страницы ASP.NET, внутри веб-приложения (или в другом виртуальном каталоге, если применяются cookie-наборы аутентификации между приложениями).

На рисунке ниже показана страница PHP вместе со страницей входа ASP.NET в виртуальном каталоге. Аутентификация с помощью форм просто конфигурируется через управляющую консоль IIS 8, как было описано ранее:

Однако просто поместить содержимое PHP вместе с основанными на ASP.NET страницами входа и сконфигурировать аутентификацию с помощью форм еще недостаточно. Когда вы попытаетесь выполнить переход на страницу PHP, аутентификация с помощью форм пока работать не будет. В зависимости от аутентификации и правил авторизации, вы либо получите ответ «unauthorized» («неавторизовано»), либо сможете переходить к странице PHP без приглашения на вход.

Причина в том, что по умолчанию управляемые HTTP-модули, в том числе и модуль аутентификации с помощью форм, настроены так, что выполняются только по запросу кода, основанного на ASP.NET. Поэтому чтобы заставить работать аутентификацию с помощью форм, потребуется изменить это поведение, вызвав средство конфигурации HTTP Modules в консоли управления IIS 8 когда ваше веб-приложение выбрано. Затем нужно отобразить детальную информацию для модуля FormsAuthentication, сконфигурированного в списке модулей, как показано на рисунке ниже:

Открыв средство конфигурации HTTP Modules, найдите FormsAuthentication и дважды щелкните на нем или выберите ссылку Edit (Правка) в панели задач справа. В открывшемся диалоговом окне снимите отметку с флажка Invoke Only for Requests to ASP.NET Applications or Managed Handlers (Вызывать только для запросов к приложениям ASP.NET или управляемым обработчикам), как показано на рисунке ниже:

После завершения этой настройки при обращении к странице PHP в каталоге веб-приложения запрос будет аутентифицирован посредством аутентификации с помощью форм ASP.NET. Конфигурационный файл web.config для веб-приложения будет выглядеть следующим образом:

Конфигурация FormsAuthenticationModule важна. Флажок в неотмеченном состоянии задает preCondition=»», которое по умолчанию установлено в managedHandler.

Источник

IIS Express FAQ

This FAQ contains information about IIS Express support and other common questions.

Q: What is IIS Express?

A: IIS Express is a lightweight, self-contained version of IIS optimized for developers. IIS Express provides the power of IIS 7 and above while making it easy to develop and test websites.

Q: What is the current release of IIS Express?

A: The current release is IIS 7.5 Express. As the name suggests, this release is derived from the IIS 7.5 server codebase.

Q: How does it relate to Microsoft WebMatrix?

A: Microsoft WebMatrix is a simple and integrated suite of tools that streamline ASP.NET and PHP development. IIS Express is the Web server that is included with WebMatrix. You can also install IIS Express all by itself using the following link. See IIS Express Overview for information on the various ways to install the product.

Q: Can I use IIS Express with Visual Studio?

A: Yes, Visual Studio 2010 SP1 Beta allows you to build and test web applications using IIS Express instead of the built-in ASP.NET Development Web Server (also known as Cassini). IIS Express is not included with VS 10 SP1 and will need to be installed separately. You can also manually launch IIS Express from the command line and use it with Visual Studio 2008, using the custom web server option.

Q: What OS and SKUs are supported?

A: IIS 7.5 Express is supported on the following operating systems:

  • Windows XP SP3+
  • Windows Vista SP1+
  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2
  • Windows Server 2003 SP2+

Support is available for all OS SKUs, except Server Core on Windows Server 2008.

Q: What .NET Framework versions are supported?

A: Versions 2.0, 3.0, 3.5, and 4.0 are supported.

Q: Are 64-bit machines supported?

A: IIS 7.5 Express supports 64-bit architectures using the WoW64 subsystem. Full 64-bit support will be considered for future releases.

Q: Does IIS Express support SSL?

A: Yes IIS Express supports SSL. The setup program will install a default, self-signed server certificate in the machine store and configure ports 44300-44399 for use with SSL. You can also set up and configure custom SSL certificates for your websites as an administrator.

Q: Does IIS Express support PHP?

A: Yes, IIS Express includes the CGI and FastCGI modules for PHP. The best way to develop PHP applications using IIS Express is to install WebMatrix. This will automatically install and configure PHP and also allow you to download and customize popular gallery applications such as WordPress, Joomla etc.

Q: Can IIS Express be redistributed or embedded in other applications?

A: The IIS 7.5 Express license allows the MSI to be redistributed. You can include the MSI in your product or chain your installer to it. You can’t distribute IIS Express in any other manner at the moment.

Q: Does IIS Express support the IIS «Classic» pipeline mode?

A: IIS Express supports both the «Integrated» and «Classic» managed pipeline modes from IIS.

Q: Does IIS Express require administrative privileges?

A: The default IIS Express configuration allows users to run websites without administrative privileges. The setup program also installs a self-signed server certificate that enables standard users to run a site over SSL.

Certain tasks do require elevated user rights. They include:

  • Running a website on port 80 or another reserved port
  • Installing a custom SSL certificate
  • Running network-facing websites

You must also have administrator user rights when using IIS Express on Windows Server 2003 SP2+.

Q: Does IIS Express support the command line?

A: Yes, IIS Express can be launched using the command line and supports various runtime options. For information about how to use the command line, see Use the Command Line to Run a WebMatrix Site or Application.

Q: Is IIS Express xcopy-deployable?

A: The core IIS Express runtime is xcopy-deployable. However, as of this time, xcopy deployment is not an officially supported feature.

Q: Does IIS Express support external traffic?

A: By default, only requests over localhost are serviced; however, you can modify the bindings to enable external traffic. For security reasons, you should have Administrator user rights on the machine to set this up.

Q: Will UNC/network paths work?

A: Yes. Similar to IIS, you will need to configure the proper UNC credentials to access content from those shares.

Q: Does IIS Express support non-HTTP protocols such as net.tcp or MSMQ?

A: No. IIS Express only supports HTTP and HTTPS as its protocol.

Q: What about FTP?

A: IIS Express does not include an FTP service. However, note that both WebMatrix and Visual Studio support publishing web applications to production environments using FTP.

Q: Are all of the IIS modules supported?

A: IIS Express currently ships with built-in support for URL Rewrite and FastCGI. We will continue to add support for other modules in future releases, based on demand.

Q: Does IIS Express support different host headers?

A: Yes, IIS Express supports binding to different host headers. Similar to IIS, you must have Administrator user rights on the machine to complete this operation. You must also do some extra configuration on the OS, such as adding the proper host mappings in the «hosts» file and network configurations.

Q: Does IIS Express use the same configuration system as IIS?

A: Yes, IIS Express uses the same applicationhost.config and web.config files supported by IIS. The key difference is that with IIS Express, the configuration is maintained on a per-user basis. In particular, whereas IIS has a global «applicationhost.config» file, IIS Express maintains a user-specific «applicationhost.config» file in the %userprofile%\documents\IISexpress\config» folder. This lets a standard user run IIS Express and also lets multiple users work on the same machine independently, without conflicting with each other. Some settings require Administrator user rights to set and modify (see question above about running as a standard user).

Q: How do I enable verbs like PUT/DELETE for my web application?

A: In the «verb» attribute add PUT and DELETE so the «verb» attribute looks like: You can modify the IIS Express «applicationHost.config» in the %userprofile%\documents\IISExpress\config» folder. For example to enable PUT and DELETE for extensionless Urls scroll down to the bottom of the IIS Express applicationHost.config file and look for a handler entry that starts with:

Q: Does IIS Express support more than one application running in the same process?

A: Yes. Similar to IIS, IIS Express supports multiple applications under the same site running in the same process.

Q: Are WCF applications supported?

A: Yes, IIS Express support WCF applications. As noted above, WCF is only supported over HTTP or HTTPS. WCF over MSMQ and net.tcp is not supported.

Q: Can SharePoint Foundation 2010 run on IIS Express?

A: SharePoint won’t run on IIS Express because it uses IIS features that aren’t supported. IIS Express won’t prevent SharePoint Foundation 2010 from running if they are both installed on the same machine.

Q: Can IIS Express run side-by-side with other Web servers?

A: Yes, IIS Express can run side-by-side with other Web servers as long as there are no conflicting bindings. You can run IIS Express and the operating system version of IIS (IIS 5.1 on Windows XP, IIS 6.0 on Windows Server 2003, IIS 7.0 on Windows Server 2008 or Windows Vista, IIS 7.5 on Windows Server 2008 R2 or Windows 7). IIS Express comes with a default website that runs on port 8080 to avoid conflicts with IIS, which uses port 80 by default. A binding conflict will occur if IIS Express and the other Web server both try to listen on port 80.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Iib 10 windows server ldap
  • Igra dlya noutbuk gita windows 7
  • Igo для windows phone
  • Igo primo установка на windows ce
  • Igo navigation for windows 10