C# 为Axis2 web服务创建客户端时,对传输和消息使用不同的证书
我正在尝试为axis2 web服务编写一个客户端,该服务要求使用一个证书对消息进行签名,并使用不同的证书进行传输 我有WSDL,但在使用SvcUtil导入服务后,我遇到了一个问题,即该服务使用什么绑定,ClientCredentials.ClientCertificate.Certificate似乎只允许一个证书,如果我在binding Security.Mode.TransportWithMessageCredential中设置,并将这两个凭据类型都设置为transport和message,我就不会获得证书跟踪中的TLS 使用所有xsd(包括oasis-200401-wss-security-utility-1.0.xsd)链接到WSDL 如果我只做传输,那么tls可以工作,但是我从服务器上得到的wsse:security头丢失了C# 为Axis2 web服务创建客户端时,对传输和消息使用不同的证书,c#,ssl,soap-client,ws-security,C#,Ssl,Soap Client,Ws Security,我正在尝试为axis2 web服务编写一个客户端,该服务要求使用一个证书对消息进行签名,并使用不同的证书进行传输 我有WSDL,但在使用SvcUtil导入服务后,我遇到了一个问题,即该服务使用什么绑定,ClientCredentials.ClientCertificate.Certificate似乎只允许一个证书,如果我在binding Security.Mode.TransportWithMessageCredential中设置,并将这两个凭据类型都设置为transport和message,我
System.Net.ServicePointManager.SecurityProtocol=System.Net.SecurityProtocolType.Tls12;
System.ServiceModel.WSHttpBinding bindingws=new System.ServiceModel.WSHttpBinding();
bindingws.Security=new System.ServiceModel.WSHttpSecurity();
bindingws.Security.Mode=System.ServiceModel.SecurityMode.Transport;
//bindingws.Security.Mode=System.ServiceModel.SecurityMode.TransportWithMessageCredential;
bindingws.Security.Transport.ClientCredentialType=System.ServiceModel.HttpClientCredentialType.Certificate;
//bindingws.Security.Message.ClientCredentialType=System.ServiceModel.MessageCredentialType.Certificate;
eskierowanie.ObslugaSkierowaniaWSClient os=new XRis.eskierowanie.ObslugaSkierowaniaWSClient(bindingws,new System.ServiceModel.EndpointAddress("https://isus.ezdrowie.gov.pl/services/ObslugaSkierowaniaWS"));
System.Security.Cryptography.X509Certificates.X509Certificate2 tls_cert=new System.Security.Cryptography.X509Certificates.X509Certificate2(@"certificate-tls.p12","Password", System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.Exportable | System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.PersistKeySet | System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.UserKeySet);
System.Security.Cryptography.X509Certificates.X509Certificate2 wss_cert=new System.Security.Cryptography.X509Certificates.X509Certificate2(@"certificate-wss.p12","Password", System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.Exportable | System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.PersistKeySet | System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.UserKeySet);
os.ClientCredentials.ClientCertificate.Certificate=tls_cert;
//filling the request
eskierowanie.KontekstMT kontekst=new XRis.eskierowanie.KontekstMT();
eskierowanie.WyszukanieSkierowanUslugobiorcyRequest wsur=new XRis.eskierowanie.WyszukanieSkierowanUslugobiorcyRequest();
eskierowanie.KryteriaWyszukiwaniaSkierowanUslugobiorcyMT kryt=new XRis.eskierowanie.KryteriaWyszukiwaniaSkierowanUslugobiorcyMT();
eskierowanie.IdentyfikatorUslugobiorcyOIDMT id_uslugobiorcy=new XRis.eskierowanie.IdentyfikatorUslugobiorcyOIDMT();
id_uslugobiorcy.extension="111111111";
id_uslugobiorcy.root="2.11.1111.1.111111.1.11111.1.1.111";
kryt.idUslugobiorcy=id_uslugobiorcy;
wsur.kryteriaWyszukiwaniaSkierowanUslugobiorcy=kryt;
eskierowanie.WyszukanieSkierowanUslugobiorcyResponse response=os.wyszukanieSkierowanUslugobiorcy(kontekst,wsur);
System.Windows.Forms.MessageBox.Show(response.wynik.komunikat);
在SoapUI测试套件中,它显示如下所示:
POST https://isus.ezdrowie.gov.pl/services/ObslugaSkierowaniaWS HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:wyszukanieSkierowanUslugobiorcy"
Content-Length: 5913
Host: isus.ezdrowie.gov.pl
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v20="http://csioz.gov.pl/p1/kontekst/mt/v20180509" xmlns:v201="http://csioz.gov.pl/p1/eskierowanie/ws/v20180509" xmlns:v202="http://csioz.gov.pl/p1/eskierowanie/mt/v20180509" xmlns:v203="http://csioz.gov.pl/p1/wspolne/mt/v20180509">
<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="EK-4774053CD62669762616081091569011" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"><xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"/><ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><wsse:SecurityTokenReference><ds:X509Data><ds:X509IssuerSerial><ds:X509IssuerName>C=PL,O=CSIOZ,OU=P1 Integracyjne,CN=CC P1 SubCA WSS</ds:X509IssuerName><ds:X509SerialNumber>45462786551181900</ds:X509SerialNumber></ds:X509IssuerSerial></ds:X509Data></wsse:SecurityTokenReference></ds:KeyInfo><xenc:CipherData><xenc:CipherValue>CJRtZ7asgtnYVPYJPkmV93e6+ehpZDyv4RxnXg6lcHPrl5RBZhHPt3tdigdCHlOUO0lhh4daujiyulEnPkhHvjodNRDdjfHccKfHM6oojCDpB6mxVuZOKpuW2els8DwxGAu0XUM6pGL6HMndgSzeusK2DMZiBNRN4BfDSBYsWPU7TtpveywRvo090PNTpFuJV/E3g0JP5s2jHEFrHusDqjXPb4aJ/2Y2KEI8Q7b79Of0i5GApMxWF4ZBKmJ+rNHiNHH8nvcapLm0mNxkx6TIu0JXUVPmlKmcMR4YzXMb1M0VAPQ12o6sYEw3sDNUGv+NYpx2evF9fz4cIC/BfzhFnA==</xenc:CipherValue></xenc:CipherData><xenc:ReferenceList><xenc:DataReference URI="#ED-4774053CD62669762616081091569192"/></xenc:ReferenceList></xenc:EncryptedKey></wsse:Security>
<v20:kontekstWywolania>
<v20:atrybut nazwa="urn:csioz:p1:kontekst:idPodmiotuOidRoot">
<v20:wartosc>2.16.840.1.11111.3.4424.2.3.1</v20:wartosc>
</v20:atrybut>
</v20:kontekstWywolania>
</soapenv:Header>
<soapenv:Body><xenc:EncryptedData Id="ED-4774053CD62669762616081091569192" Type="http://www.w3.org/2001/04/xmlenc#Content" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"><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 wsse11:TokenType="http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsse11="http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd"><wsse:Reference URI="#EK-4774053CD62669762616081091569011"/></wsse:SecurityTokenReference></ds:KeyInfo><xenc:CipherData><xenc:CipherValue>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</xenc:CipherValue></xenc:CipherData></xenc:EncryptedData></soapenv:Body>
</soapenv:Envelope>
POSThttps://isus.ezdrowie.gov.pl/services/ObslugaSkierowaniaWS HTTP/1.1
接受编码:gzip,deflate
内容类型:text/xml;字符集=UTF-8
SOAPAction:“瓮:Wyszukanieskierowanuslagobiorcy”
内容长度:5913
主持人:isus.ezdrowie.gov.pl
连接:保持活力
用户代理:Apache HttpClient/4.1.1(java 1.5)
C=PL,O=CSIOZ,OU=P1积分,CN=CC P1子载波4.中国社会45466 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 GV+NYpx2evF9fz4cIC/BfzhFnA==
2.16.840.1.11111.3.4424.2.3.1
2.2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 PPO/VTPT7TDBAOUWAT1XYVA27IOTY/8l4.中国的一个4(4)中国的一个4(4)中国的一个4(4)中国的一个4(6)中国的一个4(6)中国的一个2(8)中国的一个2(4)中国的一个4(4)中国的一个4(4)中国的一个4(4)中国的一个4(4)中国的2(4)中国的2(4)中国的2(4)中国的2(4)中国的2(4(4)2)中国的4(4(4)中国的4(4)中国的4(4(4)2)中国的4(4)中国的4(4(4)2)中国的4(4)2)中国的4(4(4)中国)中国的4)中国的4(4(4(4)中国)中国)中国的4)中国的4(4(4)8)8)8)8(4)8(4(4(4)8)8)8)8)8)中国n0s94SUMsWxFlvdlRobXg(2)中国政府对中国的六级(6)中国政府对中国政府对中国的六级(6)中国政府对中国的六级(6)中国政府对中国的六级(6)中国政府对中国的六级(6)中国政府对中国的六级(6)中国的一级(4)中国的一级(6)中国政府对中国政府对中国的六级(6)中国政府对中国的六级(6)中国政府对中国的六级(6级(6)中国政府对中国的六级(6级)中国的六级(6级)中国政府对中国的六级(6级)中国的六六级(6级)中国的六级(6级)中国的六级)中国政府对中国的六级(4级)中国政府的六级(4级)中国政府的六级(4级)中国政府对中国的非非武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武武XZExFPZYGZ/rgY+yRBqF7T2.目前,我国的一些政府部门对一些政府部门提出了一些具体的政府部门的一些政府部门的一些政府部门的一些政府部门的一些政府部门的一些政府部门的一些政府部门的一些政府部门的一些政府部门的一些准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准准6LNZL7TPFEM2.2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 X7RHBxi5fteSeepeZZK/iT/NV7-ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZKCVYTQNVMAT+efCk4ka9AG/CCLJI3ABZCYGF0W2QBGDLGYPPANAHQMET1DMHPCBNOSO1678NYCVRNLQCKW7UARHPX0GBKHN8SHORBHHRNTPG8PV0M1MQWHC32PWMMZQOBOPNJM7DZFIWOXIORDPK2WC3TCPG6RXOGVtQE4NA+8g4DcUi/HRSNLRMXIISFRTUQYL1QX5QQQQ22JZIZIJAK5+VFFPZDEXWKJ12Q7QQ7L6F+UZUDZ7L6LC=
任何关于如何在C#中实现这一点的提示都将不胜感激
顺便说一句,在使用svcutil时,有没有一种使用tls证书身份验证的方法?目前,我只是通过浏览器下载所有文件,然后导入本地文件。尝试以下操作:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Xml;
using System.Xml.Linq;
using System.IO;
namespace ConsoleApplication179
{
class Program
{
const string URL = "//isus.ezdrowie.gov.pl/services/ObslugaSkierowaniaWS HTTP/1.1";
static void Main(string[] args)
{
string xml =
"<soapenv:Envelope" +
" xmlns:oas=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd\"" +
" xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"" +
" xmlns:v20=\"http://csioz.gov.pl/p1/kontekst/mt/v20180509\"" +
" xmlns:v201=\"http://csioz.gov.pl/p1/eskierowanie/ws/v20180509\"" +
" xmlns:v202=\"http://csioz.gov.pl/p1/eskierowanie/mt/v20180509\"" +
" xmlns:v203=\"http://csioz.gov.pl/p1/wspolne/mt/v20180509\">"+
"<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=\"EK-4774053CD62669762616081091569011\" xmlns:xenc=\"http://www.w3.org/2001/04/xmlenc#\">" +
"<xenc:EncryptionMethod Algorithm=\"http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p\"/>"+
"<ds:KeyInfo xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\">" +
"<wsse:SecurityTokenReference><ds:X509Data><ds:X509IssuerSerial>" +
"<ds:X509IssuerName>C=PL,O=CSIOZ,OU=P1 Integracyjne,CN=CC P1 SubCA WSS</ds:X509IssuerName>" +
"<ds:X509SerialNumber></ds:X509SerialNumber>" +
"</ds:X509IssuerSerial>" +
"</ds:X509Data></wsse:SecurityTokenReference>" +
"</ds:KeyInfo>"+
"<xenc:CipherData>" +
"<xenc:CipherValue></xenc:CipherValue>" +
"</xenc:CipherData>" +
"<xenc:ReferenceList>" +
"<xenc:DataReference URI=\"#ED-4774053CD62669762616081091569192\"/>" +
"</xenc:ReferenceList>" +
"</xenc:EncryptedKey>" +
"</wsse:Security>" +
"<v20:kontekstWywolania>" +
"<v20:atrybut nazwa=\"urn:csioz:p1:kontekst:idPodmiotuOidRoot\">" +
"<v20:wartosc>2.16.840.1.11111.3.4424.2.3.1</v20:wartosc>" +
"</v20:atrybut>" +
"</v20:kontekstWywolania>" +
"</soapenv:Header>" +
"<soapenv:Body>" +
"<xenc:EncryptedData Id=\"ED-4774053CD62669762616081091569192\" Type=\"http://www.w3.org/2001/04/xmlenc#Content\" xmlns:xenc=\"http://www.w3.org/2001/04/xmlenc#\">" +
"<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 wsse11:TokenType=\"http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey\" xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\" xmlns:wsse11=\"http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd\">" +
"<wsse:Reference URI=\"#EK-4774053CD62669762616081091569011\"/>" +
"</wsse:SecurityTokenReference>" +
"</ds:KeyInfo>" +
"<xenc:CipherData>" +
"<xenc:CipherValue>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</xenc:CipherValue>" +
"</xenc:CipherData>" +
"</xenc:EncryptedData>" +
"</soapenv:Body>" +
"</soapenv:Envelope>";
XDocument doc = XDocument.Parse(xml);
string serialNumber = "45462786551181900</";
string cipherValue = "CJRtZ7asgtnYVPYJPkmV93e6+ehpZDyv4RxnXg6lcHPrl5RBZhHPt3tdigdCHlOUO0lhh4daujiyulEnPkhHvjodNRDdjfHccKfHM6oojCDpB6mxVuZOKpuW2els8DwxGAu0XUM6pGL6HMndgSzeusK2DMZiBNRN4BfDSBYsWPU7TtpveywRvo090PNTpFuJV/E3g0JP5s2jHEFrHusDqjXPb4aJ/2Y2KEI8Q7b79Of0i5GApMxWF4ZBKmJ+rNHiNHH8nvcapLm0mNxkx6TIu0JXUVPmlKmcMR4YzXMb1M0VAPQ12o6sYEw3sDNUGv+NYpx2evF9fz4cIC/BfzhFnA==";
XElement X509SerialNumber = doc.Descendants().Where(x => x.Name.LocalName == "X509SerialNumber").FirstOrDefault();
X509SerialNumber.SetValue(serialNumber);
XElement CipherValue = doc.Descendants().Where(x => x.Name.LocalName == "CipherValue").FirstOrDefault();
CipherValue.SetValue(cipherValue);
string xmlText = doc.ToString();
byte[] byteArray = Encoding.UTF8.GetBytes(xmlText);
WebRequest request = (WebRequest)HttpWebRequest.Create(URL);
request.Headers.Add("Accept-Encoding", "gzip,deflate");
request.Headers.Add("SOAPAction" , "urn:wyszukanieSkierowanUslugobiorcy");
request.Headers.Add("HOST", "isus.ezdrowie.gov.pl");
request.Headers.Add("Connection" , "Keep-Alive");
request.Headers.Add("UserAgent" , "Apache-HttpClient/4.1.1 (java 1.5)");
request.Method = "POST";
request.ContentLength = byteArray.Length;
Stream stream = request.GetRequestStream();
stream.Write(byteArray, 0, byteArray.Length);
stream.Close();
WebResponse response = request.GetResponse();
}
}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
Net系统;
使用System.Net.Sockets;
使用System.Xml;
使用System.Xml.Linq;
使用System.IO;
命名空间控制台应用程序179
{
班级计划
{
const string URL=“//isus.ezdrowie.gov.pl/services/ObslugaSkierowaniaWS HTTP/1.1”;
静态void Main(字符串[]参数)
{
字符串xml=
""+
"" +
"" +
"" +
""+
"" +
"" +
C=PL,O=CSIOZ,OU=P1 Integracyjne,CN=CC P1 SubCA WSS+
"" +
"" +
"" +
""+
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"2.16.840.1.11111.3.4424.2.3.1" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +