ТокенДоступа.Подписать

Методы · Sign

Добавляет токену доступа подпись по указанному в параметрах алгоритму.

Синтаксис

Подписать(<АлгоритмПодписи>, <ИнформацияОКлюче>)
Полное описание, параметры и ограничения

ТокенДоступа.Подписать (AccessToken.Sign)

ТокенДоступа (AccessToken)

Подписать (Sign)

Доступен, начиная с версии 8.3.21.

Синтаксис:
Подписать(<АлгоритмПодписи>, <ИнформацияОКлюче>)
Параметры:

<АлгоритмПодписи> (обязательный)
Тип: АлгоритмПодписиТокенаДоступа.
Алгоритм подписи токена доступа.

<ИнформацияОКлюче> (необязательный)
Тип: Строка.
Строка в формате Base64.
Информация о ключе, который используется для формирования подписи в формате PEM.
Данный параметр является необязательным только, если не указан алгоритм подписи, т.е. при вызове этого метода <АлгоритмПодписи> имеет значение Нет.
Описание:

Добавляет токену доступа подпись по указанному в параметрах алгоритму.

Доступность:

Тонкий клиент, сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.3.21.

Описание изменено в версии 8.3.26.

Методическая информация

Практические примеры

JWT: подписать собственную синтетическую нагрузку ключом своей лаборатории

Вызов подписывания настоящего токена с собственной нагрузкой, без авторизации или отправки.

Где и как запускать

Сервер, тонкий или толстый клиент; собственный тестовый RSA-ключ.

Подготовка

  1. КлючPEMВBase64 — действительная строка Base64 с PEM-данными собственного тестового закрытого RSA-ключа, подготовленная по требованиям Подписать. Не используйте рабочие ключи.

  2. Фрагмент выполняется в тонком/толстом клиенте либо на сервере. Данные нагрузки синтетические: 250 и 6; секрет и токен не выводятся.

Заголовки = Новый Соответствие;
Заголовки.Вставить("typ", "JWT");
Нагрузка = Новый Соответствие;
Нагрузка.Вставить("price", 250);
Нагрузка.Вставить("quantity", 6);
Токен = Новый ТокенДоступа(Заголовки, Нагрузка);
Токен.Подписать(АлгоритмПодписиТокенаДоступа.RS256, КлючPEMВBase64);
Сумма = Токен.ПолезнаяНагрузка.Получить("price") * Токен.ПолезнаяНагрузка.Получить("quantity");
Сообщить("Учебная нагрузка после подписывания: " + Строка(Сумма));

Разбор по шагам

  1. Создайте реальные заголовки и собственную нагрузку.

  2. Подпишите нативный токен алгоритмом RS256 своим тестовым ключом.

  3. Прочитайте собственные числовые поля и вычислите сумму.

Как проверить результат

  1. Расчет нагрузки должен быть 1500.

  2. Подпись отдельно проверяйте доверенным валидатором своего тестового сервиса; наличие токена не означает разрешение доступа.

Ожидаемый результат

Вызов подписывания настоящего токена с собственной нагрузкой, без авторизации или отправки.

На что обратить внимание

  1. Подписать — процедура, ее результат не присваивается. Ключевой материал должен отвечать формату метода; произвольная строка не является ключом. Это не руководство по безопасной политике JWT и не доказательство проверки токена сервером.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.