Azure Key Vault - 有 .NET Core API 吗?

Azure Key Vault - is there a .NET Core API for that?

我正在寻找一个简单的 class 允许访问 Ubuntu 服务器上我的 .NET Core 应用 运行 中的 Azure Key Vault 机密。不想用Powershell,不想花太多时间在配置上。

有一个 REST API。我可以在它上面写一个包装器,但我怀疑包装器应该已经存在于 .NET Core 框架中,我只是找不到它。

那么,是否有 Azure Key Vault REST API 上的 .NET Core 包装器以及一些文档和示例?

同样重要的是我需要在没有 ASP.NET 的情况下使用它。只是普通的 .NET Core 控制台应用程序。

只要提供正确的凭据,使用这些 NuGet 包的任何应用程序都可以访问 AKV。

  <PackageReference Include="Azure.Security.KeyVault.Certificates" Version="4.1.0" />
  <PackageReference Include="Azure.Security.KeyVault.Keys" Version="4.1.0" />
  <PackageReference Include="Azure.Security.KeyVault.Secrets" Version="4.1.0" />

然后您就可以很容易地创建一个客户端实例,如下所示:

var credentials = new ClientSecretCredential(tenantId: tenantId, clientId: clientId, clientSecret: secret);
var certClient = new CertificateClient(new Uri(vaultUrl), credentials);
var secretClient = new SecretClient(new Uri(vaultUrl), credentials);

然后你对AKV进行操作