Статус: Новичок
Группы: Участники
Зарегистрирован: 22.08.2023(UTC) Сообщений: 1
|
Здравствуйте. В ЕСИА для получения кода авторизации по эндпоинту /aas/oauth2/ac мы формируем client_secret такой командой cryptcp -signf -dir "${dirName}" -thumbprint "${containerHash}" -norev -nochain "${tempFile}" -cert -der -strict -hashAlg "1.2.643.7.1.1.2.2" -detached -pin ${CERTIFICATE_PIN}. Дальше кодируем в формат base64 url safe. Получение кода происходит успешно. Документация для /aas/oauth2/ac: Цитата:<client_secret> – подпись запроса в формате PKCS#7 detached signature в кодировке UTF- 8 от значений четырех параметров HTTP–запроса: scope, timestamp, clientId, state (без разделителей). <client_secret> должен быть закодирован в формате base64 url safe Но получение кода авторизации по новому эндпоинту /aas/oauth2/v2/ac вызывает вопросы: 1) что подразумевается под алгоритмом подписания data hash? 2) что нужно подправить в команде что бы client_secret соответствовал новому эндпониту? Документация для /aas/oauth2/v2/ac: Цитата:<client_secret> - подпись значений пяти параметров в кодировке UTF-8: client_id, scope, timestamp, state, redirect_uri. конкатенировать вышеуказанные параметры; подписать полученную строку с использованием алгоритма подписания data hash с использованием механизмов КриптоПРО CSP и сертификата информационной системы; закодировать полученное значение в URL Safe Base64.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 31.05.2016(UTC) Сообщений: 2,459
Сказал(а) «Спасибо»: 588 раз Поблагодарили: 426 раз в 405 постах
|
Не разу не разработчик, но попробую "расшифровать" написанное: Цитата:конкатенировать вышеуказанные параметры client_id, scope, timestamp, state, redirect_uri Получить строку из указанных параметров; Цитата:подписать полученную строку с использованием алгоритма подписания data hash с использованием механизмов КриптоПРО CSP и сертификата информационной системы Высчитать hash полученной выше строки и подписать этот хэш; Цитата:закодировать полученное значение в URL Safe Base64. Тут вроде как понятно. Автор: Glumsik_onp  1) что подразумевается под алгоритмом подписания data hash? 2) что нужно подправить в команде что бы client_secret соответствовал новому эндпониту? Перед Вашим подписанием получить хэш строки, в общем случае выглядит так Код:cryptcp -hash -dir "${dirName}" *.extension
А уже после её и подписать. Отредактировано пользователем 29 августа 2023 г. 13:36:46(UTC)
| Причина: Не указана
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 06.07.2022(UTC) Сообщений: 6 
|
присоединяюсь к вопросу. Коллеги, поделитесь решением. Как подписать через КриптоПро строку client_secret для получения авторизационного кода через https://esia-portal1.tes...lugi.ru/aas/oauth2/v2/ac ??? По возможности примерами к командной строке. Если есть кусок кода на Golang - это просто будет чудесно. Все что выше перепробовали - получаем ошибку ESIA-007053. При этом самописное решение работает, но использовать его нельзя в боевой системе.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,506   Сказал «Спасибо»: 554 раз Поблагодарили: 2251 раз в 1756 постах
|
Автор: saaremaa  присоединяюсь к вопросу. Коллеги, поделитесь решением. Как подписать через КриптоПро строку client_secret для получения авторизационного кода через https://esia-portal1.tes...lugi.ru/aas/oauth2/v2/ac ??? По возможности примерами к командной строке. Если есть кусок кода на Golang - это просто будет чудесно. Все что выше перепробовали - получаем ошибку ESIA-007053. При этом самописное решение работает, но использовать его нельзя в боевой системе. а этот ответ с примером команды уже проверили? |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close