在德国国家云中注册Microsoft Graph API的应用程序

时间:2018-02-06 10:48:33

标签: microsoft-graph sharepoint-online

我已成功注册graph.microsoft.com的申请,但现在还需要使用graph.cloudapi.de

Application Registration Portal似乎不是德国国家云的正确选择。

此外,在portal.microsoftazure.de中注册的应用程序仅适用于SharePoint API,而不是图形。

这是我的程序和德语Microsoft Cloud之间的HTTP交换示例。我正在用Delphi编写HTTP请求。交换使用graph.microsoft.com,但不适用于graph.microsoft.de。

我通过以下https网址开始身份验证:

login.microsoftonline.de/common/oauth2/v2.0/authorize?response_type=code&client_id=xyz&prompt=login&scope=https%3A%2F%2Fgraph.microsoft.de%2Fuser.read%20&response_mode=query&state=5736109994698155204&redirect_uri=https%3A%2F%2Fwww.syncovery.com%2Foauthresult.php

然后,云会使用长代码参数(例如

)指向我的重定向网址
code=AQABAAIAAQDnLpu3ikefR73l_aNlxt5xxdvNhQ9JVAI7b0ciTej............

到目前为止,这么好。现在困难的部分:

POST /common/oauth2/v2.0/token HTTP/1.1 
Host: login.microsoftonline.de 
Keep-Alive: 300 
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded 
Content-Length: 805

client_id=xyz&client_secret=abc&code=AQABAAIAAQD_very_long&redirect_uri=https%3A%2F%2Fwww.xyz.com%2Foauthresult.php&grant_type=authorization_code&scope=https%3A%2F%2Fgraph.microsoft.de%2Fuser.read%20

答复:

HTTP/1.1 401 Unauthorized
Cache-Control: no-cache, no-store
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/8.5
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
x-ms-request-id: e83986c0-5da4-4af7-92fc-46e2fb950100
P3P: CP="DSP CUR OTPi IND OTRi ONL FIN"
Set-Cookie: esctx=AQABAAAAA_longish domain=.login.microsoftonline.de; path=/; secure; HttpOnly
X-Powered-By: ASP.NET
Date: Wed, 07 Feb 2018 11:11:44 GMT
Content-Length: 449

{
    "error": "invalid_client",
    "error_description": "AADSTS70002: Error validating credentials. AADSTS50012: Invalid client secret is provided.\r\nTrace ID: e83986c0-5da4-4af7-92fc-46e2fb950100\r\nCorrelation ID: 044f44e3-ec09-4f76-b073-0ff6b72b696a\r\nTimestamp: 2018-02-07 11:11:45Z",
    "error_codes": [70002, 50012],
    "timestamp": "2018-02-07 11:11:45Z",
    "trace_id": "e83986c0-5da4-4af7-92fc-46e2fb950100",
    "correlation_id": "044f44e3-ec09-4f76-b073-0ff6b72b696a"
}

1 个答案:

答案 0 :(得分:0)

apps.dev.microsoft.com门户是全球性的,没有门户网站的国家云实例。但是,您需要使用" Azure AD only applications"在AAD帐户下注册您的应用程序。而不是"融合的应用程序"。这是因为v2端点本身尚未受到国家云端点的支持。

此处的另一个问题是您的URI也不正确。

documentation与德国相关的一些注释:

  • Microsoft Graph Root Endpoint:https://graph.microsoft.de(不是graph.cloudapi.de

  • OAuth2.0端点:https://login.microsoftonline.de

  • Azure AD v2.0授权和令牌端点仅在全局服务上可用;它们尚不支持与国家云部署一起使用。

相关问题