我有一个单页面应用程序(SPA)和一个API。两者都通过使用基于角色的访问控制(RBAC)的Azure Active Directory进行保护。我可以使用ADAL登录并查看我的SPA。我还可以登录,调用我的API并查看我为自己指定的角色声明。
我想从SPA调用API。我已将API委派权限添加到SPA。我还点击了“授予权限”按钮,所以我看不到同意屏幕。问题在于,当SPA调用API时,不会出现任何角色声明,因此API始终返回403禁止响
有一篇很好的文章,展示了如何使用ADAL.JS库为Azure身份验证配置Angular。这将保护客户端资源。在该示例中,服务器端API是使用.Net Web API编写的,OWIN用于保护Web API。因此,OWIN负责验证从客户端发送的承载令牌。使用均值堆栈,服务器端应用程序接口是用Node.js编写的,那么如果我们切换到Azure AD,我们如何保护Azure应用程序接口呢?微软有没有可用的Node模块?任何例子都会得到极大的重视。