摘要:5.1.14基于WSE的身份验证使用WebServicesEnhancements版本2.0,可以通过编程方式签署Web服务的SOAP消息。WSE2.0是一个实现,它支持各种新兴的Web服务标准,例如WS-Security、WS-SecureConversation、WS-Trust、WS-Policy、WS-Addressing、WS-Referral、WS-Attachments和DirectInternetMessageEncapsulation
5.1.14基于 WSE 的身份验证
使 用 Web Services Enhancements 版本 2.0,可以通过编程方式签署 Web 服务的 SOAP 消息。WSE 2.0 是一个实现,它支持各种新兴的 Web 服务标准,例如 WS-Security、WS-SecureConversation、WS-Trust、WS-Policy、WS-Addressing、WS- Referral、WS-Attachments 和 Direct Internet Message Encapsulation (DIME)。WSE 提供一种编程模型来实现它所支持的各种规范。使用 WSE 的客户端应用程序可以使用 X509CertificateStore 类中的某种 Find 方法(例如 FindCertificateByHash 或 FindCertificateByKeyIdentifier)通过编程方式从存储区中选择一个证书,使用该证书创建数字签名,将其添加到 WS-Security SOAP 头并调用 Web 服务。另外,客户端应用程序还可以选择打开当前登录用户的证书存储区,如下面的代码示例所示。
X509CertificateStore store;
store = X509CertificateStore.CurrentUserStore( X509CertificateStore.MyStore );
bool open = store.OpenRead();
5.1.15自定义身份验证
在某些情况下,Windows 提供的标准身份验证选择并不适用于您的应用程序,您将可能需要设计您自己的身份验证形式。幸运的是,.NET Framework 提供了一些选择来帮助您设计自定义身份验证解决方案。.NET Framework 支持 IIdentity 的一个实现,称为 GenericIdentity。您可以使用 GenericIdentity,也可以创建您自己的自定义标识类。设计自定义身份验证解决方案可能比较困难,因为您必须自己采取措施来确保方法是安全的。您可能还需要为您的标识维护单独的存储区。
返回目录:智能客户端体系结构与设计指南
软考备考资料免费领取
去领取