从守护程序服务通过 Graph (MSAL.NET/Azure AD 2.0) 访问邮箱:管理员访问应仅限于单个邮箱

Access mailbox via Graph (MSAL.NET/Azure AD 2.0) from deamon service: administrator access should be limited to single mailboxes

当您使用 MS Graph 通过后台服务访问特定用户的邮箱时,令牌将在 90 天后过期,因为 MSGraph (MSAL.NET/Azure AD 2.0) 没有 return刷新令牌(参见 here)。

使用管理员同意应该可以解决这个问题,但唯一的选择是获得对组织所有邮箱的访问权限。这对于此任务来说存在太大的安全风险。

有人知道这方面的中间立场吗? 有没有办法在使用用户同意时获取刷新令牌,或者将管理员同意限制为 1 个邮箱?

这是 Microsoft 应该解决的问题吗?

Microsoft Graph 文档提供了一种方法来完成此要求。

只需使用 New-ApplicationAccessPolicy PowerShell cmdlet 来配置访问控制。

New-ApplicationAccessPolicy -AppId e7e4dbfc-046f-4074-9b3b-2ae8f144f59b -PolicyScopeGroupId EvenUsers@contoso.com -AccessRight RestrictAccess -Description "Restrict this app to members of distribution group EvenUsers."

查看来自 Scoping application permissions to specific Exchange Online mailboxes 的详细信息。