我在为我正在做的Django项目配置SSO选项时遇到问题。我希望只有我所在组织的用户才能登录到应用程序,但我一直收到以下错误:
AADSTS50194:应用程序'Azure:应用程序(客户端)ID“(DjangoAppSSO)未配置为多租户应用程序。在”10/15/2018“之后创建的此类应用程序不支持使用/common终结点。请使用租户特定的终结点或将应用程序配置为多租户。
我已经进入管理控制台,并使用与上述Azure帐户相同的客户端ID填充了管理控制台。我还使用我的值和密码ID创建了客户端密码,并将它们也放在管理控制台中。我将值填充为admin中的“Key”,将密码ID填充为“Secret Key”。www.example.com的所有必需导入都已完成settings.py,我相信问题出在我自己身上从而可能给出社会帐户提供者。
settings.py:
SOCIALACCOUNT_PROVIDERS = {
'microsoft': {
'APP': {
'tenant': 'organization',
'client_id': 'Azure: Application (client) ID',
}
}
}
只是为了澄清一下,任何写着“Azure:应用程序(客户端)ID”是那里的实际值,我只是不想把它发布到任何地方。
2条答案
按热度按时间puruo6ea1#
AADSTS50194:应用程序未配置为多租户应用程序。在“10/15/2018”之后创建的此类应用程序不支持使用
/common
终结点。请使用租户特定的终结点或将应用程序配置为多租户。如果用户尝试使用多租户(
/common
)端点登录单租户应用程序,则通常会发生上述错误。请注意,
organizations
用于多租户应用程序,允许用户同时使用工作和学校帐户登录。要解决错误,您需要修改**
settings.py
文件,方法是将organizations替换为您的Tenant ID**,如下所示:您可以找到您的租户的**
Tenant ID
**,如下所示:转到Azure门户-〉Azure Active Directory -〉应用注册-〉你的应用-〉概述
或者,您可以将现有的单租户应用程序更改为多租户,方法是更改其受支持的帐户类型,而无需修改**
settings.py
**,如下所示:参考:
客户端应用程序配置(MSAL)|微软文档
Microsoft OAuth2 provider for django-allauth by Vincent Schänzer
qoefvg9y2#
我刚刚发布了一个类似主题的this答案。您现在需要使用大写的“TENANT”,否则它将无法工作