Перейти к основному контенту

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. Откройте для редактирования конфигурационный файл 1С: default.vrd. Отредактируйте следующий блок:
  • name - укажите название Сервиса аутентификации. Например, blitz.
  • title - укажите название Сервиса аутентификации, понятное пользователям. Название будет отображаться на кнопке страницы аутентификации. Например, Blitz.
  • discovery - укажите URL для протокола конфигурации. Например, https://login.company.com/blitz/oauth/.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/oauth/.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>
  1. Сохраните файл.

Этап 2. Настройки на стороне Blitz Identity Provider

В консоли управления Blitz Identity Provider перейдите в раздел Приложения и выполните следующие действия:

  1. Создайте новое приложение, задав его базовые настройки:
  • Идентификатор (entityID или client_id): аналогичный client_id, который был прописан в default.vrd.
  • Название: имя приложения 1C, которое будет отображаться на стороне Blitz IDP.
  • Домен: https://1c.company.com

  1. Нажмите Сохранить.

  2. Далее нажмите кнопку Параметры  у предложения 1C и отредактируйте параметры приложения:

  • Протоколы: выберите OAuth 2.0 и нажмите Сконфигурировать

Далее в параметрах укажите данные, как в default.vrd:

  • Секрет (client_secret): аналогичный client_secret, который был прописан в default.vrd

  • Префиксы ссылок возврата: https://1c.company.com

  • Допустимые разрешения: profile openid

  1. Нажмите Сохранить.
Совет:

После прохождения всех шагов рекомендуем проверить корректность входа в 1C: https://1c.company.com