最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
利用WSE 加密SOAP报文(6
时间:2022-07-02 11:22:26 编辑:袖梨 来源:一聚教程网
加密对外发送的报文
我已经修改了前面的GetXmlDocument方法,让它可以使用由WSE实现的基于X.509非对称加密技术。加密回应报文,FindCertificateBySubjectString方法可以用来接收客户端证书的公开备份,一个来自本地机器账号的个人储存室给的客户端证书。这个证书然后被用来创建一个新的 X.509安全Token,这个Token将被加入到响应报文的SoapContext的安全Token集合里。另外,在对称加密例子中引用的命名空间,你应该再加一个using指示附来引用一个Microsoft.WebServices.Security.X509命名空间。GetXmlDocument方法代码如下:
//创建一个用于返回的简单XML文档
XmlDocument myDoc = new XmlDocument();
myDoc.InnerXml =
"This is sensitive data. ";
"这里是敏感数据. ";
//得到响应报文的SoapContext
SoapContext myContext = HttpSoapContext.ResponseContext;
//打开并读取本地机器帐号的个人证书储存室
X509CertificateStore myStore =
X509CertificateStore.LocalMachineStore(
X509CertificateStore.MyStore);
myStore.OpenRead();
//查找所有名为”我的证书”的证书,然后将所有匹配的证书添加到证书集合中
X509CertificateCollection myCerts =
myStore.FindCertificateBySubjectString("My Certificate");
X509Certificate myCert = null;
//查找在集合中中的第一个证书
if (myCerts.Count > 0)
{
myCert = myCerts[0];
}
//确定我们有一个可以用于加密的证书
if (myCert == null || !myCert.SupportsDataEncryption)
{
throw new ApplicationException("Service is not able to
我已经修改了前面的GetXmlDocument方法,让它可以使用由WSE实现的基于X.509非对称加密技术。加密回应报文,FindCertificateBySubjectString方法可以用来接收客户端证书的公开备份,一个来自本地机器账号的个人储存室给的客户端证书。这个证书然后被用来创建一个新的 X.509安全Token,这个Token将被加入到响应报文的SoapContext的安全Token集合里。另外,在对称加密例子中引用的命名空间,你应该再加一个using指示附来引用一个Microsoft.WebServices.Security.X509命名空间。GetXmlDocument方法代码如下:
//创建一个用于返回的简单XML文档
XmlDocument myDoc = new XmlDocument();
myDoc.InnerXml =
"
"
//得到响应报文的SoapContext
SoapContext myContext = HttpSoapContext.ResponseContext;
//打开并读取本地机器帐号的个人证书储存室
X509CertificateStore myStore =
X509CertificateStore.LocalMachineStore(
X509CertificateStore.MyStore);
myStore.OpenRead();
//查找所有名为”我的证书”的证书,然后将所有匹配的证书添加到证书集合中
X509CertificateCollection myCerts =
myStore.FindCertificateBySubjectString("My Certificate");
X509Certificate myCert = null;
//查找在集合中中的第一个证书
if (myCerts.Count > 0)
{
myCert = myCerts[0];
}
//确定我们有一个可以用于加密的证书
if (myCert == null || !myCert.SupportsDataEncryption)
{
throw new ApplicationException("Service is not able to
相关文章
- 人们熟悉的寄居蟹属于以下哪种分类 神奇海洋11月21日答案 11-21
- 第五人格11.22共研服有什么更新 11月22日共研服更新内容介绍 11-21
- 原神恰斯卡怎么培养 11-21
- 无期迷途四星装束是谁 11-21
- 王者荣耀帝丹高中校服怎么获得 11-21
- 光遇姆明季后续版本怎么玩 11-21