使用azure中的域级accessToken获取所有用户的联系人

时间:2016-03-17 06:36:24

标签: azure office365

有没有办法,我们可以使用域级访问令牌获取/写入域中所有用户的联系人。

目前,我发现我们可以使用管理员同意来获取组织的域级访问令牌。

但是此访问令牌不会包含有关用户的任何详细信息。 那么我们如何指定哪个用户,我们正在尝试获取联系人?

有没有办法,我们可以使用tenant-id和user-id来获取用户特定的访问令牌,而无需他在管理员同意的情况下登录一次?

1 个答案:

答案 0 :(得分:0)

“域级访问令牌”是否意味着您检查应用程序权限以阅读所有联系人信息,如下图所示: enter image description here

Office 365 API和Microsoft Graph API支持获取个人联系人。来自“授权代码授予流程”和“客户端凭据”的令牌获取之间的区别在于我们需要通过 ID userPrincipalName 而不是别名来指定用户上下文的

REST API:

GET /me/contacts
GET /users/<id | userPrincipalName>/contacts

样品申请:

GET /Users/fx@msdnofficedev.onmicrosoft.com/contacts

如果您正在开发单个租户方案,由于该应用程序已在Azure AD租户上注册,因此无需再次同意。

否则,如果您正在开发多租户应用程序,当应用程序第一次运行时,用户需要管理员权限才能同意该应用程序以及#34;阅读所有邮箱中的联系人&#34;。

有关Microsoft Graph权限范围的更多详细信息,您可以参考以下链接: https://graph.microsoft.io/en-us/docs/authorization/permission_scopes