1С:Шина. Авторизация с токеном

29.01.25

Администрирование - Информационная безопасность

Практический пример использования авторизации Bearer на 1С:Шина. Рассматривается вариант настройки 1С:Шина для использования по авторизации с использованием токена. Получение идентификатора пользователя, который подключается к шине, и фиксация его действия после подключения. Для тестовой отправки post запросов используется Postman.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Выгрузка с авторизацией по токену
.zip 5,40Mb
2 3 000 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Статья написана по хроникам внедрения 1С:Шина версии 6.1.6 в Первом Бите на Спортивной.

Начало можно почитать тут, в этой статье дополнение по дополненному функционалу. Вообще статьи независимы.

Источ ники:

  • Официальная документация по продукту 1С:Шина. Ссылка

Описание задачи

Клиент озвучил, что хочет авторизацию логин-пароль не использовать, а чтобы на его http сервисе была авторизация по токену Bearer (описанный функционал также применим и к web сервисам), а также информации при успешной авторизации при подключении к шине должна сохраняться в регистр.

Идем в документацию и получаем метод, но предварительно сделаем ряд настроек по настройкам доступа, это хорошо описано в документации тут, то есть возможность настроить отдельно на http сервис или более детально на отдельный шаблон или еще детальней на отдельный метод.

Я выбрал вариант и выдал права целиком на http сервис, см дальше скрины моих настроек

 

Рисунок 1. Настройка http сервиса

 

Далее для шаблона и для метода оставляем незаполненным

 

Рисунок 2. Настройка шаблона

 

Рисунок 3. Настройка метода

 

Если вы создаете новые элементы, то все будет работать, но я изменял с анонимного варианта (выбрать Разрешено всем) и в документации нашел пункт, что надо выполнить пересчет прав.

Заходите в свое приложение и делаете как указано на рисунке 4, ниже

 

Рисунок 4. Пересчитать права

 

Добавляем пользователя и разрешаем ему доступ к приложению HTTP

Обычно у приложения создается список пользователей, поэтому мы так и сделаем.

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

 

Рисунок 5. Создание пользователя

 

Далее подключаем пользователя, рисунок  6.

 

Рисунок 6. Подключение пользователя к приложению

 

и через 3 точки меняем настройки прав у пользователя test2,

 

Рисунок 7. Изменить настройки у пользователя test2

 

и ставим галку

 

Рисунок 8. Предоставление права пользователю на подключение к http сервисам приложения

 

После этого у пользователя генерируем ключи доступа пару clientid и secretid, для этого провалились в пользователя и в разделе ключи доступа нажали получить

 

Рисунок 9. Получение ключей доступа для пользователя

 

clientid вам будет доступен, а вот secretid только раз доступен на этапе получения.

Уже полученные ключи доступа используем в токенах, отправляем POST запрос на url: http://localhost:9090/applications/НазваниеПриложения/sys/token

в Header добавляем

ContentType application/x-www-form-urlencoded

и в тело следующий текст

grant_type=CLIENT_CREDENTIALS

Если все правильно указано, то шина вернет вам 200 ответ и токен, который действует 1 час.

Теперь надо понять, как получить того, кому принадлежит токен при подключении и записать его в РС внутри 1С-шина.

Это то, что я не увидел в документации, но было  получено от техподдержки 1С:Шина.

// Перечисление
конст order = ТипыЗапросов.order

метод ОбработкаЗапроса(Запрос: HttpСервисЗапрос)
знч ТелоЗапросаИзПотока = Запрос.Тело.ПрочитатьКакСтроку()
пер ГуидВызова = новый Ууид()
знч Пользователь = Пользователи.ТекущийПользователь
        //Запись в РС Сообщения из внешних систем.
        //ГуидВызова - уид для сообщения, ДатаЗаписи - дата и время когда была сделана запись, ИсходноеСообщение - тело которое нам пришло
        //Пользователь - элемент справочника Пользователи, под которым подключились к шине и было отправлено  сообщение

        пер Запись = новый СообщенияДляВнешнихСистем.Запись(Период = Момент.Сейчас(), ГуидВызова = ГуидВызова,
                ДатаЗаписи = ДатаВремя.Сейчас(
				ЧасовойПояс {UTC+3}), ИсходноеСообщение = ТелоЗапросаИзПотока, Пользователь = Пользователь, ТипЗапроса = order,
                Обработано = Истина)
        СообщенияДляВнешнихСистем.Записать(Запись)
;

 

Перечисление создается вообще без каких либо сложностей.

РС "СообщенияДляВнешнихСистем", создать с периодом Момент, также имеет следующую структуру:

Измерения:

  • ГуидВызова. ТипУуид
  • Пользователь. ТипНеопределено, ПользовательСсылка

Ресурсы:

  • ИсходноеСообщение. Тип Строка неограниченная
  • Обрабатано. Тип Булево
  • ТипЗапроса. Тип Перечисление.ТипыЗапросов

Реквизиты:

ДатаЗаписи. Тип ДатаВермя

 

Отдельно выгрузку из шины не создавал, если будет потребность, то пишите в комментарии, дополню статью.

Все скрины сделаны на основе сервиса из первоначальной статьи

Еще раз - вся информация есть в статье, настройка несложная, будут вопросы - пишите, подскажу.

Скачивать архив - это тому, кому лень читать и повторять и для поддержки автора.

Вступайте в нашу телеграмм-группу Инфостарт

токен авторизация на 1С-Шина идентификация пользователя

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    266415    1483    421    

1177

Зарплата Роли и права Системный администратор Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Молдова Россия Казахстан Бухгалтерский учет Платные (руб)

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

9675 руб.

27.05.2021    57594    490    129    

351

Информационная безопасность Поиск данных ServiceDesk, HelpDesk Журналы и реестры данных 1С 8.3 Россия Бухгалтерский учет Бюджетный учет Налоговый учет Управленческий учет Платные (руб)

Полный контроль над изменениями в 1С без нагрузки на вашу базу. Мгновенный доступ к истории изменений, удобное сравнение и откат данных в один клик. Простой отчет с визуальным отображением изменений Откат на любую версию объекта в два клика История изменения данных хранится во внешней базе

180000 руб.

05.09.2025    5015    2    1    

3

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    26204    97    46    

104

Информационная безопасность Инструменты администратора БД Инструментарий разработчика Учет документов Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С 8.5 Розничная и сетевая торговля (FMCG) Платные (руб)

Контроль ввода данных в 1С: проверка заполнения реквизитов, обязательные поля, контроль перед записью и проведением, запрет проведения документа. Позволяет настраивать любые проверки данных в 1С 8.3/8.5 от обязательных полей до сложных условий – без открытия конфигуратора и написания кода. Готовое расширение, которое подключается и работает сразу.

6000 руб.

15.04.2026    2434    6    0    

21

SALE! 20%

Роли и права 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Универсальная обработка по настройке прав доступа пользователей в 1СЗУП, КА, УТ, ЕРП, ERP, УНФ, Розница, Управление холдингом) и разграничений позволяет в несколько кликов настроить даже самые нестандартные права.

5750 4600 руб.

22.12.2021    37094    204    78    

236

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.04.2026, версия 1.4.1, работает в 1С:ФРЕШ!

23180 руб.

06.12.2023    23855    82    10    

115
Для отправки сообщения требуется регистрация/авторизация