Auth2 + Open ID Connect,如何與內部後端進行授權?

意義

我正在處理一個包含單頁應用程序和後端服務的項目。訪問此應用程序的唯一方法是通過 One Login 帳戶。我的 FE 通過 Oauth2 + Open ID Connect 與 One Login 集成以進行身份驗證。

用戶登錄後,FE 有Access TokenID Token,因此我們可以獲取一些用戶信息,例如:電子郵件,姓名,... 這對於身份驗證部分很好。

但是對於授權部分,FE需要傳遞一個令牌,它不僅包括用戶信息,還包括用戶角色等授權信息。無論是訪問令牌ID令牌這些信息。

我目前的解決方案是:BE 將為 FE 提供一個 API,用於將 ID 令牌(它從 One Login 獲得)交換為具有足夠授權信息的內部 JWT 令牌,然後 FE 將使用內部令牌與 BE 進行通信。我想知道這種方法是否存在安全風險,或者有更好的方法嗎?

加里·阿徹

the foreign token problem遇到,您發現第三方令牌對您自己的授權沒有用。解決方案是像您一樣控制發布您自己的訪問令牌,以及您自己的聲明。

首選的長期選項是讓您的應用程序重定向到授權服務器 (AS),並由它為您管理與 OneLogin 或其他身份提供商的連接。然後它將發行您可以控制的代幣。

這些鏈接可以讓您了解一個好的 AS 的行為方式,同時保持應用程序中的代碼簡單:

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从Google Auth2新版本获得授权后如何获取授权的电子邮件ID

谁/什么是Open ID Connect Auth代码流中的客户端应用程序?

谷歌auth2 clojurescript externs

Google auth2 facebook 登录无效

Windows Live Open ID Connect / Oauth 2.0如何与Apache mod_auth_openidc一起用于SSO

Open Id Connect的令牌存储在哪里?

Open ID Connect 与移动客户端的最佳实践

使用Open ID Connect与服务器端Blazor

在 ASP.NET Core 2 中使用令牌或 Open ID Connect 进行身份验证

Google auth2 .getCurrentUser()获取用户令牌?

OAuth2 Open ID客户端身份验证,后跟LDAP用户详细信息和权限

使用 Open ID Connect 访问令牌保护 Web API

在ASP.Net Core中转换Open Id Connect声明

使用GSuite Open ID Connect访问扩展的用户信息

OAuth 2.0和Open Id Connect声明问题

如何將 2 個 div 的 html 內容與 JQuery 進行比較?

Open ID 实现 PowerSchool PHP

如何使用Owin / Open ID Connect将其他Azure AD属性添加为声明

Open Id Connect疑问-Identity Server 4 //如何向特定用户授予具体作用域?

React Native应用程序-如何使用OAuth 2.0和Open ID Connect?

如何将Open ID Connect令牌安全地转换为Cookie

初始化 auth2 以在 React 中登录用户

在javascript中为Google auth2检测错误:“ popup_blocked_by_browser”

每次访问应用程序时,Google auth2都会请求许可

使用Google的auth2 API时,是否可以提交随机数或状态

从行ID = 2更新行ID = 1

在Open Id Connect事件中提示用户提供其他信息?

Open Connect ID隐式流和混合流之间的区别

如何使用 C# 中的 Open xml 从 docx 文件中获取图像名称或 ID?