Все запросы от клиента к серверу осуществляются посредством HTTP-запросов. Каждый запрос должен содержать заголовки следующего содержания:

Authorization: Bearer [oauth-token]
где
oauth-token – ключ доступа в формате JSON Web Token (JWT).

Данный токен будет формироваться из трех частей.

Заголовок

{
  "alg": "HS256",
  "typ": "JWT"
}

Полезная нагрузка

{
  "exp": "1234567890",
  "sPol": "98-96",
  "nPol": "23465787",
  "birthday": "1987-05-18"
}


где
sPol – серия полиса ОМО;
nPol – номер полиса ОМО;
birthday – дата рождения;
exp – отметка времени в UNIX формате, когда истекает срок действия токена.

Подпись

Заголовок и нагрузка кодируются в base64. Затем они объединяются в строку через точку.
Затем эта строка и секретный ключ поступает на вход алгоритма шифрования, указанного в заголовке (ключ «alg»). Секретный ключ это строка, которая автоматически формируется и хранится на серверной и клиентской стороне.
Пример:
HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)

Окончательный JWT выглядит следующим образом: заголовок, полезная нагрузка в кодировке base64, а также подпись объединяются в одну строку, разделенные точкой.
Пример.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ

  • Нет меток