我正在尝试使用System.IdentityModel.Tokens.Jwt和Identity在Web API中实现基于JWT令牌的身份验证。
我正在关注this
Web.config
<appSettings>
<add key="issuer" value="http://localhost/" />
<add key="secret" value="IxrAjDoa2FqElO7IhrSrUJELhUckePEPVpaePlS_Xaw" />
</appSettings>
尽管我能够成功地通过身份验证来实现和运行该应用程序,但是我不确定这些设置的目的是什么。我在发卡行中给出的内容仍然可以按预期运行。有人可以提供一些有关发行人和秘密的见解吗?
我正在使用邮递员来测试令牌和API
答案 0 :(得分:1)
他在您与教程(Create a RESTful API with authentication using Web API and Jwt)相同的站点上谈到了这些属性:
颁发者-颁发令牌的实体的唯一标识符(请勿与Entity Framework的实体混淆) 秘密-用于保护令牌和防止篡改的密钥
但是要尝试更精确地解释一下: 发行方基本上是服务器或站点,或者是向客户端发行令牌的任何机构。 而秘密是服务器(或其他任何东西)知道的东西。该机密可用于创建签名,以验证消息在途中没有被更改。有关jwt.io JWT Secret的更多信息:
要创建签名部分,您必须获取编码的标头,编码的有效载荷,机密,标头中指定的算法,并对其进行签名。
希望这会有所帮助!