asp.netMSDeployEnableWebConfigEncryptRule无法加密web.config我在.pubxml文件中添加了true来加密web配置文件。但是,发布时出现以下错误。我不知道web.config文件中是否需要其他设置,而不是在.pubxml错误中插入true:Web部署任务失败。(无法加密目标web.config。有关详细信息,请参阅:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FAILED_TO_ENCRYPT_WEB_CONFIG。)注意:#ERROR_FAILED_TO_ENCRYPT_WEB_CONFIG未出现在给定链接的任何位置。我该如何解决这个错误?(注意:我不想在发布之前在本地预加密web.config文件)问题似乎是MSDeployEnableWebConfigEncryptRule不适用于具有多个web.config文件的MVC项目。通常,MVC项目有一个Views/Web.Config文件。这似乎是MSDeploy的错误。我的解决方法是使用部署后deployhell脚本在目标服务器上执行相同的命令。有关示例Powershell脚本,请参阅http://www.iis.net/learn/publish/using-web-deploy/web-deploy-powershell-cmdlets:Add-PSSnapinWDeploySnapin3.0$cmd='%windir%Microsoft.NETFrameworkv4.0.30319ASPNET_REGIIS.exe-{0}{1}"{2}"'-f'pef','connectionStrings',$destinationFolderNew-WDPublishSettings-UserId$UserName-Password$Password-ComputerName$destination-AllowUntrusted-FileName服务器.publishsettings-AgentTypeMSDepSvc-Site$WebsiteInvoke-WDCommand-Command$cmd-DestinationPublishSettingsserver-Verbose我也收到同样的消息。我查看了事件查看器>MicrosoftWeb部署中的Web部署日志。它给我的异常是:ERROR_FAILED_TO_ENCRYPT_WEB_CONFIGMicrosoft.Web.Deployment.DeploymentDetailedClientServerException:无法加密目标web.config:......。更多信息在这里:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FAILED_TO_ENCRYPT_WEB_CONFIG。—>System.Security.Cryptography.CryptographicException:对象已经存在。谷歌搜索这让我得到了“justTFS”的这个答案:发布管理代理未连接,它说“部署用户()无法访问加密存储。在安装部署代理的服务器上,导航到此文件夹%ALLUSERSPROFILE%ApplicationDataMicrosoftCryptoRSAMachineKeys并授予读/写访问权限。-仅TFS2014年9月3日12:08"所以我尝试将我的MSDeployer用户帐户读/写到该MachineKeys文件夹,但它拒绝我这样做。我最终将部署用户帐户添加为本地管理员,并且这样做了,用它部署就可以成功加密web.config文件到服务器了以上是C#学习教程:asp.netMSDeployEnableWebConfigEncryptRule不能加密所有web.config共享的内容,如果对大家有用以及需要了解的更多C#学习教程,希望大家多多关注~本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除,转载请注明出处:
