Exchange 2016 /混合环境和MS图表

时间:2018-10-08 22:51:05

标签: office365 exchange-server-2016

我正在尝试在测试2016混合/交换环境中查询Microsoft Graph API的事件。似乎用户需要具有O365订阅才能为其返回事件,否则,当我查询事件时。我知道了。

/ users / {user} / calendarView / delta

此邮箱尚不支持REST API。

或..

/ users / {user} /事件

找不到资源。

我有几点澄清。我想澄清一下,预期的行为是,我可以查询Microsoft图以在邮箱仅位于Prem的混合环境中命中Prem交换,并且应该从系统查询事件。

如果上述情况是正确的,我将假定我们的环境配置错误,并且我很开放和/或将非常感谢任何解决该问题的潜在建议。

此外,我正在使用“ https://developer.microsoft.com/en-us/graph/docs/concepts/auth_v2_service

”中定义的“无需用户访问权限”流程

编辑

我确实发现执行$VAR1 = { 'key1' => 'Value1', 'key2' => 'Value2', 'key3' => 'Value3' };

我得到:

Get-MsolServicePrincipal | where {$_.AppPrincipalId -eq '00000002-0000-0ff1-ce00-000000000000'}  | fl DisplayName,ServicePrincipalNames

似乎丢失了prem服务器的端点,我认为在运行混合设置时应该注意这一点。我现在已经运行了15次。

1 个答案:

答案 0 :(得分:0)

这取决于您正在开发的应用程序的类型。

如果您要开发本机和移动应用程序或某些Web应用程序,则可以使用OAuth 2.0的“授权代码”授权流程来获取令牌。

如果在服务器上运行的后台驻留程序应用程序或后台服务,此应用程序将使用自己的身份而不是使用OAuth 2.0“客户端凭据”授予流向Azure AD进行身份验证的用户的身份调用Microsoft Graph令牌。

参考: “无需用户访问权限”

https://developer.microsoft.com/en-us/graph/docs/concepts/auth_v2_service

提示:

  1. 要在Microsoft App注册门户中为您的应用程序配置应用程序权限:在Microsoft Graph下,选择“应用程序权限”旁边的添加,然后在以下位置选择应用程序所需的权限:选择权限对话框。
  2. 获得管理员同意 一种。您可以依靠管理员在Azure门户上授予您的应用所需的权限。但是,通常,更好的选择是使用Azure AD v2.0 / adminconsent终结点为管理员提供注册体验。 b。这样的请求:

//换行符仅供阅读。

获取https://login.microsoftonline.com/ {tenant} / adminconsent

?client_id = 6731de76-14a6-49ae-97bc-6eba6914391e

&state = 12345

&redirect_uri = http://localhost/myapp/permissions