如何管理两个身份验证系统:有状态和无状态(缓存)
Posted
技术标签:
【中文标题】如何管理两个身份验证系统:有状态和无状态(缓存)【英文标题】:How to manage two authentications systems: with and without state (cache) 【发布时间】:2019-09-21 22:26:48 【问题描述】:我有一个使用 Symfony 3 的 HTTP API。 我正在使用 GuardAuthenticator,以便我们可以使用登录名和密码调用 API,并将无状态(安全属性)设置为 false。
今天我添加了另一种身份验证方式,即使用来自外部 IDP 的 jwt。在这种情况下,我希望将 statless 设置为 true(用户必须在每次调用时提供 jwt)。
请问您有什么想法吗? :)
api:
pattern: ^/api/
stateless: false
guard:
authenticators:
- api.security.guard_authenticator
switch_user: true
anonymous: ~
【问题讨论】:
【参考方案1】:在我的 API 中,我有一个 Basic Auth + Token 系统。为此,我在 pre_auth 中检查了 BasicAuth。
我猜如果你将 stateless 传递给 true,你将不得不实现类似的东西。
【讨论】:
以上是关于如何管理两个身份验证系统:有状态和无状态(缓存)的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 4:基于身份验证状态的单个 URI 的两个不同视图页面