ADAL iOS 重定向 URI 必须是 http(s)?

ADAL iOS Redirect URI must be http(s)?

我正在努力使用最新版本的 ADAL 在我的 iOS 应用程序(Xcode 8,运行 on iOS 10)中运行 ADAL 身份验证iOS 库 (2.2.5) 并根据 documentation 配置了 authContext,但我收到以下错误:

AADSTS50011: Reply address 'x-msauth-<appname>://<app bundle id>/' 
specified by the request is not a valid URL. Allowed schemes: 'http, https'

此错误消息直接与 documentation 冲突,后者明确要求重定向 URI 是 iOS 应用程序 URL,而不是网络 URL:

Redirect URI

This adds extra requirements on your redirect URI. Your redirect URI must be in the proper form.

<app-scheme>://<your.bundle.id>
ex: x-msauth-mytestiosapp://com.microsoft.mytestiosapp

This Redirect URI needs to be registered on the app portal as a valid redirect URI. Additionally a second "msauth" form needs to be registered to handle certificate authentication in Azure Authenticator.

msauth://code/<broker-redirect-uri-in-url-encoded-form>
ex: msauth://code/x-msauth-mytestiosapp%3A%2F%2Fcom.microsoft.mytestiosapp

Azure 门户中是否缺少允许非 HTTP 重定向 URL 的配置?这是 ADALiOS 库中的错误吗?

另外,编码后的重定向URI需要在​​哪里注册?在 iOS 应用程序的 .plist 中?在 Azure 门户中?两个?

您必须尝试将该应用程序注册为 Web 应用程序。您需要在目录中创建一个新应用程序作为 Native Client Application: