Ошибки формирования подписи
Опубликовано Андрей Солдатов on 2021-05-10 23:01

Типовые ошибки при формировании подписи в веб-интерфейсе сервиса подписи.

1.1. Размер переданного файла превышает максимально допустимый размер

1.2. Неперехваченное исключение: Код состояния ответа не указывает на успешное выполнение: 413 (Request entity too large)

Возможные причины возникновения ошибки:
На подпись был передан документ, чей размер превышает заданный в настройках сервисов DSS.

Рекомендуемое решение:
Изменить значения для максимальных размеров документов сервисов DSS, в соответствие с руководством.

2. Неперехваченное исключение: Message: invalid_certificate MessageDetail: Сертификат не найден или недействителен

Диагностика:
Ошибка в «Журналы приложений и служб -> CryptoPro-> DSS-> SignServer-> Admins».

Пример:
Instance Unique Identifier: 1/signserver Source: SignDocumentRequestValidator Message: SignDocumentRequestValidator. Ошибка: invalid_certificate;
Описание: Сертификат не найден или недействителен.;

Возможные причины возникновения ошибки:
- Ошибка при проверке сертификата подписанта на сервере DSS;
- Сертификат подписанта был отозван/приостановлен.

Рекомендуемое решение:
- Обеспечить проверку сертификата подписанта на сервере DSS (путем установки цепочки сертификатов издателей в хранилище локального компьютера сервера DSS);
- Обеспечить проверку сертификата подписанта на сервере DSS на отзыв (путем установки CRL в хранилище «Промежуточные центры сертификации» локального компьютера сервера DSS или обеспечив доступность CRL по ссылкам, указанным в расширении "Точки распространения списков отзыва" сертификата подписанта и цепочки сертификатов издателей);
- Убедиться, что сертификат подписанта не был отозван/приостановлен. 

3. При формировании подписи формата CAdES T/XLT1 возвращается ошибка "Произошла ошибка при получении штампа времени. Ошибка: [При попытке отправки запроса возникла ошибка HTTP]. Код: [0xc2100100]"

Возможные причины возникновения ошибки:
С сервера DSS нет сетевой доступности до службы штампов времени (TSP), выбранной при формировании подписи.

Рекомендуемое решение:
Обеспечить сетевую доступность до службы штампов времени с сервера DSS. Затем проверить работоспособность службы, в соответствие с п. 7.2 "ЖТЯИ.00094-01 91 02 Службы УЦ 2.0. КриптоПро TSP Server. Руководство администратора".

4. При формировании подписи формата CAdES XLT1 возвращается ошибка "Произошла ошибка при получении OCSP-ответа. Ошибка: [При попытке отправки запроса возникла ошибка HTTP]. Код: [0xc2110100]"

Возможные причины возникновения ошибки:
С сервера DSS нет сетевой доступности до службы проверки статусов сертификатов (OCSP), адрес которой указан в расширении "Доступ к информации о центрах сертификации" сертификата подписанта.

Рекомендуемое решение:
Обеспечить сетевую доступность до службы проверки статусов сертификатов. Затем проверить работоспособность службы, в соответствие с п. 7.3 "ЖТЯИ.00094-01 91 01 Службы УЦ 2.0. КриптоПро OCSP Server. Руководство администратора".

5. При формировании подписи формата CAdES T/XLT1 возвращается ошибка "Произошла ошибка при формировании CAdES подписи. Ошибка: [Группа или ресурс не находятся в нужном состоянии для выполнения требуемой операции]. Код: [0x8007139f]"

Возможные причины возникновения ошибки:
Остановлена служба штампов времени (TSP)/проверки статусов сертификатов (OCSP). 

