【发布时间】:2017-12-27 11:07:01
【问题描述】:
我发现在使用 ADAL.js 时,由于某些 URL 限制,您无法获得组成员资格声明。
https://github.com/AzureAD/azure-activedirectory-library-for-js/issues/239
我在前端使用oauth-bearer认证,即前端通过AD登录页面触发登录。 然后客户端将访问令牌传递给后端。
我想做什么:
我想根据组成员身份过滤后端端点中的一些数据。 例如如果您是 AD 中“伦敦”组的成员,您应该只能在我们的数据库查询中看到与伦敦相关的内容。
超级简单的使用例如Okta 或 Auth0,与 Azure AD 无关。
我还想在前端完成同样的事情,即根据组成员身份显示和隐藏菜单项。 (仍然在后端检查所有访问权限)
文档很少而且不是很有帮助。 “你应该使用 Graph API”。
如何?如何使用从前端获得的令牌与图形 api 对话?
这是我的 Node+Express 端点的设置:
app.use(
"/contacts",
passport.authenticate("oauth-bearer", { session: true }),
contacts
);
我应该如何、何时何地在此处调用图形 API?
我们的系统非常小,所以我不介意使用会话状态。 我可以在用户登录时获取此信息吗? 那流量应该是怎样的?客户端登录,登录后调用后端请求群组?
【问题讨论】:
标签: node.js azure-active-directory adal