Avatar billede chrneess Nybegynder
09. februar 2009 - 08:08

Webservice3 ws-security signering og kryptering af webservice kald

Jeg er ved at skal kalde en webservice, som benytter sig af WS-S(Webservice-Security).
Hvis der findes et nemmere komponent end lige Service3 fra MS, så kunne løsninen også være et anvende noget andet.

Men jeg kan ikke helt få det sat op til at kryptere så jeg ender med det rigtige output.

Et af problemerne er at min securitytoken i XML ender med at have en anden ValueType.


Måden jeg tilføjer crypteringen er på denne måde, Token er en token som er blevet generet ud fra en digitalsignatur.:

        cvr3.LegalUnitGet lug = new cvr3.LegalUnitGet();


                cvr3.GetLegalUnitRequestType glurt = new cvr3.GetLegalUnitRequestType();
                glurt.LegalUnitIdentifier = cvrnumber;
                glurt.level = levelStr;
                glurt.UserId = userId;
                glurt.Password = password;
                lug.RequestSoapContext.Security.Tokens.Add(token);
                MessageSignature ms = new MessageSignature(token);

                //lug.ResponseSoapContext.Security.Elements.Add(enc);
                EncryptedData enc = new EncryptedData(token);

                ResponseSoapContext.Current.Security.Elements.Add(enc);
                ResponseSoapContext.Current.Security.Elements.Add(ms);
               
                cvr3.LegalUnitType unit2 = lug.getLegalUnit(glurt).LegalUnit;

Og skulle gerne give følgende output, men gør det, desværre ikke.

<soapenv:Envelope xmlns:ns="http://rep.oio.dk/eogs/xml.wsdl/" xmlns:ns1="http://rep.oio.dk/eogs/xml.schema/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
  <soapenv:Header>
<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><xenc:EncryptedKey Id="EncKeyId-9038711">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference><ds:X509Data>
<ds:X509IssuerSerial>
<ds:X509IssuerName>CN=TDC OCES CA,O=TDC,C=DK</ds:X509IssuerName>

<ds:X509SerialNumber>1164145730</ds:X509SerialNumber>
</ds:X509IssuerSerial>
</ds:X509Data></wsse:SecurityTokenReference>
</ds:KeyInfo>
<xenc:CipherData><xenc:CipherValue>xIi6bbikdgn3caRci9lV+T8FStqM0duCWhESCgsEkkxdksvDadBDGjXWpYMq8Sq57CoeCG2357qr6YE4m7TnTiCkI+r6yTMZJiePFyCx8+YXgZ5CvOcUj/TWaPf3SxMo5qGm0u1/tmQ6qU3EZbhFZf5j3fkyfLqMCl9vxDhYMdg=</xenc:CipherValue></xenc:CipherData>
<xenc:ReferenceList><xenc:DataReference URI="#EncDataId-31616411"/></xenc:ReferenceList></xenc:EncryptedKey><ds:Signature Id="Signature-13130291" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>

