Как подписать SOAP конверт и элементы - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть эти элементы, взятые из правильного сообщения soap, которое получает ответ от сервера.

В моей реализации я пытаюсь сгенерировать:

wsu:Id="TS-4D60E1111F17E91EF5158770628258742"
wsu:Id="X509-4D60E1111F17E91EF5158770628257337"
Id="SIG-4D60E1111F17E91EF5158770628257841"
#id-4D60E1111F17E91EF5158770628257440
Id="KI-4D60E1111F17E91EF5158770628257338"
wsu:Id="id-4D60E1111F17E91EF5158770628257440"

Что Я знаю, что идентификатор из binarySecurityToken и URI в ссылке внутри keyinfo одинаковы.

Но я не знаю, как создать оставшиеся. Что я знаю, так это то, что они могут быть опубликованы c ключи .....

Итак, мне нужно знать, как правильно подходить к этой проблеме и как их генерировать, спасибо.

<wsu:Timestamp wsu:Id="TS-4D60E1111F17E91EF5158770628258742">
<wsu:Created>2020-04-24T05:31:22.587Z</wsu:Created>
<wsu:Expires>2020-04-24T22:11:22.587Z</wsu:Expires>
</wsu:Timestamp>

<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-4D60E1111F17E91EF5158770628257337">

<ds:Signature Id="SIG-4D60E1111F17E91EF5158770628257841" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">


<ds:Reference URI="#id-4D60E1111F17E91EF5158770628257440">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces PrefixList="soap wcf" xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>D7ddWy+TpZ7GzYp4tDMD1c1A111MqZhsy5VTy2CiBpI=
</ds:DigestValue>
</ds:Reference>


<ds:KeyInfo Id="KI-4D60E1111F17E91EF5158770628257338">
<wsse:SecurityTokenReference wsu:Id="STR-4D60E1111F17E91EF5158770628257339">
<wsse:Reference URI="#X509-4D60E6771F17E91EF5158770628257337" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"/>
</wsse:SecurityTokenReference>
</ds:KeyInfo>

<wsa:To 
wsu:Id="id-4D60E1111F17E91EF5158770628257440" 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">...Services.svc</wsa:To>
...