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服务器证书配置说明-没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限的更多相关文章

  1. 解决WCF部署到IIS出现“证书必须具有能够进行密钥交换的私钥,该进程必须具有访问私钥的权限”

    访问WCF服务时,出现异常详细信息: System.Security.Cryptography.CryptographicException: 密钥集不存在.ArgumentException: 证书 ...

  2. [ArgumentException: 可能证书“CN=JRNet01-PC”没有能够进行密钥交换的私钥,或者进程可能没有访问私钥的权限。有关详细信息,请参见内部异常。]

    堆栈跟踪: [CryptographicException: 密钥集不存在. ] System.Security.Cryptography.Utils.CreateProvHandle(CspPara ...

  3. Openssl生成根证书、服务器证书并签核证书

    1.修改Openssl配置文件CA目录: cat /etc/pki/tls/openssl.cnf dir = /etc/pki/CA 2.生成根证书及私钥: #http://www.haiyun.m ...

  4. linux下安装Apache(https) 服务器证书安装配置指南

    一.  安装准备 1.    安装Openssl 要使Apache支持SSL,需要首先安装Openssl支持.推荐下载安装openssl-0.9.8k.tar.gz   下载Openssl:http: ...

  5. WCF 服务器已拒绝客户端凭据

    将 WCF 服务器和客户端分别部署到不同机器上,可能会触发如下异常. 未处理 System.ServiceModel.Security.SecurityNegotiationException   M ...

  6. 基于iOS,Android的服务器证书失效检测

    1.前言 在目前的iOS,Android手机上,当手机应用进行SSL通信时,手机端默认是不会进行服务器证书是否失效的监测. 在iOS上,系统是会定期获取所访问服务器的证书信息然后出存在本地. 在And ...

  7. 【转】服务器证书安装配置指南(Weblogic)

    服务器证书安装配置指南(Weblogic) 详情请点击: http://verisign.itrus.com.cn/html/fuwuyuzhichi/fuwuqizhengshuanzhuangpe ...

  8. 服务器证书安装配置指南(IIS7.5) 分类: ASP.NET 2014-11-05 12:39 105人阅读 评论(0) 收藏

    1.启动IIS管理器,点击开始菜单->所有程序->管理工具->Internet信息服务(IIS)管理器: 2.选择"服务器证书": 3.在右边窗口,选择" ...

  9. linux服务器证书安装指引

    下面提供了3类服务器证书安装方法的示例: 1. Apache 2.x 证书部署 1.1 获取证书 Apache文件夹内获得证书文件 1_root_bundle.crt,2_www.domain.com ...

随机推荐

  1. 总结一下Android中主题(Theme)的正确玩法

    在AndroidManifest.xml文件中有<application android:theme="@style/AppTheme">,其中的@style/AppT ...

  2. 遇到别人留下的storyboard的,你需要一个引导图,但是不知道怎么跳转.

    首先在AppDeledate.m文件里是这样. { self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds] ...

  3. SDWebImage的使用

    - setItem:(CustomItem *)item { _item = item; // 占位图片 UIImage *placeholder = [UIImage imageNamed:@&qu ...

  4. Android Material Design 兼容库的使用

    Android Material Design 兼容库的使用 mecury 前言:近来学习了Android Material Design 兼容库,为了把这个弄懂,才有了这篇博客,这里先推荐两篇博客: ...

  5. C语言基于GTK+Libvlc实现的简易视频播放器

    小编心语:现下,各种视频播放软件层出不穷,竞争也越演越烈,不知道大家有木有这个想法,小编有时在想能不能做一款属于自己的视频播放器呢~小编特意去实验楼,整理出了这篇关于如何实现简易视频播放器的博文.简易 ...

  6. Linux服务器oraclejdk与openjdk共存并配置JavaEE开发环境

    由于本人学业的需要,需要在linux中搭建JavaEE开发环境,与windows的同学协同开发. JDK 由于fedora默认使用openjdk,移除多多少少会出现点问题,由于很多开源软件默认使用到它 ...

  7. Coding道场:第一次

    10/23日,我在部门内部进行了一次内部学习,使用目前流行的Coding Dojo(道场)方式,进行了TDD开发的演练.演练的题目如下:     有关Coding道场的介绍,请自行百度一下,我就不再多 ...

  8. MySQL修改root账号密码

    MySQL数据库中如何修改root用户的密码呢?下面总结了修改root用户密码的一些方法   1: 使用set password语句修改 mysql> select user(); +----- ...

  9. 数据库设计范式1——三范式

    一讲到数据库设计,大家很容易想到的就是三范式,但是第四.第五范式又是什么,不是很清楚,三范式到底怎么区分,也不清楚,作为数据库设计的基础概念,我再讲解下数据库范式.   Normal form Bri ...

  10. 聊下 git rebase -i

    在使用git作为源代码管理工具的时候,开发的时经常会面临一个常见的问题,多个commit 需要合并为一个完整的commit提交. 在一个基本的迭代周期里,你会有很多次commit,有跟配置文件相关的, ...