Комбинация логина между c# и js Msal-провайдером - PullRequest
0 голосов
/ 21 апреля 2020

Вопрос: Как я могу использовать только 1 msal-провайдера на моем mvc сайте, в настоящее время использующем mgt-msal-provider через инструментарий, и аутентификацию Owin для случаев, когда мне нужно отправить письмо. это заканчивается тем, что у меня есть 2 кнопки входа в систему, что довольно неудобно.

Request.GetOwinContext().Authentication.Challenge(
  new AuthenticationProperties { RedirectUri = "/" },
  OpenIdConnectAuthenticationDefaults.AuthenticationType);

и

<mgt-msal-provider client-id=@appId
  login-type="popup"
  scopes="user.read,people.read,people.read.all,contacts.read,user.read.all"
  authority=@authority></mgt-msal-provider>

я использую одну кнопку Owin, потому что я не нашел способ отправить пользовательское письмо с помощью инструментария, но я могу сделать это через библиотеку c# Microsoft.Graph

мои 2 разные кнопки входа в систему

1 Ответ

0 голосов
/ 21 апреля 2020

В этом сценарии вы можете использовать прокси-провайдер . Прокси-провайдер может проксировать все вызовы Microsoft Graph через ваш бэкэнд, чтобы вы могли использовать свою аутентификацию Owin для доступа к графику. Это позволит пользователям проходить аутентификацию только один раз, но при этом использовать компоненты инструментария на вашем внешнем интерфейсе.

Взгляните на этот ASP. NET MVC образец. Существует также образец ASP. NET Core , который вы можете использовать.

...