将kAuthority改为消费者是行不通的

时间:2018-05-14 18:33:15

标签: ios swift microsoft-graph msal

我正在使用MSAL Preview for iOS和swift sample

根据documentation here,我应该使用消费者而不是普通来强制它仅限个人帐户。

ViewDidLoad function

self.applicationContext = try MSALPublicClientApplication.init(clientId: kClientID, authority: kAuthority)

将kAuthority更改为

https://login.microsoftonline.com/consumers/oauth2/v2.0/authorize

应仅将其锁定到消费者帐户。

但这似乎引发了错误“这看起来不像是工作或学校的电子邮件。您无法在此处登录个人帐户。请改为使用您的工作或学校帐户。“如果我投入组织帐户,它确实适用于那个kAuthority。

如果我改为

https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize

它允许允许org in而不是消费者帐户。

如果我回到代码示例默认值

,两者都有效
https://login.microsoftonline.com/common/oauth2/v2.0/authorize

我注意到如果我在浏览器中点击它

https://login.microsoftonline.com/consumers/oauth2/v2.0/authorize?client_id=##clientid##&response_type=code&redirect_uri=http%3A%2F%2Flocalhost&response_mode=query&scope=openid%20offline_access%20https%3A%2F%2Fgraph.microsoft.com%2Fmail.read&state=12345

这在浏览器中运行良好。所以我不认为它是一个应用程序配置问题。除非它与本地vs web调用这个吗?

我注意到latest sample,kAuthority缩短了。

let kAuthority = "https://login.microsoftonline.com/common/"

试过这个并没有什么区别。

1 个答案:

答案 0 :(得分:0)

GitHub中的工程团队合作,他们解决了一个后端问题。现在已解决。