提问人:Lennart Hammarström 提问时间:8/19/2023 最后编辑:marc_sLennart Hammarström 更新时间:8/19/2023 访问量:57
如何使用 安全地存储租户外部 API 凭据。NET7 / EF + SQL Server / Azure
How to store tenant external API credentials securely using .NET7 / EF + SQL Server / Azure
问:
我的应用有多个租户,而这些租户又有多个用户。每个租户都使用多个外部 API 来收集数据并将其存储在我的服务中。我需要使用租户 API 凭据(用户名、密码)来访问这些外部服务。如何安全地做到这一点?
某种双向加密是解决这个问题的最佳方法吗?我现在的做法是将所有凭据保存在 Azure Keyvault 中,并使用如下所示的函数在我的代码中获取它们:
public record ApiCredentials(string UserName, string Password);
...
public static ApiCredentials GetApiCredentials(this IConfiguration configuration,
string tenantId,
string credentialNamespace)
{
return new ApiCredentials(
configuration[$"{tenantId}-{credentialNameSpace}:Username"],
configuration[$"{tenantId}-{credentialNameSpace}:Password"]);
}
虽然上述方法有效并且非常安全,但它感觉有点骇人听闻,我不确定我是否以正确的方式进行。
这方面有什么标准做法吗?
答: 暂无答案
评论