Получение токена


Прямой gRPC-запрос к NativeBL может быть анонимный. Если выполняется HTTP-запрос к web-серверу, то необходимо использовать авторизацию Basic, т.к. анонимные запросы к web-серверу запрещены.

Тело запроса:

{
 "method": "ITV.bl.auth.AuthenticationService.AuthenticateEx",
 "data": {
  "user_name" : "root",
  "password" : "root"
 }
}

Пример ответа:

{
 "token_name": "auth_token",
 "token_value": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiIqLioiLCJleHAiOjE2MDUxOTIxMDcsImlhdCI6MTYwNTE3NzcwNywiaXNzIjoiVi1CRUxZQUtPViIsImxnbiI6InJvb3QiLCJybHMiOlsiOTc0NWI5MDItMmEzNi00MDM1LWJkZDYtMDEyZTBkYWU2NmMwIl0sInNpZCI6Ijk3YjA3ZWQ0LTEzOTctNGFiNC1iZjZiLWQwNTUwYmM1YjcwMSIsInN1YiI6IjMyOGUzODc0LTRhMzMtOWRkMS0yOWViLTQ0YzM3YTQ0MTIxYyJ9.nkqap2aosAafD41vPIICJjIaVCWwGnC1nZRFrPWkt8JpgUnQsxAaZMa1UwIdsTicnH9vWeq6laQgmRJagVnWcunjoJ6wHWptwfk-pGT49YE9V1_PMT_1f3wQoc8Hl5a118DXECQc2lcu56U0H74C9PBc2Xmh-8fbvaWws65y0Ly4rDbwEWdMd-0ocnnErpSiFOr-XEnok9PIVXo_mjgWsg1zxBlgijWqA4jVoQdfBvKzGpTFLxXgguDvCDZQyF3LfpxtjB1jNsZgaFHzxPkloLeq2eQ8TY2Y1g4BDDNW2QU-Ee-DhWoKIMrRWWhsbHLDMNC2sNpNVw0MMMEYSjDyng",
 "expires_at": "20201112T144147",
 "is_unrestricted": true,
 "user_id": "328e3874-4a33-9dd1-29eb-44c37a44121c",
 "roles_ids": [
  "9745b902-2a36-4035-bdd6-012e0dae66c0"
 ],
 "error_code": "AUTHENTICATE_CODE_OK"
}

где

token_value - Bearer токен. Полученный токен необходимо использовать в метаданных gRPC-запроса. HTTP-запросы нужно выполнять с типом авторизации Bearer, используя полученный токен.

expires_at - дата и время истечения токена в часовом поясе UTC.

Продление действия токена

Тело запроса:

{
	"method": "ITV.bl.auth.AuthenticationService.RenewSession",
	"data":
	{		
	}
}

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

На момент выполнения запроса токен должен быть активен.

Закрытие токена

Тело запроса:

{
	"method": "ITV.bl.auth.AuthenticationService.CloseSession",
	"data":
	{
	}
}

Пример ответа:

{
 "error_code": "OK"
}