Czy ktokolwiek z was, próbował wygenerowac podpis cyfrowy "Signature", za pomocą certyfikatu i klucza prywatnego? Chodzi dokładnie o połączenie SOAP, za pomoca standardu WS-SECURITY, a nie mam pojęcie skąd wziaźć wartość dla SignatureValue.
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://ws.epuap.gov.pl/zarzadzanieDokumentami"> <SOAP-ENV:Header> <wsse:Security 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"> <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="X509-E021829A9DDE2448DB14005718955435"> MIIGbTCCBVWgA......vZzbPcQl8v13Y99MlzC82KA= </wsse:BinarySecurityToken> <ds:Signature Id="SIG-E021829A9DDE2448DB14005718955458" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo> .... </ds:SignedInfo> <ds:SignatureValue> .... </ds:SignatureValue> <ds:KeyInfo Id="KI-E021829A9DDE2448DB14005718955446"> <wsse:SecurityTokenReference wsu:Id="STR-E021829A9DDE2448DB14005718955447"> <wsse:Reference URI="#X509-E021829A9DDE2448DB14005718955435" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"/> </wsse:SecurityTokenReference> </ds:KeyInfo> </ds:Signature> </wsse:Security> </SOAP-ENV:Header> <SOAP-ENV:Body> ..... </SOAP-ENV:Body> </SOAP-ENV:Envelope>
Uprzejmie prosze o pomoc
Witam,
Z uwagi na weekend, chciałbym ponowić temat.
Po analizie google, doczytałem, że wartośc SignatureValue, można uzyskać za pomoca DigestValue, lub zawartości znacznika SignedInfo. Niestety wszystkie próby zawodzą, wyczerpały mi sie już pomysły i niew iem gdzie dalej szukać