Azure应用程序注册-范围和权限



我有一个windows服务应用程序,它需要向Azure AD验证多个服务帐户。。。每个实例将具有不同的服务帐户。(假设我在3台不同的服务器上有3个实例,它们有3个不同的服务帐户——S1、S2、S3(。该服务使用Microsoft Graph API从共享电子邮件地址读取(每个实例都有自己的共享电子邮件E1用于S1,E2用于S2,E3用于S3(。

我在Azure应用程序注册中需要什么样的权限或设置才能让S1读取E1(而不能读取其他(,S2读取E2,S3仅读取E3。

我正在考虑在一个单一租户中注册该应用程序,并添加3个所有者S1、S2、S3。因此,服务帐户使用user\pass进行静默身份验证,并从共享电子邮件中读取。作用域应设置为"邮件"。阅读共享。

管理员用户将同意所需的权限。。。因为没有UI。

这是正确的设置吗?

从设计的角度来看,您的想法是正确的。

除了Mail.Read.Shared,您可能还需要基本的委派权限Mail.ReadBasicMail.Read才能阅读电子邮件。

因为您希望S1读取E1(而不能读取其他(,所以您应该代表用户实现Get访问。因此,S1只能访问其自己的共享电子邮件。

当然,密码流也应该适用于这种情况。

最新更新