问题描述
我正在使用守护程序应用程序令牌通过 Microsoft Graph API(/users/{id}/mailFolders
) 获取邮件文件夹信息。在这种情况下,我可以接收任何用户的文件夹。但是当作为应用程序(而不是用户)进行身份验证时,您不能使用委派权限。
如何使用应用程序身份检查用户是否有权访问委派文件夹,或者在使用应用程序身份时,MS Graph 能否以某种方式强制用户访问其他用户的邮箱?
解决方法
没有。这是不可能的。
首先需要了解Azure AD中Application token(应用权限)和User token(委托权限)之间的the difference。
如何使用应用程序身份检查用户是否有权访问 委派文件夹?
当您使用应用程序令牌时,您正在播放一个可以访问所有邮箱的应用程序。您不是以用户身份登录,因此您无法检查用户对其他用户邮箱的访问权限。
MS Graph 能否以某种方式强制用户访问另一个用户的邮箱 何时使用应用程序标识?
同样,MS Graph 本身也不提供此功能。您可以Use the EAC to assign permissions或Assign permissions to the entire mailbox with Exchange Online Powershell。