`
buliedian
  • 浏览: 1248917 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

WCF服务器证书配置说明

阅读更多

版权声明

请尊重原创作品。转载请保持文章完整性,并以超链接形式注明原始作者“tingsking18”和主站点地址,方便其他朋友提问和指正。

WCF服务器证书配置说明
1.创建证书:
makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=XXX -sky exchange -pe
说明:
-sr 选项制定证书的存储区域,分为CurrentUser和LocalMachine。
-ss 指定主题的证书存储名称,输出证书即存储在那里。My为个人证书
-a 指定签名算法。必须是 md5(默认值)或 sha1。
-n 指定主题的证书名称。此名称必须符合 X.500 标准。最简单的方法是在双引号中指定此名称,并加上前缀 CN=;例如,"CN=myName"。
-sky指定主题的密钥类型,必须是 signature、exchange 或一个表示提供程序类型的整数。默认情况下,可传入 1 表示交换密钥,传入 2 表示签名密钥。
-pe 将所生成的私钥标记为可导出。这样可将私钥包括在证书中。
XXX为你要创建的证书的名字。
这样证书就创建完毕了。

2.WCF服务器使用证书。
在<serviceBehavior>下的<serviceCredentials>项下类配置:
<serviceCertificate storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName" findValue="XXXXXXXX"/>
说明:
storeLocation 指定 X.509 证书存储区的位置。
storeName 指定要打开的 X.509 证书存储区的名称。
x509FindType 指定通过 Find 方法搜索的值的类型。
findValue 获取或设置一个字符串,该字符串指定要在 X.509 证书存储区中搜索的值。XXXXXXXX为你要查找的证书的名字。
这样WCF的证书就配置完毕了。
1和2的具体操作请查阅MSDN,上面有更详细的解释!

如果你在调试或者是运行的时候遇到如下的错误:
[CryptographicException: 密钥集不存在。]
/> [ServiceActivationException: 由于编译过程中出现异常,无法激活服务“/ServiceIISHoster/PickingOrderService.svc”。异常消息为: 证书“CN=jingpeng”必须具有能够进行密钥交换的私钥。该进程必须具有访问私钥的权限。。]

说明你的ASPNET账号没有足够的权限访问C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys\。如下设置即可:
cacls.exe "C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys\a3b1d979b0a27545ee038a30b4965335_f83d7378-8540-48f5-acb3-b4b43c8512b1" /E /G ASPNET:R


a3b1d979b0a27545ee038a30b4965335_f83d7378-8540-48f5-acb3-b4b43c8512b1为你刚刚创建的证书的MachineKey

注意:如果是在Windows 2003上运行,你要为NETWORK SERVICE帐户添加权限,而不是ASP.NET.

分享到:
评论

相关推荐

    wcf证书验证通讯

    证书配置** 配置WCF服务以使用证书涉及以下步骤: - **安装证书**:首先,证书需要安装在服务器的个人证书存储区,并且需要将CA的根证书安装在受信任的根证书颁发机构存储区。 - **服务配置**:在WCF服务配置文件...

    wcf 服务器 客户端正简单 事例

    本“WCF服务器和客户端简单事例”旨在帮助初学者理解WCF的基本概念、工作原理以及如何创建一个简单的服务和客户端应用。 一、WCF基本概念 1. 服务:WCF服务是对外提供功能的实体,它可以是Web服务,也可以是基于...

    WCF服务器端与客户端的操作实例

    本文将深入探讨WCF服务器端与客户端的操作实例,以C#编程语言为背景,帮助开发者理解如何在实际项目中运用WCF技术。 ### 服务器端(服务宿主) 1. **创建服务契约**: 首先,你需要定义服务接口,它包含了服务提供...

    WCF客户端动态设置WCF服务器主机.doc

    以下是如何在WCF客户端中动态设置WCF服务器主机的方法: 1. **动态创建EndpointAddress**: `EndpointAddress` 类是WCF中表示服务终结点地址的类。在上述代码中,`GetHotsUrl` 方法接收一个`EndpointAddress`参数...

    通过X.509证书简单实现WCF安全

    2. **配置WCF服务**:在WCF服务的配置文件(通常是ServiceName.exe.config)中,需要指定使用证书的绑定。例如,添加一个使用HTTPS(HTTP over SSL/TLS)的binding,需要设置`&lt;binding name="secureBinding"&gt;`并启用...

    WCF证书加密demo 包含wcf和测试客户端

    总结来说,WCF证书加密涉及到服务端和客户端的证书配置、服务绑定和行为设置,以及客户端应用程序的证书加载和使用。通过理解这些概念并实践示例,我们可以有效地提升WCF服务的安全性,防止数据在传输过程中被窃取或...

    WCF+X509证书加密小实例

    **WCF结合X509证书加密**的实例旨在演示如何在WCF服务中配置和使用X509证书来增强安全性。以下是一些关键步骤和概念: 1. **配置服务**:首先,服务需要配置一个证书来监听并响应请求。这通常在服务的配置文件(如...

    WCFService可以通过web调用和WCF服务访问

    - **安全性考虑**:为了跨语言和平台安全地调用,可能需要配置WCF服务以支持互操作性更强的安全模式,如证书认证或基于令牌的身份验证。 - **性能优化**:对于.NET客户端,可以利用NetTcpBinding的高效率,但需要...

    wcf c# 服务器 客户端 示例

    在这个示例中,我们将探讨如何使用C#语言来实现WCF服务器和客户端的交互。 一、WCF服务端创建 1. 创建服务接口:首先定义一个服务接口,该接口将包含服务要暴露的操作。例如,我们可以创建一个名为`IService`的...

    WCF(X509证书的创建人部署)

    在WCF中配置X509证书,通常分为以下几个步骤: 1. **创建X509证书**:你可以使用Windows内置的“mmc.exe”管理单元,添加“证书” snap-in 来创建自签名证书,或者使用工具如MakeCert.exe生成证书。确保证书包含...

    WCF消息安全模式之自定义用户名密码

    需要在服务主机配置中指定服务器证书,并设置绑定的安全模式为消息安全,同时注册自定义的身份验证程序集。配置代码可能包括设置证书,启用消息认证,以及注册自定义的验证类。 总的来说,WCF中的UserName消息安全...

    WCF中纯代码配置P2P客户端

    在常规情况下,WCF服务的配置通常通过`.config`文件进行,这些文件包含服务地址、绑定、行为等信息。然而,有时候为了灵活性或简化部署,开发者可能会选择纯代码配置,避免使用XML配置文件。本篇文章将深入探讨如何...

    wcf x.509证书认证

    2. **WCF证书配置**: 在WCF服务中使用X.509证书,需要在服务配置文件(通常是`.config`文件)中设置。这包括指定服务证书、绑定中的安全模式(例如,Transport或Message)、证书存储位置(如CurrentUser或Local...

    wcf 安全配置服务契约

    1. 服务器端不需要提供X.509证书,而是依赖于Windows集成身份验证。 2. 客户端使用其Windows用户名和密码进行身份验证。 3. 绑定协议为TCP,利用TCP来保证数据传输的安全性。 对于服务端配置,我们需要定义服务契约...

    使用证书进行加密传输的WCF

    配置完成后,通过测试客户端和服务端的交互来验证证书配置是否正确。如果遇到错误,如“无法找到证书”或“安全协商失败”,检查证书路径、密码、有效期和信任链是否正确。 ### 6. 版本管理和源码升级 在软件项目...

    WCF加密传输数据,b并且用户名+密码验证

    2. **配置服务绑定**:设置`clientCredentialType`为`Certificate`,并在服务配置中指定服务证书的指纹或颁发者信息。 ```xml ``` 3. **配置客户端**:客户端也需要一个证书来验证服务的身份,或者...

    gsoap wcf https 解决方案

    1. **服务器证书配置**:为WCF服务获取并安装SSL证书,确保服务器的身份验证和数据加密。这通常需要在IIS(Internet Information Services)或其他Web服务器上配置。 2. **gSOAP客户端证书设置**:gSOAP客户端需要...

    WCF匿名客户端加密传输数据

    而在客户端,WCF会自动处理服务器证书验证,除非需要自定义证书验证逻辑。 总结来说,WCF匿名客户端加密传输数据涉及的关键点有: 1. 设置ServiceCredentials允许匿名客户端访问。 2. 使用HTTPS协议和Transport安全...

    android wcf webservice客户端+服务器

    Android WCF Webservice客户端与服务器的交互是移动应用与企业级服务进行数据交换的一种常见方式。Windows Communication Foundation (WCF) 是微软推出的一种面向服务的通信框架,它为构建高度可互操作的分布式应用...

Global site tag (gtag.js) - Google Analytics