Azure active directory 使用Graph API访问Exchange 2016内部部署邮箱(混合设置)
我在prem exchange server上有一个邮箱(处于混合模式)Azure active directory 使用Graph API访问Exchange 2016内部部署邮箱(混合设置),azure-active-directory,microsoft-graph-api,exchange-server-2016,azure-hybrid-connections,microsoft-graph-mail,Azure Active Directory,Microsoft Graph Api,Exchange Server 2016,Azure Hybrid Connections,Microsoft Graph Mail,我在prem exchange server上有一个邮箱(处于混合模式)abc@onprem.com我正试图通过graph api(/messages)访问此文件。如果我在graph explorer中执行此操作,这将非常有效,但在通过实现执行此操作时失败 Azure应用程序注册门户中提供了所需的应用程序权限。 实现使用授予类型作为带有证书的客户端凭据,这非常适合云用户。 API的响应 IIS日志 For调用来自图形浏览器 2019-02-28 15:02:31 172.31.10.98GET/
abc@onprem.com
我正试图通过graph api(/messages)访问此文件。如果我在graph explorer中执行此操作,这将非常有效,但在通过实现执行此操作时失败
Azure应用程序注册门户中提供了所需的应用程序权限。
实现使用授予类型作为带有证书的客户端凭据,这非常适合云用户。
API的响应
IIS日志
我们正在exchange服务器上使用自签名证书,这会导致此问题吗?如果您想知道graph explorer中的一切是如何工作的,那么问题实际上在其他地方-Exchange似乎不支持客户端凭据流。但是,您可以通过以下PowerShell强制执行(请确保在应用后重新启动IIS):
$apps=获取PartnerApplication
#Microsoft Graph是数组中的第二项,如果您不确定,请先调用$apps列出这些项
$apps[1]|设置PartnerApplication-AppOnlyPermissions$apps[1]。ActAsPermissions
完整的解释可以在这里找到:我记得做了上面提到的所有事情[链接]。但我上次执行Set PartnerApplication失败,错误如下。如何克服它??找不到与参数名称'AppOnlyPermissions'匹配的参数。+CategoryInfo:InvalidArgument:(:)[Set PartnerApplication],ParameterBindingException+FullyQualifiedErrorId:NamedParameterNotFound,Set PartnerApplication+PSComputerName:XXX您有什么版本的Exchange?我在EX2016I上做了这个,我也在exchange版本16上做了尝试。版本:标准AdminDisplayVersion:版本15.1(版本1591.10),这意味着您在Exchange Server 2016 CU11上。我必须检查客户在生产中运行的是什么,但我认为是类似的。无论哪种方式,都有一种方法可以将其直接放入数据库。请给我几天时间来解决这个问题。我已经检查了我的环境-它是Exunge 2016 CU12-1713.5,您可以尝试安装CU12并试用吗?
{ 'error': {
'innerError': {
'date': '2019-02-28T14:17:45',
'request-id': '6a85f8c3-4e13-4cf0-84b2-ddc934241afd'
},
'message': '',
'code': 'UnknownError'
}}