Настройка OWA

По инструкции можно настроить двухфакторную аутентификацию только для Outlook Web Access (OWA). При необходимости запрашивать аутентификацию для других ресурсов, выполните настройку для AD FSПеред настройкой проверьте, что Exchange Server развернут на вашем Windows Server. 

Поддержка Exchange Server с версии 2013 и выше.

Шаги, необходимые для настройки двухфакторной аутентификации в OWA:

Двухфакторная аутентификация для бизнеса Контур.ID

Шаг 1

Установка адаптера

  1. Скачайте адаптер из кабинета администратора.
  2. Перейдите в папку:

    C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa\Bin

    Промежуточная директория V15, может меняться в зависимости от версии Exchange Server.

  3. Скопируйте файл OWA.Adapter.dll из папки OwaAdapter, которую вы скачали ранее, в директорию:

    C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa\Bin
Шаг 2

Регистрация адаптера

Регистрация модуля

Встройте KidAuthModule в конвейер запроса IIS, чтобы запрашивать двухфакторную аутентификацию у пользователей.

  1. Откройте файл web.config в папке: C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa.
  2. В блоке <modules> добавьте первой строчкой:
    <add name="KidAuthModule" type="OWA.Adapter.KidAuthModule" />
    Пример web.config
    <modules>
      <add name="KidAuthModule" type="OWA.Adapter.KidAuthModule" />
      <!-- CasHealthModule must always be the first one in the list --> 
      <add name="CasHealthModule" type="Microsoft.Exchange.Common.ExWebHealthModule,Microsoft.Exchange.Common, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add name="HttpRequestFilteringModule" type="Microsoft.Exchange.HttpRequestFiltering.HttpRequestFilteringModule, Microsoft.Exchange.HttpRequestFiltering, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add name="RoutingUpdateModule" type="Microsoft.Exchange.HttpProxy.Routing.RoutingUpdateModule, Microsoft.Exchange.HttpProxy.Routing, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add type="Microsoft.Exchange.Security.OAuth.OAuthHttpModule" name="OAuthAuthModule" />
      <add type="Microsoft.Exchange.Security.Authentication.BackendRehydrationModule" name="BackendRehydrationModule" />
      <add name="ClientsCommonModule" type="Microsoft.Exchange.Clients.Common.ClientsCommonModule" />
      <add type="Microsoft.Exchange.Clients.Owa2.Server.Core.OwaModule, Microsoft.Exchange.Clients.Owa2.Server" name="Owa2Module" />
      <add type="Microsoft.Exchange.Clients.Owa.Core.OwaModule, Microsoft.Exchange.Clients.Owa" name="OwaModule" />
          <add name="exppw" />
    </modules>


    Кроме случаев, когда требуется соблюдать порядок других модулей, как в примере ниже:

    Пример web.config с другими модулями
    <modules>
      <!-- CasHealthModule must always be the first one in the list --> 
      <add name="CasHealthModule" type="Microsoft.Exchange.Common.ExWebHealthModule,Microsoft.Exchange.Common, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add name="KidAuthModule" type="OWA.Adapter.KidAuthModule" />
      <add name="HttpRequestFilteringModule" type="Microsoft.Exchange.HttpRequestFiltering.HttpRequestFilteringModule, Microsoft.Exchange.HttpRequestFiltering, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add name="RoutingUpdateModule" type="Microsoft.Exchange.HttpProxy.Routing.RoutingUpdateModule, Microsoft.Exchange.HttpProxy.Routing, Version=15.0.0.0, Culture=neutral, PublicKeyToken=1111111122222222" />
      <add type="Microsoft.Exchange.Security.OAuth.OAuthHttpModule" name="OAuthAuthModule" />
      <add type="Microsoft.Exchange.Security.Authentication.BackendRehydrationModule" name="BackendRehydrationModule" />
      <add name="ClientsCommonModule" type="Microsoft.Exchange.Clients.Common.ClientsCommonModule" />
      <add type="Microsoft.Exchange.Clients.Owa2.Server.Core.OwaModule, Microsoft.Exchange.Clients.Owa2.Server" name="Owa2Module" />
      <add type="Microsoft.Exchange.Clients.Owa.Core.OwaModule, Microsoft.Exchange.Clients.Owa" name="OwaModule" />
          <add name="exppw" />
    </modules>

