Aвторизации запросов
Auth service является сервисом для авторизации запросов к CyberWay. Для работы сервису необходим совместимый фасад-сервис, осуществляющий конечное общение с системой.
Основное
Микросервис реализует два метода:
'auth.authorize': принимает параметр вида
{ user, sign, secret, channelId }
и возвращает данные вида{ user, roles: []}
либо ошибку авторизации. Авторизация происходит следующим образом: сначала проверяется, соответствует ли значение параметраsecret
(в виде буфера) тому, что уже хранится для этогоchannelId
и проверяется, верифицирована ли подпись по этому ключу. Если да, то авторизация считается успешной. Иначе, будет возвращена ошибка авторизации.'auth.generateSecret': принимает параметр вида
{ channelId }
и возвращает сгенерированный секрет. Секрет представляет собой строку, содержащую восьмиричный хешsha1
, рассчитанный для строки, состоящей изchannelId
и рандомной строки в качестве "соли"
API JSON-RPC
Описание принимаемых параметров:
Переменные окружения
Возможные переменные окружения ENV
:
GLS_CONNECTOR_HOST
(обязательно) - адрес, который будет использован для входящих подключений связи микросервисов. Дефолтное значение -0.0.0.0
GLS_CONNECTOR_PORT
(обязательно) - адрес порта, который будет использован для входящих подключений связи микросервисов. Дефолтное значение -3000
GLS_METRICS_HOST
(обязательно) - адрес хоста для метрик. Дефолтное значение при запуске без докера -0.0.0.0
GLS_METRICS_PORT
(обязательно) - адрес порта для метрик. Дефолтное значение при запуске без докера -9777
GLS_CYBERWAY_HTTP_URL
(обязательно) - строка коннекта к блокчейну
Запуск
Для запуска достаточно вызвать команду docker-compose up --build
в корне проекта, предварительно указав необходимые ENV
переменные.
Last updated