Настройка входа через OAuth

В этой статье:

Шаг 1. Настройка подключения к репозиторию

Шаг 2. Настройка параметров для протоколов OAuth

Шаг 3. Подготовка BI-сервера

Шаг 4. Подготовка и открытие веб-приложения

Для авторизации пользователей при подключении к репозиторию в веб-приложении доступно использование протоколов OAuth версии 1.1 и OAuth версии 2.0.

Протокол OAuth 1.1 позволяет авторизоваться под учётной записью сервиса Twitter, протокол OAuth 2.0 - под учётными записями других сервисов, поддерживающих данный протокол, например, Google.

Для настройки входа в систему с одновременным использованием протоколов OAuth 1.1 и OAuth 2.0 выполните шаги, указанные ниже.

Шаг 1. Настройка подключения к репозиторию

Для настройки подключения к репозиторию:

  1. Добавьте в реестр параметр Alg:

В ОС Windows запустите редактор реестра с помощью файла regedit.exe, расположенного по пути C:\Windows:

1.2.  Перейдите в раздел HKEY_CURRENT_USER\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\Debug\Crypt, в котором хранится закрытый ключ сертификата безопасности.

1.3.  Создайте строковый параметр Alg:

    1. В контекстном меню раздела выполните команду «Создать > Строковый параметр».

    2. Параметр будет создан, его наименование будет переведено в режим редактирования. Введите наименование Alg и нажмите клавишу ENTER.

Примечание. Если параметр Alg уже существует, то пропустите данный шаг.

1.4.  Установите значение «GOST» для параметра Alg:

    1. Дважды щелкните основной кнопкой мыши по параметру Alg или выполните команду «Изменить» в контекстном меню параметра.

    2. В открывшемся окне «Изменение строкового параметра» в поле «Значение» введите значение «GOST».

    3. Нажмите кнопку «OK».

В ОС Linux откройте файл registry.reg, в котором хранятся настройки реестра, и выберите один из способов:

  • вручную добавьте параметр Alg со значением «GOST» в разделе реестра HKEY_CURRENT_USER\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\Debug\Crypt;

  • экспортируйте раздел реестра ОС Windows с добавленным параметром Alg в файл и импортируйте его в ОС Linux.

Для получения подробной информации о настройках реестра в ОС Linux обратитесь к разделу «Конфигурация и настройка».

  1. Запустите утилиту PP.Util, расположенную в папке с установленным продуктом «Форсайт. Аналитическая платформа», с помощью командной строки от имени администратора.

2.1.  Убедитесь, что для пула веб-приложения задана учётная запись операционной системы.

2.2.  Сохраните зашифрованный пароль для входа в репозиторий:

PP.Util /save_creds "идентификатор репозитория" /dc "имя пользователя репозитория"

После выполнения действия будет запрошен пароль для подключения к репозиторию. Введите пароль, после чего будет выведено сообщение «Password for metabase 'идентификатор репозитория' and login 'имя пользователя' saved».

2.3.  Сгенерируйте закрытый ключ и сертификат, представляющие собой личную цифровую подпись пользователя. Закрытый ключ и сертификат генерируются в формате PEM при помощи специальных программных средств, например, OpenSSL. Для получения подробной информации об использовании сертификата обратитесь к разделу «Пример настройки двухфакторной аутентификации».

2.4.  Сохраните сгенерированный сертификат в репозиторий:

PP.Util /save_cert "путь до сертификата" <идентификатор репозитория> <имя пользователя>

После выполнения действия будет запрошен пароль указанного пользователя. Полученные учетные данные будут использоваться для подключения к репозиторию. При удачной авторизации и сохранении сертификата будет выведено сообщение «Certificate from file 'путь до сертификата' with identifier 'идентификатор сертификата' saved to metabase 'идентификатор репозитория'».

2.5.  Сохраните сгенерированный закрытый ключ в реестре:

PP.Util /save_private_key "путь до файла ключа" <идентификатор сертификата> <алгоритм 
шифрования := gos|pro, если не указан, то pro>

