在C#中使用Microsoft Graph api如何在我的应用程序中使用azure Ad认证获取当前登录的用户列表(活动会话)。

问题描述 投票:0回答:1

我们正在使用 azure ad 为我们的应用程序进行身份验证,并处理 Azure Ad 的令牌到期问题。我们需要获取当前正在工作(登录)到应用程序的用户列表。以及从应用程序中签出(注销)的用户列表。

它像跟踪在线和离线用户对我们的应用程序。我翻阅了微软的文档,但找不到这个用例的API。请分享一些代码或方式,我可以实现不存储用户会话在我的数据库。

asp.net-core azure-active-directory asp.net-web-api2 azure-ad-graph-api
1个回答
2
投票

很抱歉地告诉你,据我所知,没有这样的图api命令,就像你说的,唯一可靠的方法是自己存储用户会话信息。

我可以想到的唯一其他事情,你可以做的是尝试从 azure 审计日志中推断登录信息,得到一个近似值。你可以根据这个图形端点得到一个登录列表。https:/docs.microsoft.comen-usgraphapisignin-list?view=graph-rest-1.0&tabs=http

还有端点auditLogsdirectoryAudits,按照这里的说法。https:/docs.microsoft.comen-usazureactive-directory-b2cview-audit-logs。 这可能会显示一些关于正在发行的ID令牌的信息。

除了这两个选项之外,我不相信目前还有其他更好的方法。


0
投票

在与微软团队讨论后,我们得到的信息是,他们没有任何图形api来获取托管应用程序的活跃登录用户列表。

但是我们可以跟踪审计日志api,这将帮助我们获得特定时间内登录的用户列表。但是这个列表也不是实时的,可能会有5到10分钟的延迟。我们将采用手动处理用户会话详情的方式。

粘贴下面的审计日志api供参考。https:/docs.microsoft.comen-usgraphapisignin-list?view=graph-rest-1.0&tabs=http。

https:/docs.microsoft.comen-usgraphapisignin-get?view=graph-rest-1.0&tabs=http。

© www.soinside.com 2019 - 2024. All rights reserved.