gpt4 book ai didi

c# - 我应该如何加密 Azure WebJob 的 App.config?

转载 作者:行者123 更新时间:2023-12-03 03:16:37 25 4
gpt4 key购买 nike

我正在构建一个基于 Azure 网站的解决方案,该解决方案需要定期联系后台的服务总线中继端点。我计划的设计方法是使用 Azure WebJob 作为此后台任务的执行引擎 - 我将在 App.config 中存储带有共享 secret 凭据的服务总线连接字符串,使用 Pkcs12ProtectedConfigurationProvider 和我站点的自定义 SSL 证书对其进行加密,然后一切都会完美地进行!

唯一的问题是,WebJobs 似乎无法访问其包含网站的证书。我的 WebJob 的代码非常简单(但请注意 App.config 的 appSettings 部分已加密):

public static void Main()
{
string connectionString = ConfigurationManager.AppSettings["Microsoft.ServiceBus.ConnectionString"];
Console.WriteLine(connectionString);
}

如果我在本地计算机上导入站点的证书并在那里运行 WebJob 可执行文件,则一切都会按预期进行。但是,当我将包含二进制文件和 .exe.config 文件的 ZIP 文件上传到 Azure 时,作业总是失败并出现以下错误。

[07/18/2014 22:53:24 > 621d84: ERR ] Unhandled Exception:
System.Configuration.ConfigurationErrorsException: Failed to decrypt using provider 'Pkcs12Provider'.
Error message from the provider: No certificate was found for thumbprint <My Certificate's Thumbprint>
(C:\DWASFiles\Sites\<My Site Name>\Temp\jobs\triggered\<My Job Name>\hzcfdtn5.f22\WebJob.exe.Config line
XX) ---> System.ApplicationException: No certificate was found for thumbprint <My Certificate's Thumbprint>

我对 WebJob 无法访问相应网站的证书存储的猜测是否正确?这使得几乎不可能使用 Pkcs12 提供程序来加密我的 WebJob 的 secret - 有更好的选择吗?还是 WebJob 根本不适合这项工作?

最佳答案

据我所知,Azure 网站无法使用自定义证书。

但是,您可以将连接字符串放入 Azure 门户网站的连接字符串部分。以下是随后如何阅读的详细信息:http://azure.microsoft.com/blog/2013/07/17/windows-azure-web-sites-how-application-strings-and-connection-strings-work/

虽然上述方法不能解决加密问题,但至少可以从 AppConfig 中删除 CS。这就是我们使用 Azure WebJobs SDK http://azure.microsoft.com/blog/2014/06/18/announcing-the-0-3-0-beta-preview-of-microsoft-azure-webjobs-sdk/ 的服务总线连接字符串所做的事情。

网络作业似乎是适合您想做的事情的工具。

关于c# - 我应该如何加密 Azure WebJob 的 App.config?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24835157/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com