如何知道 JWT 的密钥以及将其存储在 Windows 服务器上的位置

Nil*_*esh 1 c# jwt asp.net-core-webapi .net-5 api-security

我正在尝试在我的 Web API 中实现 JWT 身份验证。我是第一次这样做。当我在 Google 上搜索一些教程时,第一步是显示将密钥保存在 appsettings.json 文件中。我被困在那个地方了。我如何知道并获取该密钥,以便将其存储在文件中。另外,我如何知道每个环境(即开发、测试和生产)的密钥。

提前致谢。

小智 5

在这里,首先我们在 appsettings.json 中配置密钥。这可能是任何至少包含 16 个字符的内容。

在 Appsettings.json 文件中,添加如下配置, "Appsettings":{"key":"this is my keyss"}

在控制器类的构造函数中,初始化配置,

private readonly IConfiguration _config;
    public UserAuth(IConfiguration config){
                _config=config;
            }
Run Code Online (Sandbox Code Playgroud)

在您需要该密钥用于签名的地方,我们可以通过以下代码检索,

var key=new SymmetricSecurityKey(System.Text.Encoding.UTF8.GetBytes(_config.GetSection("Appsettings:key").Value));
Run Code Online (Sandbox Code Playgroud)

  • 以及如何保存它。即使在产品服务器中也可以存储在 appsettings.json 文件中吗? (2认同)