Я создал приложение с Microsoft Портал регистрации приложений.
Я могу использовать это приложение с пользователем в клиенте Azure AD, который создал это приложение. Клиент Azure AD связан с подпиской на Office 365 бизнес.
Если я попытаюсь использовать это приложение с пользователем, который принадлежит к тенату life.com, сразу после экрана входа в Microsoft появится сообщение об ошибке:
Сообщение: AADSTS50020: учетная запись пользователя «xyz@outlook.com» от поставщика удостоверений «live.com» не существует в клиенте «My-Tenant» и не может получить доступ к приложению «asdf-asd-1234-asd-12341234» в этом клиенте . Сначала необходимо добавить учетную запись в качестве внешнего пользователя в арендаторе. Выйдите из системы и войдите снова, используя другую учетную запись пользователя Azure Active Directory.
Согласно манифесту приложения другим арендаторам разрешено:
"tags": [
"NoLiveSdkSupport",
"appModelVersion:2",
"accessTokenVersion:1",
"availableToOtherTenants:true",
"supportsConvergence:true",
"emailAddress:feedback@modlize.com"
],
Как зарегистрировать приложение, которым могут пользоваться пользователи из всех клиентов Microsoft?
Есть несколько способов исправить это:
Мультитенантное приложение не означает, что вы можете использовать любую учетную запись Microsoft для входа в приложение. Также необходимо, чтобы учетная запись Microsoft существовала в арендаторе и давала согласие на использование приложения, приложение будет автоматически создано в арендаторе.
Для вашего сценария я думаю Azure AD B2C может быть лучше для вас. В Azure AD B2C вы можете использовать MSA в качестве IDP и создать для него политику регистрации и входа. Чтобы вы могли позволить любому MSA получить доступ к вашему Applicaiton.
Пожалуйста, дайте мне знать, если это поможет!