После выполнения действия будет выведено сообщение «Certificate from file 'путь до ключа' with identifier 'идентификатор сертификата' saved».

После выполнения действий будет настроено подключение к репозиторию.

Шаг 2. Настройка параметров для протоколов OAuth

Для протоколов OAuth в редакторе реестра ОС Windows или в файле registry.reg в ОС Linux добавьте подразделы с именами OAuth-серверов и задайте соответствующие настройки реестра в разделе реестра HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\9.0\PP\BIS\System\OAuth, или сформируйте раздел System в файле settings.xml:

Значения, указываемые в параметрах ConsumerKey и ConsumerSecret, могут будут получены после регистрации разрабатываемого приложения на необходимом OAuth-сервере. Данные параметры необходимы, чтобы после авторизации на OAuth-сервере BI-сервер смог проверить и авторизовать соответствующего пользователя в репозитории.

Если параметры ConsumerKey и ConsumerSecret не указаны, то используются внутренние настройки BI-сервера, при этом на OAuth-сервере должно быть зарегистрировано приложение на базе веб-приложения «Форсайт. Аналитическая платформа».

После выполнения действий будут заданы параметры для протоколов OAuth.

Шаг 3. Подготовка BI-сервера

Для подготовки BI-сервера проверьте наличие интернета на сервере, где установлен BI-сервер, и убедитесь, что доступ к сайтам сервисов открыт.

Если интернет-соединение осуществляется через прокси-сервер, то создайте системные переменные CURLOPT_PROXY и CURLOPT_PROXYUSERPWD:

В ОС Windows откройте дополнительные параметры системы с помощью контекстного меню компьютера «Свойства > Дополнительные параметры системы»:

  1. На вкладке «Дополнительно» диалогового окна «Свойства системы» нажмите кнопку «Переменные среды».

  2. В разделе «Системные переменные» диалогового окна «Переменные среды» нажмите кнопку «Создать»:

    • CURLOPT_PROXY. Задайте переменной значение «proxy.sever.ru:8080», в котором содержится адрес прокси-сервера и порт, через который осуществляется подключение;

    • CURLOPT_PROXYUSERPWD. Задайте переменной значение «login:password», в котором содержится имя пользователя и пароль для подключения к интернету.

В ОС Linux добавьте переменные окружения в файл envvars, расположенный по пути /etc/opt/Foresight/fp9.2-biserver. В файле содержатся переменные окружения, которые считываются при старте BI-сервера с экземпляром Apache2.

Добавьте переменные:

  • CURLOPT_PROXY. Задайте переменной значение «proxy.sever.ru:8080», в котором содержится адрес прокси-сервера и порт, через который осуществляется подключение;

  • CURLOPT_PROXYUSERPWD. Задайте переменной значение «login:password», в котором содержится имя пользователя и пароль для подключения к интернету.

Переменные добавляются в файл в формате:

export <имя переменной>=<значение>

Для получения подробной информации о добавлении переменных окружения ОС Linux обратитесь к разделу «Конфигурация и настройка».

После выполнения действий будет подготовлен BI-сервер.

Шаг 4. Подготовка и открытие веб-приложения

Для подготовки веб-приложения:

  1. В файле PP.xml задайте значение «OAuth» для атрибута authentication в разделе <metabase> и значение true для атрибута enabled в разделе <oAuthService>:

<pp>

    <metabase authentication="OAuth" id="идентификатор репозитория"/>
    <oAuthService enabled="true"/>

</pp>
  1. Перезапустите BI-сервер.

  2. Откройте веб-приложение.

После выполнения действий на странице login.html будут доступны кнопки авторизации для входа в систему с использованием протоколов OAuth:

Выберите репозиторий и нажмите кнопку одного из сервисов авторизации без ввода имени пользователя и пароля. После чего будет осуществлен переход на страницу учетной записи соответствующего сервиса, например, Twitter или Google. Введите имя пользователя и пароль на странице сервиса и нажмите кнопку «Авторизоваться». При успешной авторизации будет открыта стартовая страница веб-приложения.

См. также:

Вопросы и ответы | Настройка входа через SAML