Какой должен быть правильный RedirectUrl, если приглашение отправляется внешнему гостевому пользователю Azure AD через API приглашения - PullRequest
0 голосов
/ 12 июня 2019

Я использую API приглашений Azure AD B2B для приглашения внешнего пользователя, но не отправляю электронное письмо с приглашением по умолчанию (которое отправляется электронной почтой MS). Вместо этого я беру URL-адрес погашения из объекта приглашения, добавляю redirecturl в «https://myapps.microsoft.com? TenantId = » и затем отправляю электронное письмо с фирменным знаком компании. Проблема заключается в том, что внешний пользователь без клиента Azure AD не перенаправляется на этот URL-адрес после успешного входа в систему, поскольку пользователи этого типа используют метод OTP (одноразовый пароль). Но если пользователь является пользователем Azure AD или имеет учетную запись MSA, перенаправление работает нормально.

Для URL перенаправления я уже пробовал следующие URL: https://myapps.microsoft.com? TenantId = Это не работает для пользователей не-Azure AD или не-MSA

https://myapps.microsoft.com/contoso.com Это не работает вообще. Всегда возвращает пользователя для входа в систему

https://myapps.microsoft.com Это не работает для пользователя Azure AD, потому что, когда пользователь нажимает на ссылку погашения, он открывает страницу приложений приглашенной организации. Скорее это должно открыть страницу приложений приглашающей организации.

var token = GetAuthToken (); Приглашение invituserResponse = null;

        try
        {
            Invitation invite = new Invitation();
            invite.InvitedUserEmailAddress = guestUserEmail;
            if (!string.IsNullOrWhiteSpace(guestUserDisplayName))
            {
                invite.InvitedUserDisplayName = guestUserDisplayName;
            }

            invite.InviteRedirectUrl = "https://myapps.microsoft.com?tenantId=<my tenant id>";
            invite.SendInvitationMessage = false;

            GraphServiceClient graphClient = GraphUtility.CreateGraphClient(token.AccessToken);
            inviteUserResponse = graphClient.Invitations.Request().AddAsync(invite).Result;
        }
        catch (ServiceException ex)
        {
            throw;
        }
        return inviteUserResponse;

Ожидаемый результат: все типы внешних пользователей (пользователь Azure AD, учетная запись MSA, учетная запись Gmail и другие учетные записи других типов, например учетная запись не из Azure AD или не из MSA) должны быть перенаправлены на страницу «Мои приложения» приглашающая организация.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...