最近在学习WCF的知识,尤其是用自定义用户名密码认证方式,问题重重,但过后感觉学到的东西也很多,对它的一些基础知识加深了印象
废话不多说,这两个问题主要出在“服务器端证书”的访问权限上,注意的朋友会发现里VS中它是没问题的,但部署在IIS中问题就出来了。
这个问题是因为 WCF 所使用的帐户(NETWORK SERVICE/ASPNET)对证书私钥文件的读访问权限造成的。
1、证书保存在哪了?
2、给证书加什么权限?
3、怎么加这些权限?
==1、一般会在服务器这个路径:(win2003) C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys
==2、给账户NetWork Service / AspNet 加相应的访问权限
==3、可以手工加,也可以通过小工具加 FindPrivateKey.rar
此工具解压后,修改privatekeysetup.bat(用记事本打开)中 LocalMachine -t "这里的值改为你的证书的《微缩图》的值",保存,双击 privatekeysetup.bat,OK
http://www.cnblogs.com/anjou/archive/2010/04/24/1719379.html
http://www.cnblogs.com/anjou/archive/2010/04/24/1719351.html
就这样了,给自己日后用的时候,方便。希望对WCF学习的同仁有帮助。