Рекомендуемое решение:
Запустить службы на стороне сервера "КриптоПро Службы УЦ". Затем проверить работоспособность службы штампов времени, в соответствие с п. 7.2 "ЖТЯИ.00094-01 91 02 Службы УЦ 2.0. КриптоПро TSP Server. Руководство администратора" и работоспособность службы проверки статусов сертификатов, в соответствие с п. 7.3 "ЖТЯИ.00094-01 91 01 Службы УЦ 2.0. КриптоПро OCSP Server. Руководство администратора".

6. При загрузке документа для подписи возвращается ошибка "Message: Authorization has been denied for this request"

Диагностика:
Ошибки в «Журналы приложений и служб -> CryptoPro-> DSS-> DocumentStore-> Admins».

Примеры:

А) Неавторизованный доступ по пути [https://testdss/documentstore/api/documents]: Недостаточно прав у пользователя []

Б) Instance Unique Identifier: 1/documentstore] Source: Microsoft.Owin.Security.OAuth.OAuthBearerAuthenticationMiddleware Message: Authentication failed
System.IdentityModel.Tokens.SecurityTokenSignatureKeyNotFoundException: IDX10505: Unable to validate signature. The 'Delegate' specified on TokenValidationParameters, returned a null SecurityKey.

Возможные причины возникновения ошибки:
- На сервисе обработки документов не настроены отношения доверия с центром идентификации;
- Истек срок действия сервисного сертификата сервиса обработки документов. 

Рекомендуемое решение:
- Запросить отпечаток сервисного сертификата ЦИ: $idp_cert = (Get-DssStsProperties).ServiceCertificate
- Указать отпечаток сервисного сертификата ЦИ на сервисе обработки документов: Add-DssDocumentStoreClaimsProviderTrust -IssuerName realsts -Thumbprint $idp_cert
Примечание: если при выполнении второго командлета в Powershell возникла ошибка "Доверенный издатель с именем realsts уже добавлен в коллекцию" - необходимо выполнить командлет: Set-DssDocumentStoreClaimsProviderTrust -IssuerName realsts -NewThumbprint $idp_cert
- Проверить срок действия сервисного сертификата сервиса обработки документов. Если срок действия истек - необходимо перевыпустить его и скорректировать настройки в соответствие с руководством;
- Перезагрузить пулы приложений центра идентификации и сервиса обработки документов, выполнив командлеты: Restart-DssStsInstance и Restart-DssDocumentStoreInstance.

7. При загрузке документа для подписи возвращается ошибка "Неперехваченное исключение: Message: An error has occured"

Диагностика:
Ошибка в «Журналы приложений и служб -> CryptoPro-> DSS-> SignServer-> Admins».

Пример:
Instance Unique Identifier: 1/signserver Source: Signature Message: Message: Authorization has been denied for this request.
CryptoPro.DSS.Common.Clients.Rest.DssClientException: Message: Authorization has been denied for this request.

Возможные причины возникновения ошибки:
- На сервисе обработки документов не настроены отношения доверия с сервисом подписи;
- Истек срок действия сервисного сертификата сервиса обработки документов. 

Рекомендуемое решение:
- Запросить отпечаток сервисного сертификата сервиса подписи: $ss_cert = (Get-DssProperties).ServiceCertificate
- Указать отпечаток сервисного сертификата сервиса подписи в настройках сервиса обработки документов: Add-DssDocumentStoreClaimsProviderTrust -IssuerName signserver -Thumbprint $ss_cert
Примечание: если при выполнении второго командлета в Powershell возникла ошибка "Доверенный издатель с именем signserver уже добавлен в коллекцию" - необходимо выполнить командлет: Set-DssDocumentStoreClaimsProviderTrust -IssuerName signserver -NewThumbprint $ss_cert
- Проверить срок действия сервисного сертификата сервиса обработки документов. Если срок действия истек - необходимо перевыпустить его и скорректировать настройки в соответствие с руководством;
- Перезагрузить пулы приложений сервиса подписи и сервиса обработки документов, выполнив командлеты: Restart-DssSignServerInstance и Restart-DssDocumentStoreInstance.

(9 плюсик(ов))
Класс!
Не очень :(