Как исправить httplistenerexception во время аутентификации MSAL и SAML?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как исправить httplistenerexception во время аутентификации MSAL и SAML?

Сообщение Anonymous »

Я работаю над интеграцией аутентификации SAML с API Microsoft Graph, чтобы получить токен доступа OAuth2. Моя цель состоит в том, чтобы завершить процесс аутентификации без каких -либо дополнительных окон браузера, появившихся для пользователя. Похоже, что добивается успеха. Однако после аутентификации браузер отображает сообщение: «Аутентификация завершена. Вы можете вернуться к приложению». на определенную страницу, содержащую только windo.close () логика. Тем не менее, я сталкиваюсь с следующими исключениями в процессе сбора токена: < /p>
Исключение 1: < /p>

Код: Выделить всё

MsalClientException: An HttpListenerException occurred while listening on http://localhost:5267/ for the system browser to complete the login. Possible cause and mitigation: the app is unable to listen on the specified URL; run 'netsh http add iplisten 127.0.0.1' from the Admin command prompt.
< /code>
Исключение 2: < /p>
HttpListenerException: The process cannot access the file because it is being used by another process.
В моем коде я сначала попытаюсь использовать acureetokensilent для получения токена. Тем не менее, это всегда терпит неудачу, и процесс возвращается к AccureTokenInteractive . Приведенные выше исключения происходят во время этого резерва.

Код: Выделить всё

string[] scopes = new string[] { "user.read" };
var tempUri = "https://login.microsoftonline.com/" + tenantId;

var app = PublicClientApplicationBuilder.Create(appId)
.WithAuthority(new Uri(tempUri))
.WithRedirectUri("http://localhost:5267/ezSearch/Main/Test")
.Build();

AuthenticationResult result;
string token = string.Empty;

try
{
var accounts = app.GetAccountsAsync().Result;
result = app.AcquireTokenSilent(scopes, accounts.FirstOrDefault())
.ExecuteAsync().Result;
}
catch (AggregateException ex)
{
if (ex.InnerException is MsalUiRequiredException)
{
result = app.AcquireTokenInteractive(scopes)
.WithPrompt(Microsoft.Identity.Client.Prompt.NoPrompt)
.ExecuteAsync().Result; // Exceptions occur here
}
else
{
throw;
}
}

token = result.AccessToken;
Вопросы:
Как я могу разрешить httplistenerexception при использовании AccureTokenInteractive ? http Добавить iplisten 127.0.0.1 "и добавить redirecturl в странице аутентификации Azure App
Любое понимание или предложения были бы очень оценены. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/793 ... sal-and-sa
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как исправить исключение HttpListenerException во время AcquireTokenInteractive с аутентификацией MSAL и SAML?
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Spring Security SAML: принимать только подписанные ответные сообщения SAML от IDP
    Anonymous » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Аутентификация SAML без использования авторизации SAML
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Вход в OKTA на Android с отсутствием аутентификации SAML
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Spring Security SAML: как указать политику nameID в запросе аутентификации?
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»