我对shiro和keycloak很新,我不知道如何将jWT配置添加到shiro.ini中,以便使用keycloak作为授权服务器对用户进行身份验证。
答案 0 :(得分:0)
您尝试使用资源和授权服务器进行存档的内容类似于rfc6749 Implicit Grant。 Shiro没有为这样的任何东西带来过滤器实现。您可能必须为此编写自己的自定义Filter
,Realm
,Token
,Info
,Matcher
和Principal
。
或者,在GitHub上有一个oAuth2 Server和Client示例,使用Shiro并实现上述类。它过时但仍然提供了你需要做的基本想法。
如果您不想遵循rfc6749规范,只需实现AccessControlFilter
并将用户重定向到授权服务器,如果Authorization
标头中没有承载请求。已经有一个关于如何实现这个here的教程。特别是,您应该查看示例onAccessDenied
中的JWTVerifyingFilter
代码,因为这是您的重定向应该发生的方法。