我有一个使用B2C作为身份管理系统的多租户应用程序,我们已经使用自定义策略根据文档(https://docs.microsoft.com/en-us/azure/active-directory-b2c/identity-provider-azure-ad-multi-tenant-custom?tabs=applications)配置了Azure AD Multitenant。
当用户使用Azure AD登录时,我们有一些要求:
我正在尝试让1号数字正常工作,因为这将使我在其余方向上保持正确的方向。
首先,我尝试按照(https://docs.microsoft.com/en-us/azure/active-directory-b2c/idp-pass-through-custom)传递issueridpaccesstoken,但这使用户的初始登录膨胀得太多,以至于我得到了可怕的400个标题过长的错误。花了几天时间尝试解决该问题,似乎每次都指向“清除cookie”的解决方案...但是在这种情况下,这实际上是行不通的。 cookie实际上并不多,而且似乎没有地方可以解决标头溢出的问题。另外,我宁愿不直接从前端接收访问令牌并调用图api,而是从我的.net核心webapi后端接收并代理图片或我想执行的任何其他Graph API操作。为了实现这一点,我使用后端api查看了基于应用程序的身份验证,但似乎要花很长时间才能在应用程序中稍后获得多个管理员的同意,等等,而我宁愿在初始时执行此操作。从前端登录用户。
我研究了多种解决方案,研究了创建身份守护程序,在Internet上搜索了选项。.但是,看起来应该很简单的东西却过于复杂。
这是我的问题:
非常感谢!
答案 0 :(得分:1)
不要在前端存储令牌。使用client credentials flow从您的API调用MS Graph。请查看Get access without a user了解更多信息。
您可以使用最低要求的权限来调用以下端点来完成所有3个要求: