JL.*_*JL. 8 asp.net permissions certificate
是否可以授予证书存储的asp.net读权限?
如果有,怎么样?
如果不...我是否需要为每个证书文件手动设置权限?
如果是,这些文件在HDD上的物理位置在哪里?
Sti*_*ack 12
通常,您授予A证书的权限.我使用这样的方法来查找自定义的证书和授予权限.如果您使用的是Verisign,Thawte等公共实体颁发的证书,则可能没有必要.
FindPrivateKey.exe My LocalMachine –n "CN=<certificate issuer>"
Run Code Online (Sandbox Code Playgroud)
...将在特定发行人的个人商店中的本地机器上找到证书.
注意:如果FindPrivateKey是不是你的本地计算机上,下载WCF样本,包括FindPrivateKey工具,在 http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=21459
FindPrivateKey返回证书私钥的位置,类似于
"C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\Machinekeys\4d657b73466481beba7b0e1b5781db81_c225a308-d2ad-4e58-91a8-6e87f354b030".
Run Code Online (Sandbox Code Playgroud)
运行以下命令行以指定对ASP.NET/WCF服务的进程标识的只读访问权限
cacls.exe "C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\Machinekeys\4d657b73466481beba7b0e1b5781db81_c225a308-d2ad-4e58-91a8-6e87f354b030" /E /G "NT AUTHORITY\NETWORK SERVICE":R
Run Code Online (Sandbox Code Playgroud)
注意:如果您运行的是MicrosoftWindows®XP,请为ASPNET标识而不是NT Authority\Network Service标识提供证书权限,因为IIS进程在Windows XP中的ASPNET帐户下运行.
可以从证书的MMC管理单元中查看证书.打开MMC,选择"文件" - >"添加/删除管理单元",单击"添加"按钮并选择"证书".从这里,您需要选择适当的存储(通常是计算机帐户 - 用于ASP.NET项目的本地计算机)来管理,然后您可以查看/管理证书.
请仔细查看不同的命令行选项,并确保在授予任何权限之前清楚地了解哪些证书及其工作方式.
小智 9
默认情况下,asp.net运行的网络服务帐户无权访问本地计算机个人证书.通过以下方式授予访问权:
第1步 - 如果您还没有安装它 - 获取WinHttpCertCfg
步骤2 - 如果您已在计算机上安装了证书,并且只需要授予对网络服务的访问权限:
WinHttpCertCfg.exe -g -c LOCAL_MACHINE\MY -s"IssuedToName"-a"NetworkService"