![]() |
1
0
所以如果我们在讨论解决方案-我会在下面给你一个建议。 真正的问题是确保您的核心api理解传入的请求是有效的,而不必对api的当前形式进行过多的重构。 您使用api密钥的想法是我想做的事情,您可以在api中编写一个中间件,从windows服务发送的头中读取api密钥,验证它,然后生成一个有效的jwt令牌并将其添加到请求头中。一旦请求到达mvc层,它将包含一个有效的jwt令牌并传递auth头。 这就带来了复杂性,因为必须在数据库中维护一组api密钥,并在请求级别验证它们。这意味着发送的每个请求都必须经过这个过程,并对密钥进行数据库查找。 为了减轻这种情况,我将添加另一个报头,指示传入的请求来自用户(签入中间件)以外的另一个源,并可能在一组api密钥上添加一个缓存实现,以将它们保存在内存中以减少查找。 如果您的windows服务需要做与用户完全相同的事情,那么上面的场景将非常有用。 如果它的不同逻辑没有什么可以阻止您使用您可以为该控制器定义的自己的授权策略为您的服务滚动带有定制端点的新控制器。然后,该控制器将负责为windows服务(或其他组件)提供服务。 |
|
Shanxx · 我在哪里存储我的jwt以进行授权? 11 月前 |
![]() |
Andre · AWS Lambda自定义JWT验证 1 年前 |
|
unuser · JWT得到验证,即使我更改了其中的一个字符[重复] 1 年前 |