angularjs - 具有单独后端和前端应用程序的项目的单点登录

标签 angularjs node.js single-sign-on

我的 Web 项目开发为两个应用程序: i) Node.js 中的后端应用程序 ii) Angular.js 中的前端应用程序

是否可以在项目中使用两个实现单点登录,或者需要将后端和前端组合为单个应用程序。

据我所知,如果有两个独立的应用程序,那么它们就有独立的用户 session 和状态。因此,在我的场景中,前端登录可能无法使用单点登录链接到后端。

最佳答案

openid Connect 在您的场景中运行良好。前端 Angular 应用程序使用 openid 连接服务器发起 SSO,并接收 id_token 和 access_token。 Angular 前端应用程序使用 id_token 作为身份验证 token 。一旦用户被授权访问前端应用程序,Angular 应用程序就会在 Authorization header 中断言 access_token 以调用后端 Node.js 应用程序。如果access_token是JWT,Node.js可以在本地验证access_token。如果 access_token 是不透明的 token,通常 Node.js 会调用 openid conenct provider 中的 remote token introspection API 来验证 access_token。综上所述,前端angualr是典型的openid connect流程,后端Node.js是OAuth资源服务。

关于angularjs - 具有单独后端和前端应用程序的项目的单点登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51040567/

相关文章:

scala - 网络和移动拼车使用哪种技术栈

javascript - 检测到网站上的奇怪注册模式

jwt - Keycloak 返回已经过期的 token

c# - 在 C# 中处理编码的 cookie 值

javascript - 是否可以在 Angular ng-show 表达式中获取 HTML 元素的计数?

javascript - ng-滚动条 : Right to left issue when horizantal scrolling

javascript - 如何设置 ionic2 的选定 ng

javascript - 使用 console.log 时如何隐藏对象上的某些键

c# - MSAL - PublicClientApplication - GetAccountsAsync() 不返回任何帐户

javascript - ionic 切换检查属性