【发布时间】:2021-07-25 01:02:39
【问题描述】:
我正在开发一个与第 3 方 API 集成的 .NET 核心控制台应用程序。为了进行集成,我需要在 API 请求中传递 API 密钥。所以我的问题是我可以在哪里/如何将 API 密钥存储在我的控制台应用程序中?在常规 .NET 控制台应用程序中,我使用将 API 密钥存储在 app.config 中并使用 Aspnet_regiis.. 加密密钥。但不确定如何在 .NET 核心控制台应用程序中这样做?
【问题讨论】:
-
您的应用程序将在什么上下文中运行?只是在内部,还是您会将其分发给数百名用户?它会安装在用户的 PC 上还是数据中心的服务器上?你主要想保护谁的密钥?
-
您需要将它们存储在应用程序中吗?为什么不使用 Azure Key Vault?
-
如果您不需要加密,您可以使用 Secret Manger - docs.microsoft.com/en-us/aspnet/core/security/…
-
如果您需要对其进行加密,您需要在数据保护 API 的帮助下自行实施 - docs.microsoft.com/en-us/aspnet/core/security/data-protection/…
-
@Codo 它将在开发应用程序时在实时 Windows 2012 r2 服务器 + 开发服务器上运行。关于我要保护的对象,我想保护它免受开发人员或任何用户的影响访问实时服务器
标签: security encryption .net-core console-application api-key