Active Directory应用程序内部使用的Azure Graph API的活动/审核日志



背景:我们开发了一个Active Directory企业应用程序。开发此应用程序是为了从active directory中用户的outlook日历中读取忙/闲信息。此应用程序使用GetScheduleGraph API获取用户的忙/闲信息。身份验证机制是通过管理员同意。

问题:我们有一个客户将使用此应用程序并将其安装在其活动目录中。他们希望看到这个应用程序正在使用Graph API执行的活动/操作。我不确定是否可以让每个安装的应用程序执行活动。我知道有一种方法可以知道谁安装/授权了实际的应用程序,但除此之外,我看不到Azure门户上有任何方法可以查看每个API调用的日志。

简言之,客户端希望了解企业应用程序正在进行的每个API调用,并验证它是否未获取敏感数据。

感谢这里的任何指导。

更新-2020年11月17日

在通过各种渠道联系Microsoft支持部门后,我们终于得到了一个答案,其中提到无法获得我们正在寻找的信息。没有办法审核上面提到的图形API的使用情况。

谨致问候,Bhavik

至少从Azure AD的角度来看,微软还没有提供这样的工具或方法来实现这一点。

您的客户似乎非常担心其他租户(例如您的租户(的人员会通过此企业应用程序访问其公司的数据。我认为您的客户不了解企业应用程序的工作原理。

当您的企业应用程序通过管理员同意安装到租户中时,这意味着他们可以使用此企业应用程序访问此应用程序范围内的自己的数据。但作为开发人员,您无法访问他们的数据。使用您的企业应用程序的任何其他租户也将无法访问其他租户的数据。

多租户应用程序用于向许多组织提供软件即服务(SaaS(应用程序。客户端的数据在其自己的租户中进行访问。点击此处了解更多信息。

此外,企业应用程序应遵循";最小特权原则";,因此,如果您的应用程序仅根据权限分配Calendars.Read,则它将无法获取日历数据以外的数据。

您可以通过将从图形api接收的答案限制为仅针对客户租户,并使用令牌回复url来保护流程。这样,回答将只接受来自客户域的请求。关于审计,它并不完美,但您可以使用curl或第三方工具监控到api地址的http请求,并记录相关的api请求。这会让他们了解幕后的情况。

最新更新