1C
1С (https://1c.ru) — это группа программ для автоматизации бизнес-процессов.
Подключение 1С к Blitz Identity Provider выполняется по протоколу OpenID Connect и состоит из двух этапов:
-
Этап 1. Настройки на стороне 1С
-
Этап 2. Настройки на стороне Blitz Identity Provider
В инструкции для примера указано, что 1С расположен на домене https://1c.company.com
, а Blitz IDP установлен на домене https://login.company.com
. Уточните ваши адреса перед применением инструкции.
Этап 1. Настройки на стороне 1C
Выполните следующие действия:
- Откройте для редактирования конфигурационный файл 1С:
default.vrd
. Отредактируйте следующий блок:
-
name - укажите название Сервиса аутентификации. Например,
blitz
. -
title - укажите название Сервиса аутентификации, понятное пользователям. Название будет отображаться на кнопке страницы аутентификации. Например,
Blitz
. -
discovery - укажите URL для протокола конфигурации. Например,
https://login.company.com/blitz/.well-known/openid-configuration
. -
authorization_endpoint: укажите URL для авторизации. Например,
https://login.company.com/blitz/oauth/ae
. -
userinfo_endpoint: укажите URL сервиса получения данных пользователя. Например,
https://login.company.com/blitz/oauth/me
. -
token_endpoint: укажите URL для получения маркера доступа. Например,
https://login.company.com/blitz/oauth/te
. -
issuer: укажите URL поставщика аутентификации. Например,
https://login.company.com/blitz
. -
jwks_uri: укажите URL
https://login.company.com/blitz/.well-known/jwks
. -
authority: укажите URL авторизации
https://login.company.com/blitz/oauth
. -
client_id: укажите уникальное название для идентификации приложения. Например,
1C
. - client_secret: задайте секретный ключ для безопасной аутентификации приложения.
-
redirect_uri: укажите URL, на который пользователь будет перенаправлен после успешного входа в систему. Например,
http://login.company.com/Integr_planet_ERP/authform.html
. -
response_type: укажите тип ответа
token id_token
. -
scope: укажите необходимые разрешения для получения данных. Например, стандартный scope
profile
. -
filterProtocolClaims: укажите значение
false
. -
loadUserInfo: укажите значение
false
.
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
base="/Integr_planet_ERP"
ib="Srvr=localhost;Ref=Integr_planet_ERP;">
<standardOdata enable="false"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<analytics enable="true"/>
<ws publishExtensionsByDefault="true"/>
<openidconnect>
<providers>
<![CDATA[[
{
"name": "blitz",
"title": "Blitz",
"discovery": "https://login.company.com/blitz/oauth/.well-known/openid-configuration",
"providerconfig": {
"authorization_endpoint": "https://login.company.com/blitz/oauth/ae",
"userinfo_endpoint": "https://login.company.com/blitz/oauth/me",
"token_endpoint": "https://login.company.com/blitz/oauth/te",
"issuer": "https://login.company.com/blitz",
"jwks_uri": "https://login.company.com/blitz/oauth/.well-known/jwks"
},
"authenticationClaimName": "sub",
"clientconfig": {
"authority": "https://login.company.com/blitz/oauth",
"client_id": "1C",
"client_secret":"eXa12m3PL45e",
"redirect_uri": "http://login.company.com/Integr_planet_ERP/authform.html",
"response_type": "token id_token",
"scope": "profile openid",
"filterProtocolClaims": false,
"loadUserInfo": false
}
}
]]]>
</providers>
<allowStandardAuthentication>true</allowStandardAuthentication>
</openidconnect>
</point>
- Сохраните файл.
Этап 2. Настройки на стороне Blitz Identity Provider
В консоли управления Blitz Identity Provider перейдите в раздел Приложения и выполните следующие действия:
- Создайте новое приложение, задав его базовые настройки:
- Идентификатор (entityID или client_id): аналогичный client_id, который был прописан в default.vrd.
- Название: имя приложения 1C, которое будет отображаться на стороне Blitz IDP.
-
Домен:
https://1c.company.com
-
Нажмите Сохранить.
-
Далее нажмите кнопку Параметры у предложения 1C и отредактируйте параметры приложения:
-
Протоколы: выберите
OAuth 2.0
и нажмите Сконфигурировать
Далее в параметрах укажите данные, как в default.vrd
:
-
Секрет (client_secret): аналогичный client_secret, который был прописан в default.vrd
-
Префиксы ссылок возврата:
https://1c.company.com
-
Допустимые разрешения:
profile
openid
- Нажмите Сохранить.
После прохождения всех шагов рекомендуем проверить корректность входа в 1C: https://1c.company.com