- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们有一个使用 Angular 构建的应用程序。应用程序触发后端 REST api 来显示数据。
问题是,
该应用程序使用 LDAP SSO 身份验证来验证用户(这是公司内部的应用程序,因此没有外部用户)
步骤是,
如果用户启动站点,它将重定向到 WebSec 登录,用户在其中提供用户名和密码进行身份验证(隐式流程)。
一旦身份验证成功,我们将从 WebSec 获取 JWT 访问 token ,该 token 将存储在 session 存储中,并将用作后端服务的“承载” token 。
后端服务有自己的 WebSec 证书来验证这个 JWT token ,否则它将以身份验证错误作为响应。
对于前端——我们使用 Angular对于后端——我们是 Java,Sprint 引导。
问题是,
如果有人对此提供解决方案,我将不胜感激。
最佳答案
到目前为止,我看到的最好的方法如下(我还运行了一个 MS 单点登录服务器,正如你所描述的那样),但我建议它像 Discord 那样做:
redirect_link
和 application_id
重定向到 SSO 并声明请求application_id
已知,但您的 SSO 会重定向到 redirect_link
,但会随机创建 code=$myCode
,可以是 JWT 或任何长字符串code
并请求一个真正的身份验证承载 token 。如果这条链全部成功,您可以非常确定您的内部网络中的一切都很好。这对于公司内部来说是一个足够好的方法。
对于外部使用,您可以在第 1 步和第 2 步中提供一个安全 key ,sso 必须为从前端生成的前端提供回来,以确保此重定向来自您的 SSO。
编辑:有关加密的更多详细信息:
您的 SSO 可能使用 HS512 对代码进行加密,该代码将发送到客户端,然后通过 API 再次发送到 SSO。在这个循环中,如果 SSO 可以解密和验证它并且 API 是已知/允许的通信伙伴,那么您可以说所有方面都是可信的。
关于angular - 具有服务网关调用的 SSO 身份验证 Angular 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57105396/
我是一名优秀的程序员,十分优秀!