<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference URI="#id-31616411">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>TZd3Ea8AMGpVNQkFbE7hfUUDqgo=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>
Ev6V2Alv8fT1uFp+/vtW86FUJ8gu4rfSKCQorg8co6GRu1h8CeCWt0siD8S+sBOim/VWlFYIOiWx
21mp+1LXEtKgvmqg40NUurU62oU9wT116you6AfwhVyDwP4vJgGvOBsGoNt5oCRNZ0QQdJjsqJA1
kfQdk5HXEWSKff7y0CU=
</ds:SignatureValue>
<ds:KeyInfo Id="KeyId-26865561">
<wsse:SecurityTokenReference wsu:Id="STRId-21058500" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><wsse:KeyIdentifier 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">MIIFezCCBGOgAwIBAgIERV7W0TANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJESzEMMAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wNzA0MjYwOTQwNTlaFw0wOTA0MjYxMDEwNTlaMHgxCzAJBgNVBAYTAkRLMSYwJAYDVQQKEx1TSVJJVVMgSVQgQS9TIC8vIENWUjoyOTk3MzMzNDFBMBgGA1UEAxMRRXJpayBXLiBSYXNtdXNzZW4wJQYDVQQFEx5DVlI6Mjk5NzMzMzQtUklEOjExNzczMTk4OTk4OTkwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKucKefpvfvuPt/JGOU5Ez2CvI1y/EoxIIVv4qHomJkRiwT6xntEa/+vYXPFgEKChXVjC1r0F3lTCK2PkQmw3R8o/zcg5r7J4Ux7IjkSdmdhGGAt79L7ewyKLcpdG4ZCRhj3RVriT3O/qqL1rDFGq02JJwljIAu/ecSrVFclp40xAgMBAAGjggLWMIIC0jAOBgNVHQ8BAf8EBAMCA/gwKwYDVR0QBCQwIoAPMjAwNzA0MjYwOTQwNTlagQ8yMDA5MDQyNjEwMTA1OVowggE3BgNVHSAEggEuMIIBKjCCASYGCiqBUIEpAQEBAgQwggEWMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmNlcnRpZmlrYXQuZGsvcmVwb3NpdG9yeTCB4gYIKwYBBQUHAgIwgdUwChYDVERDMAMCAQEagcZGb3IgYW52ZW5kZWxzZSBhZiBjZXJ0aWZpa2F0ZXQgZ+ZsZGVyIE9DRVMgdmlsa+VyLCBDUFMgb2cgT0NFUyBDUCwgZGVyIGthbiBoZW50ZXMgZnJhIHd3dy5jZXJ0aWZpa2F0LmRrL3JlcG9zaXRvcnkuIEJlbeZyaywgYXQgVERDIGVmdGVyIHZpbGvlcmVuZSBoYXIgZXQgYmVncuZuc2V0IGFuc3ZhciBpZnQuIHByb2Zlc3Npb25lbGxlIHBhcnRlci4wQQYIKwYBBQUHAQEENTAzMDEGCCsGAQUFBzABhiVodHRwOi8vb2NzcC5jZXJ0aWZpa2F0LmRrL29jc3Avc3RhdHVzMCgGA1UdEQQhMB+BHWVyaWsudy5yYXNtdXNzZW5Ac2lyaXVzaXQuY29tMIGEBgNVHR8EfTB7MEugSaBHpEUwQzELMAkGA1UEBhMCREsxDDAKBgNVBAoTA1REQzEUMBIGA1UEAxMLVERDIE9DRVMgQ0ExEDAOBgNVBAMTB0NSTDE5OTgwLKAqoCiGJmh0dHA6Ly9jcmwub2Nlcy5jZXJ0aWZpa2F0LmRrL29jZXMuY3JsMB8GA1UdIwQYMBaAFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GA1UdDgQWBBQNERFaDKsLkbzfheTbdIzul+4dSDAJBgNVHRMEAjAAMBkGCSqGSIb2fQdBAAQMMAobBFY3LjEDAgOoMA0GCSqGSIb3DQEBBQUAA4IBAQCRIjZ97xbvyvWc0AqDFPHlJ31eddyYhOmsoDqCjcZeGw0/8x3gt1NX05OB9I7z0mWLVTHEUwyXjvczG7q0KnzWtn+e6xiE/fHor5AG0wnPuUSWqkSD3ya+OrHazPNif99NKkxeRnyykU0qLq3bgzhAxhBiFNR6B50CK9wvPRP/xNd45jP5M1sHZtTMFXRHRRZwY0r1tcfhf86eDtL5XwgtZSwICRLT656MgK14UGA47oCQXwDUuzEFyJRaXO9BaT5JQLxAdSy6FQeTZFwX4Xd8ZOzmFBTWWP78E1estbtIQjLaZzKs6lL4amh1PB6ao/hvYXy0w1OLrxjx15GW1JOa</wsse:KeyIdentifier></wsse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature><wsu:Timestamp wsu:Id="Timestamp-21527784" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><wsu:Created>2008-04-25T12:07:08.725Z</wsu:Created><wsu:Expires>2008-04-25T12:08:08.725Z</wsu:Expires></wsu:Timestamp></wsse:Security></soapenv:Header>
  <soapenv:Body wsu:Id="id-31616411" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><xenc:EncryptedData Id="EncDataId-31616411" Type="http://www.w3.org/2001/04/xmlenc#Content"><xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/><ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<wsse:SecurityTokenReference xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><wsse:Reference URI="#EncKeyId-9038711"/></wsse:SecurityTokenReference>
</ds:KeyInfo><xenc:CipherData><xenc:CipherValue>X04u5D1hSNohbeHMnr+boTgOo9WFooZK0qipof3f26u/n4YiM0LNiF0bzAm2rI52GzqME9Z4IIcx
QG+m/RXfZ+tI9+s7X5X6Y7ICtjLmtQbXkWcoqXU845xCSYUCF//gNPb/+JCgc3MvnuWCnG8t1rk2
4WRsO4J8qQf0qOt9FDTyg8Qcgma9MIs7BFO9QZRdV62+CcxJogP6s+9Ye9xyLupAeh0O27LludGz
/PFhqm+gkpwS6f8Und2giG8le/JflyrKryXzopyvToOFLi6YwS7C+QC9NSuvzBunQvy8kJTJ+IvD
e94U10yLuiGCozfM2zwtkyAkecgrYYMdf96Yxliw7433U6RtvJYDbfyMaSCN61ljGoAue6lX2ZKM
UG8J9GkQO+Az3RimUXsHHmvrSe8hxy5k8TBTzuf3QcR0BMqX2EwhHAB1nASCclYBIqe5s1iGb7bH
zJgFX6pBl8TLkzUuHtdodg8+pjORWWobTLOdn2wuSprroQoJo0UCm8IXxJtOXxa4StGgutNhenx8
jd6zf9aJVF37RYbabsXhpc2fhcTe48gNs7FsyYON4Ex2qMEqqvhRnBR2M+ZAqgJ6mP1/nM45EE8u
HIamOE68J5nW9iSLBDhtJKADLexG4IbCsxAKvFt+720gaC6Fb5ifo6EuOiDkou2SUw3pXLEFdUY9
uDX03+P/IxZzPbYpmBwC6sJnySLq7g34OHfjHjg4YA==</xenc:CipherValue></xenc:CipherData></xenc:EncryptedData></soapenv:Body>
</soapenv:Envelope>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester