在共享主机上加密web.config

我想在共享主机环境中的web.config文件中加密连接字符串。在共享主机上加密web.config

我已经阅读了MSDN上关于该主题的大多数文章(http://msdn.microsoft.com/en-us/library/53tyfkaw.aspx),并得出结论:我需要使用RSAProtectedConfigurationProvider,以便我可以将配置文件与密钥容器导出到我们的共享主机提供商。但是,当我这样做时,我收到一个错误“RSA密钥容器无法打开。”我认为这是因为我需要授予对密钥容器的aspnet帐户的访问权限,但是这是使用aspnet_regiis工具完成的,我无法使用该工具,因为我在共享主机上。

所以我试图在应用程序启动时在global.asax中对其进行编程加密,但保存文件时出现权限错误 - “加载配置文件时发生错误:访问路径'C:\ Inetpub \ xxx \ YYY \ 3acp98k.tmp”被拒绝。共享主机的限制,我想。

我不能运行ASPNET_REGIIS工具,它是一个共享的托管环境。

没有人有任何想法,我怎么可能加密连接字符串?

回答:

您只需要使web.config可写。共享主机可以完全访问IIS用户或者给你一些基于网络的工具,或许在你的文件管理器中编辑权限。你不需要运行aspnet_regiis。

回答:

我看不出任何东西已被标记为答案,所以我会假设你没有得到解决方案。 只是一个想法 - 但如果唯一的问题是,您的应用程序没有写配置文件的访问权限(提示:您的FTP帐户具有写权限!) - 只需编写一个读取连接字符串设置的ASPX页面,并显示加密的Xml(你可能想把它放在密码保护的位置)。

然后,所有你需要做的是:

  1. 创建未加密的web.config
  2. 上传
  3. 访问“显示加密的ConnectionStrings网页”
  4. 复制和粘贴在加密数据到您的本地web.config
  5. 用新的加密设置再次上传web.config!

回答:

加密密钥必须生成并保存在应用程序的文件夹中。每次读取时,该网站都会使用该密钥来加密和解密配置文件或配置节。默认提供程序是RSACriptoServiceProvider。如果配置文件是加密上传的,但没有提供加密密钥,则它本身不能对其进行解密。每次配置部分被解密和加密时使用密钥

回答:

aspnet_regiis工具用于使用-pef和-pdf选项进行加密和解密。使用相同的工具通过-pc选项创建加密密钥,该选项在机器级别创建密钥对

以上是 在共享主机上加密web.config 的全部内容, 来源链接: utcz.com/qa/266874.html

回到顶部