我在 Azure Active Directory 中创建了一个本机客户端应用程序,开发了一个 Xamarin Android 应用程序并使用 ADAL 库我可以使用任何 Microsoft 电子邮件帐户登录我的应用程序......但我只想选择我自己的域(我有 office365 订阅)。
Web 应用程序或 Web api 有一个选择单租户或多租户的复选框,但我在本机客户端应用程序中找不到。
我试图下载清单
- 将“availableToOtherTenants”更改为 false
- 将“knownClientApplications”更改为我的 clientId
- 在重定向 url 中使用 https 和 http
- 尝试了几乎任何有意义或没有意义的事情
但没有任何反应,我仍然可以使用任何 Microsoft 帐户登录我的应用程序。
收到登录的电子邮件后,我应该在我的应用程序中进行限制吗??...我认为这很糟糕。
更多信息...
我设法做到了以下几点:
- 将清单“availableToOtherTenants”更改为“true”
- 将清单“knownClientApplications”更改为我的 ClientId
- 使用授权 url 调用 api:“ https://login.windows.net/common ”(不是我的租户 ID)
结果:
我只能使用我的域登录,但任何其他 Microsoft 帐户都会从 ADAL 库中引发未处理的异常(如果用户取消登录,则与未处理的异常相同)