Подписи и токены
Начальная операция crypto.jwt_sign подписывает JWT.
Параметры
| Параметр | Значение | По умолчанию |
|---|---|---|
operation | jwt_sign | Обязательно |
claims | Содержимое токена | Обязательно |
key | Ключ через секрет | Обязательно |
algorithm | RS256 или HS256 | RS256 |
ttl_seconds | Положительное время жизни в секундах | 3600 |
Пример
- id: auth
block: crypto
params:
operation: jwt_sign
claims:
iss: "{inputs.service_account}"
aud: "{inputs.token_url}"
key: "{secret.SIGNING_KEY}"
algorithm: RS256
ttl_seconds: 3600Результат
token, expires_in — токен и время жизни в секундах. Например, {auth.token} передаётся в следующий HTTP-запрос.
Поведение
iat и exp вычисляются из TTL; конфликтующие значения отклоняются. Остальные claims задаёт workflow. Обмен JWT на токен доступа выполняется отдельно через http.
Параметры операций
Используются claims, ссылку на ключ, явный алгоритм и TTL. Время жизни не ограничивается универсальным потолком 3600 секунд: допустимый максимум ограничивает политика установки, а ограничения конкретного API задаёт вызывающий workflow. Значение по умолчанию остаётся 3600; прежний v1 не меняется.
Автоматические iat/exp не должны молча перезаписывать входные claims: конфликт отклоняется. Подпись и проверка подписи — разные операции; последняя не добавляется скрыто в jwt_sign.
Плагины и установка
В составе блока: Хеширование SHA-256/512 и HMAC.
| Плагин | Возможности |
|---|---|
jwt | Подпись JWT с RS256/HS256 |
signatures | Асимметричные подписи сообщений |
passwords | Специализированные хеши паролей |
Таблица параметров выше относится к JWT. У других операций собственные схемы. Служебное шифрование секретов платформы не требует workflow-блока crypto.