Статус: Новичок
Группы: Участники
Зарегистрирован: 28.11.2012(UTC) Сообщений: 2 Откуда: Москва
|
Есть у кого уже готовая библиотека для подключения ее допустим к 1с?
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 28.11.2012(UTC) Сообщений: 2 Откуда: Москва
|
Возникает такая ошибка: Необработанное исключение: System.Security.Cryptography.CryptographicException:Невозможно создать объект хэш-алгоритма. в System.Security.Cryptography.Xml.Reference.CalculateHashValue(XmlDocument document, CanonicalXmlNodeList refList) в System.Security.Cryptography.Xml.SignedXml.BuildDigestedReferences() в System.Security.Cryptography.Xml.SignedXml.ComputeSignature() в Samples.Xml.cs.SignSmevRequest.SignXmlFile(String FileName, String SignedFileName, X509Certificate2 Certificate) в Samples.Xml.cs.SignSmevRequest.Main(String[] args)
|
|
|
|
|
|
Статус: Активный участник
Группы: Администраторы, Участники Зарегистрирован: 28.04.2010(UTC) Сообщений: 140  Откуда: Крипто-Про Поблагодарили: 15 раз в 14 постах
|
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 25.07.2012(UTC) Сообщений: 5  Откуда: программинг Сказал «Спасибо»: 2 раз
|
В последней версии методических рекомендаций по разработке электронных сервисов СМЭВ 2.5.6 добавлен пункт "5.2.1. Метка времени в электронной подписи, формируемой узлами СМЭВ", подразумевающий добавления к цифровой подписи метки времени. Вот вырезка из методического описания: <wsse:Security env:actor="http://smev.gosuslugi.ru/actors/recipient" xmlns:wsse="http://docs.oasis- open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap- message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509- token-profile-1.0#X509v3" wsu:Id="CertId ">…</wsse:BinarySecurityToken> <ds:Signature Id="Signature-95751" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo> ... </ds:SignedInfo> <ds:SignatureValue> ... </ds:SignatureValue> <ds:KeyInfo Id="KeyId-C7F269720BE6F58D941344862536377285845"> ... </ds:KeyInfo> <ds:Object> <xds:QualifyingProperties xmlns:xds="http://uri.etsi.org/01903/v1.1.1#"> <xds:UnsignedProperties> <xds:UnsignedSignatureProperties> <xds:SignatureTimeStamp> <xds:HashDataInfo uri="#signature-value-40ddb6ca-9ac1-4026-a049-76901f3aa5d8"/> <xds:EncapsulatedTimeStamp>Метка времени в Base64</xds:EncapsulatedTimeStamp> </xds:SignatureTimeStamp> </xds:UnsignedSignatureProperties> </xds:UnsignedProperties> </xds:QualifyingProperties> </ds:Object> </ds:Signature> </wsse:Security> Будет ли в примерах приведено добавление метки времени к подписи? Так же по методическим рекомендациям не понятно, обязательное ли это требование? Отредактировано пользователем 10 декабря 2012 г. 19:19:21(UTC)
| Причина: Не указана
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.10.2011(UTC) Сообщений: 61
Сказал(а) «Спасибо»: 2 раз
|
Добрый день! Кто-нибудь сталкивался с проблемой: Запрос к смэв формируется правильно, даже приходит ответ от сервиса, но на моем клиенте уже не может обработаться ответ. Падает с ошибкой: Код:Security processor was unable to find a security header in the message. This might be because the message is an unsecured fault or because there is a binding mismatch between the communicating parties. This can occur if the service is configured for security and the client is not using security.
Стек: Код:Server stack trace:
at System.ServiceModel.Security.SecurityStandardsManager.CreateReceiveSecurityHeader(Message message, String actor, SecurityAlgorithmSuite algorithmSuite, MessageDirection direction)
at System.ServiceModel.Security.MessageSecurityProtocol.CreateSecurityHeader(Message message, String actor, MessageDirection transferDirection, SecurityStandardsManager standardsManager)
at System.ServiceModel.Security.MessageSecurityProtocol.ConfigureReceiveSecurityHeader(Message message, String actor, SecurityProtocolCorrelationState[] correlationStates, SecurityStandardsManager standardsManager, IList`1& supportingAuthenticators)
at System.ServiceModel.Security.AsymmetricSecurityProtocol.VerifyIncomingMessageCore(Message& message, String actor, TimeSpan timeout, SecurityProtocolCorrelationState[] correlationStates)
at System.ServiceModel.Security.MessageSecurityProtocol.VerifyIncomingMessage(Message& message, TimeSpan timeout, SecurityProtocolCorrelationState[] correlationStates)
at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.ProcessReply(Message reply, SecurityProtocolCorrelationState correlationState, TimeSpan timeout)
at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at Client.Asur.GetNsi.getCatalogList(getCatalogListRequest request)
at Client.Asur.GetNsiClient.Client.Asur.GetNsi.getCatalogList(getCatalogListRequest request) in C:\Users\kadyrov\Desktop\smev+cryptopro example\Client\Service References\Asur\Reference.cs:line 3732
at Client.Asur.GetNsiClient.getCatalogList(authContext auth, String requestId) in C:\Users\kadyrov\Desktop\smev+cryptopro example\Client\Service References\Asur\Reference.cs:line 3739
at Client.Program.Main(String[] args) in C:\Users\kadyrov\Desktop\smev+cryptopro example\Client\Program.cs:line 189
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
Ответ от вызванного сервиса: Код:HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=utf-8
Transfer-Encoding: chunked
Date: Sat, 15 Dec 2012 07:33:15 GMT
2000
<?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<S:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" S:actor="RSMEVAUTH">
<wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="SenderCertificate">MIIFJjCCBNWgAwIBAgIKTE11rwAAAAC/fzAIBgYqhQMCAgMwgY4xGjAYBgkqhkiG9w0BCQEWC2Nh
QHVjLWVtLnJ1MQswCQYDVQQGEwJSVTEPMA0GA1UEBxMGTW9zY293MR4wHAYDVQQKExVKU0MgRWxl
Y3Ryb25pYyBNb3Njb3cxHzAdBgNVBAsTFkNlcnRpZmljYXRpb24gYXV0b3JpdHkxETAPBgNVBAMT
CFVDLUVNIENBMB4XDTEyMTExNjEzMDgwMFoXDTEzMTExNjEzMTIwMFowggHPMRgwFgYFKoUDZAES
DTExMDc3NDY5NDMzNDcxGjAYBggqhQMDgQMBARIMMDA3NzEwODc4MDAwMSAwHgYJKoZIhvcNAQkB
FhFzaGV2eXJvdnB2QG1vcy5ydTELMAkGA1UEBhMCUlUxFTATBgNVBAceDAQcBD4EQQQ6BDIEMDFn
MGUGA1UECh5eBBQENQQ/BDAEQARCBDAEPAQ1BD0EQgAgBDgEPQREBD4EQAQ8BDAERgQ4BD4EPQQ9
BEsERQAgBEIENQRFBD0EPgQ7BD4EMwQ4BDkAIAQzAC4AIAQcBD4EQQQ6BDIESzFFMEMGA1UECx48
BCMEPwRABDAEMgQ7BDUEPQQ4BDUAIAQ+BEIEQAQwBEEEOwQ1BDIESwRFACAEPwRABD4ENQQ6BEIE
PgQyMT0wOwYDVQQDHjQEKAQ1BDIESwRABD4EMgAgBB8EMAQyBDUEOwAgBBIETwRHBDUEQQQ7BDAE
MgQ+BDIEOARHMRUwEwYJKoZIhvcNAQkCEwZNU0tTMDUxSzBJBgNVBAweQgQXBDAEPAQ1BEEEQgQ4
BEIENQQ7BEwAIAQ9BDAERwQwBDsETAQ9BDgEOgQwACAEQwQ/BEAEMAQyBDsENQQ9BDgETzBjMBwG
BiqFAwICEzASBgcqhQMCAiQABgcqhQMCAh4BA0MABEBcLvBq6ptIxxjxtxRxLS552ywP1orSqaDT
8SvwYUiUe1/Kfwe6FQPuHTg6XhmHk2/IlIdeuKaVm3PI3zdZHrAEo4IBzTCCAckwDgYDVR0PAQH/
BAQDAgTwMDAGA1UdJQQpMCcGByqFAwICIhkGByqFAwICIhoGCSqFAwNYAQEBCAYIKoUDBQEYAgYw
HQYDVR0OBBYEFCYy8Tz4A/l4YTUmtVhYoPpRhHxvMB8GA1UdIwQYMBaAFOsntAxRERJAoYBEgSXI
UVJi/g1KMIGgBgNVHR8EgZgwgZUwS6BJoEeGRWh0dHA6Ly93d3cudWMtZW0ucnUvY2VydC9lYjI3
YjQwYzUxMTExMjQwYTE4MDQ0ODEyNWM4NTE1MjYyZmUwZDRhLmNybDBGoESgQoZAaHR0cDovL2Ny
bC51Yy1lbS5ydS9lYjI3YjQwYzUxMTExMjQwYTE4MDQ0ODEyNWM4NTE1MjYyZmUwZDRhLmNybDB1
BggrBgEFBQcBAQRpMGcwMgYIKwYBBQUHMAGGJmh0dHA6Ly9vY3NwLnVjLWVtLnJ1L29jc3Atc212
L29jc3Auc3JmMDEGCCsGAQUFBzAChiVodHRwOi8vd3d3LnVjLWVtLnJ1L2NlcnQvdWMtZW1fY2Eu
Y2VyMCsGA1UdEAQkMCKADzIwMTIxMTE2MTMwODAwWoEPMjAxMzExMTYxMzA4MDBaMAgGBiqFAwIC
AwNBAAXtv8QWqwXVQyydIRNKUGpjYpEebtg7XJU7N4BEQp/91qT/4+KxzkRQjBKBG9E44iaJMz13
7gdtsgF6htmMbFU=
</wsse:BinarySecurityToken>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411"></SignatureMethod>
<Reference URI="#body">
<Transforms>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411"></DigestMethod>
<DigestValue>/6G/4d7WO/1XEyMzdLFEXUGXrosse5ipmkkfaCh1H2w=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>THScFyEgsTJmKnlTJH21LSkhI/amPHzgFeB+dq/T/t+9kbPWJt0G7C37Fn/0ofhUA4xMkT3wR3w2
jrThZxFCBg==</SignatureValue>
<KeyInfo>
<wsse:SecurityTokenReference>
<wsse:Reference URI="#SenderCertificate" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"></wsse:Reference></wsse:SecurityTokenReference>
</KeyInfo>
</Signature>
</wsse:Security>
</S:Header>
<S:Body wsu:Id="body"><ns2:getCatalogListResponse xmlns:ns2="http://nsi.asur.mos.ru/">[DATA]</ns2:getCatalogListResponse></S:Body>
</S:Envelope>
|
|
|
|
|
|
Статус: Активный участник
Группы: Администраторы, Участники Зарегистрирован: 28.04.2010(UTC) Сообщений: 140  Откуда: Крипто-Про Поблагодарили: 15 раз в 14 постах
|
Добрый день,
WCF не может найти заголовок безопасности (для проверки подписи), т.к аттрибут actor="RSMEVAUTH" не пустой. Для проверки таких сообщений используйте классы из КриптоПро .NET (SMEVTextMessageEncoder см. документацию из SDK)
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 26.10.2011(UTC) Сообщений: 61
Сказал(а) «Спасибо»: 2 раз
|
khomenko написал:Добрый день,
WCF не может найти заголовок безопасности (для проверки подписи), т.к аттрибут actor="RSMEVAUTH" не пустой. Для проверки таких сообщений используйте классы из КриптоПро .NET (SMEVTextMessageEncoder см. документацию из SDK) Спасибо! И так использовался кастомный encoder, перепроверил удаление атрибута actor - не удалялся, поправил - заработало.
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 04.04.2013(UTC) Сообщений: 1  
|
Автор: forik  перепроверил удаление атрибута actor - не удалялся, поправил - заработало. А можно более подробно? Как вы его удаляете?
|
|
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.04.2013(UTC) Сообщений: 1 Откуда: Россия
|
Если пользоваться примером КриптоПро, то обратите внимание, что как в примере указано так и нужно использовать: Dim xmltw As New XmlTextWriter(toStream, New UTF8Encoding(False)) doc.WriteTo(xmltw) 'Электронная подпись ЭП-ОВ сообщения корректна. Зато сообщение обрезается в SoapUI 4.5
и ни в коем случае doc.Save(xmltw) 'Неверная ЭП сообщения!!!
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 14.11.2008(UTC) Сообщений: 41
|
Так как же все-таки надо настроить app.config чтобы работать со СМЭВ через КриптоПРО. Пример есть?
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close