我不想使用Keycloak提供的表单(不同公司的原因),而是在React中创建我们自己的登录页面。我可以使用直接访问授权流程登录它并获取身份验证和刷新令牌。但是,我想使用 Keycloak Javascript 适配器来检查用户是否已登录,并且它不提供基于令牌运行检查的功能(仅当它知道您已经通过身份验证时)。
我可以使用此适配器进行社交登录,并且静默检查 sso 可以很好地配合它,我只是希望它也可以用于简单的登录。
这可以使用 keycloak-js 适配器来完成还是我必须自己实现令牌检查?
强制使用直接访问授权是一个非常危险的公司原因。公司原因,带来巨大的安全风险。
将新的登录页面实现为 Keycloak 主题会更安全。 https://www.keycloak.org/docs/latest/server_development/#_themes
安全得多。但仍然:当您从任何来源(如 npm)使用外部库(如 React)时,您可以在登录页面上下载它们,您最好确保可以信任您打包到登录页面的内容的每一个字节。因为不,您不能信任 NPM 或依赖项交付链中的任何系统。 NPM 不保证您添加到项目中的代码确实是您在 github 上看到的代码。
简而言之,这就是为什么您应该坚持使用简单、简单的默认登录页面的一个很好的理由。没有依赖项或外部代码。因此,您的客户端应用程序永远不会看到任何密码,也没有外部代码可以窃取它们。