c# - 使用 Azure Function 和 Azure Key Vault 生成客户端证书
问题描述
我必须在 Azure Key Vault 中存储根证书。这一步我觉得很好。
下一步是一个 Azure 函数,我应该从中创建一些具有特殊 ID 的客户端证书和来自 Key Vault 的根证书。但我不知道该怎么做。
有人可以帮助我使用 Azure 功能以及如何在那里创建客户端证书吗?函数应该用 .NET 编写。在网上,我几乎找到了 Powershell Skripts,但这对我没有帮助。如果有人能够帮助我,那就太好了。
非常感谢。
解决方案
这是我从Jeff Hollinger的这篇文章中得到的一个观点。这是您在函数中需要的一些示例代码:
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;
namespace KeyVault
{
public static class MyFunctionClass
{
private static string superSecret = System.Environment.GetEnvironmentVariable("SuperSecret");
[FunctionName("MyFunction")]
public static void Run([EventHubTrigger("eventhub", Connection = "EventHubConnectionString")]string myEventHubMessage, ILogger log)
{
// DISCLAIMER: Never log secrets. Just a demo :)
log.LogInformation($"Shhhhh.. it's a secret: {superSecret}");
}
}
}
听起来您已经在 Key Vault 中拥有您的秘密,因此您所缺少的就是将您的 Key Vault 引用添加到您的函数的应用程序设置中。这是来自 Microsoft Azure-Functions-Key-Vault文档的描述。
在本地运行时,您可以将值添加到文件中,例如local.settings.json
:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"SuperSecret": "I love Azure Functions",
"EventHubConnectionString": "Endpoint=sb://jeffs.servicebus.windows.net/;SharedAccessKeyName=MyFakeKey;SharedAccessKey=NotARealSecret"
}
}
推荐阅读
- arcore - 如何优化大型开放空间的 AR 标记?
- java - WSO2IS:使用一个用户的 grant_type 值密码生成的令牌,对另一个用户有效
- python - 在python中获取月末数据
- python - 确定点击事件中的哪个椭圆
- python - QSqlRecord not updating Database
- c++ - No stacktrace from core dump, no build id can be extracted from the core either
- javascript - 将 JavaScript 与 WTForms 一起使用
- firebase - Firebase Analytics - export userId
- xml - How to remove nodes from XML if attribute matches value in another file?
- python - Slow loading SQL Server table into pandas DataFrame