Настройка модуля

  1. Откройте файл appsettings.config из скачанной папки OwaAdapter. В файле хранятся данные для настройки установленного файла OWA.Adapter.dllПодробнее см. Описание файла OWA.
    Пример appsettings.config
    <configuration>
      <system.webServer>
        <modules>
          <add name="KidAuthModule" type="OWA.Adapter.KidAuthModule" />
        </modules>
      </system.webServer>
      <appSettings>
        <add key="kid:api-key" value="ВашApiKey*" />
        <add key="kid:url" value="https://kid.kontur.ru" />
        <add key="kid:strategy" value="NoOneWithExceptions" />
        <add key="kid:groupsExceptions" value="group1;group2" />
        <add key="kid:domain" value="domain" />
        <!-- Необязательное поле --><add key="kid:serverAddress" value="domain:389" />
        <!-- Необязательное поле --> <add key="kid:2fa-marker-expiration" value="08:00:00" />
        <!-- Необязательное поле --> <add key="kid:2fa-marker-never-expire" value="false" />
      </appSettings>
    </configuration>
  2. Cкопируйте и вставьте настройки <appSettings> из appsettings.config в web.config:
    <add key="kid:api-key" value="ВашApiKey*" />
    <add key="kid:url" value="https://kid.kontur.ru" />
  3. Настройте политику, исключения по правилам политики и домен.
    <add key="kid:strategy" value="NoOneWithExceptions" />
    <add key="kid:groupsExceptions" value="group1;group2" />
    <add key="kid:domain" value="domain" />
    Пример appSettings в web.config
    <appSettings>
      <add key="OAuthHttpModule.RunningAtBackend" value="true" />
      <!-- PSDirectInvoke settings -->
      <add key="PSDirectInvokeEnabledModules" value="Logging,LatencyTracker" />
      <!-- Specifies the type of protocol that RUM should register itself as. -->
      <add key="RoutingUpdateModule.ProtocolType" value="OWA" />
      <add key="owin:AutomaticAppStartup" value="true" />
      <add key="kid:api-key" value="1111111122222222222" />
      <add key="kid:url" value="https://kid.example.ru" />
      <add key="kid:strategy" value="AllUsersWithExceptions" />
      <add key="kid:groupsExceptions" value="Group1" />
      <add key="kid:domain" value="example.ru" />
    </appSettings>
  4. Сохраните файл web.config.

Настройка многодоменности

Шаги, необходимые для работы с несколькими доменами:

  1. Создайте в любом редакторе новый файл с названием appsettings.json.
  2. Настройте конфигурацию с вашими данными, как в примере:

    {
    	"VerificationApiConfiguration": {
    		"ApiKey": "ApiKey***",
    		"VerificationApiUrl": "https://test.ru"
    	},
    	"PolicyConfiguration": {
    		"Policy": "AllUsersWithExceptions",
    		"Exceptions": {
    			"Domains": {
    				"kid.com": {
    					"Groups": [
    						"OWATest2"
    					]
    				}
    			}
    		}
    	},
    	"ActiveDirectoryConfiguration": {
    		"DomainConfigurations": [
    			{
    				"DomainSettings": {
    					"Name": "test.com"
    				}
    			},
    			{
    				"DomainSettings": {
    					"Name": "test2.com"
    				}
    			}
    		]
    	},
    	"MarkerConfiguration": {
    		"MarkerExpiration": "08:00:00",
    		"IsMarkerNeverExpire": false
    	}
    }
  3.  Сохраните файл appsettings.json в той же папке, где расположен файл web.config.

Настройка двухфакторной аутентификации в OWA завершена.

Обновление OWA

Для предотвращения проблем с реальными пользователями рекомендуется сначала провести обновление в тестовой среде.

Перед началом обновления сделайте резервную копию текущих настроек. Это обеспечит возможность быстро вернуться к исходным параметрам при необходимости.

Процедура обновления OWA включает следующие шаги:

  1. В кабинете администратора скачайте актуальный модуль. Это может быть новая конфигурация или существующая, которую вы хотите обновить.

  2. Проверьте технические требования. Перед обновлением модуля убедитесь, что установлены следующие компоненты:

    1. Версия Exchange Server 2013 и выше.
    2. Microsoft.NET Framework 4.8 и выше.
  3. Распакуйте скачанный архив и замените файл OWAAdapter.dll на новый.

  4. Откройте файл web.config в папке C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa и сохраните его, чтобы применить изменения для нового модуля.
  5. Если вы используете несколько доменов, проверьте, что файл appsettings.json не изменен.

Таким образом, вы обновите модуль OWA и при этом сохраните текущие настройки.


Двухфакторная аутентификация на ваши ресурсы

Протестируй функциональность бесплатно в течении 2х недель

База знаний