我已经启动并运行了AngularJS和web.api WAAD身份验证。对于客户端,我使用了很棒的库adal.js。对于后端,我使用Microsoft.OWIN.Security.OAuth。这部分进行得相当顺利。
现在我要实现基于角色的授权(将映射到WAAD组)。组不包括在身份验证令牌中,所以我必须向Azure Graph API请求它们。我看到了各种实现方法,例如使用自定义声明提供程序、向project添加web服务等。一些示例已经提供了组和角色之间的映射,以便在[Authorize]
属性中使用。
在非JS的情况下,在令牌中获取组的最简单方法是选择加入。下载应用程序的清单,找到“GroupMembershipClaims”条目,将其值更改为“SecurityGroup”或“All”,然后上载该清单。但是,请注意,这对您的场景是行不通的,因为它使用了隐式授予--在这里,令牌是在URI片段中返回的,因此一个大的令牌可能会超出浏览器的URL长度限制。您可以随时向图请求组,并通过API上的自定义操作使其可用于前端,但从您编写的内容来看,您已经熟悉了这一点。让我在这里讨论一下这个问题--如果有一个更简单的方法让它在水疗中心工作,我会回到这个线程。HTH V.更新:我验证了,在隐式赠款案例中,您将总是通过超额索赔接收组。请参阅https://github.com/azureadsamples/webapp-groupclaims-dotnet/tree/master/webapp-groupclaims-dotnet-它将向您展示如何处理超期索赔以检索组。您需要做的只是将相同的指导应用到web API中,如果您需要使信息对客户机可用,则公开一个或多个这样做的操作。
问题内容: 有没有一种方法可以使会话中断以了解用户是否在线? 即:使用登录名,设置一个$ _SESSION变量,用户超时cookie垃圾收集器更新数据库以将其状态更新为脱机。 我想要一个不涉及时间或日期的解决方案。我希望某些东西可以参加会议或类似的活动。猜测某人是否在线并不能满足我的需求。 问题答案: 不要理会时区之间的差异。没必要 每当用户访问页面时,最后一次更新其在用户表的记录中的字段。然后查
问题内容: 反转此ArrayList的最简单方法是什么? 问题答案: 示例(参考):
反转这个ArrayList的最简单方法是什么?
问题内容: 如果您具有布尔变量: 我可以用if / else子句得到相反的结果: 有更简洁的方法吗? 问题答案: 只是用逻辑运算符不分配就像你会在你的条件语句来实现(,,…)。您已经在使用布尔值,因此它将翻转至(反之亦然):
问题内容: 我是Web服务概念的新手,目前正在从事一个项目,该项目需要通过SOAP从外部应用程序中检索一些数据。 该应用程序提供了RPC编码的WSDL。我目前发现由于RPC被取代而很难在Java中为此服务创建客户端。 到目前为止,最接近的是使用JAX-RPC,但是每次尝试运行ws-compile程序时,都会出现错误,指出“错误代码很大”。 我已经研究了AXIS 2,并尝试编译它的WSDL2JAVA
您为 Zynga 工作,并希望计算不同游戏的当前活跃玩家数量。您的 Web 服务器处理来自许多不同游戏的 ping,并且每个用户都有一个唯一的 GUID。必须能够一次查询一个游戏的活跃用户数。活跃用户是那些在最后一刻得到ping的用户。 日志行不断进入 Web 服务器: 统计活跃用户最快/最简单的方法是什么?请建议一个45分钟的回答与一些代码。 我的版本