SDK. JWT токен
JWT (JSON Web Token) должен быть подписан с использованием алгоритма HMAC-SHA256 (“HS256”), ключом для подписи является параметр jwt_secret, который вы получите с остальными параметрами интеграции от службы заботы Экзамус.
Больше информации о JSON Web Token можно найти на jwt.io, там же есть ссылки на библиотеки для работы с ним.
Важно отметить, что токен JWT должен генерироваться на стороне сервера, а не на стороне клиента, чтобы избежать утечки секретов.
JWT генерируется по правилам, описанным в разделе Запуск тестирования с прокторингом.
Ещё раз обратите внимание, на то, что JWT должен быть сгенерирован на стороне сервера и передан на frontend уже сформированным.
Пример JWT
Payload
{
"userId": "1232134",
"lastName": "Smith",
"firstName": "John",
"thirdName": "",
"language": "en",
"accountId": 123,
"accountName": "Corporate university",
"examId": "a3875623",
"courseName": "Physics",
"examName": "Final test",
"userAgreementUrl": "https://school.org/eula",
"duration": 120,
"schedule": false,
"auxiliaryCamera": false,
"proctoring": "offline",
"identification": "passport",
"rules": {
"allow_to_use_paper": false,
"allow_to_use_calculator": false
},
"startDate": "2018-03-27T00:00:00Z",
"endDate": "2018-03-30T12:55:00Z",
"sessionId": "828331bda025",
"sessionUrl": "https://go.bananas.com/opentest#test/b3875623",
"exp": 1612994131,
"biometricIdentification": {
"enabled": true,
"photo_url": "
",
",
"skip_fail": false, "flow": "test-flow"
},
"scoreConfig": {
"cheater_level": 80,
"extra_user": 1.0,
"user_replaced": 1.0,
"absent_user": 1.0,
"look_away": 1.0,
"active_window_changed": 1.0,
"forbidden_device": 1.0,
"voice": 1.0,
"phone": 1.0
},
"visibleWarnings": {
"warning_extra_user_in_frame": false,
"warning_timeout": false
}
}
Полный список полей payload доступен в нашей документации по API