AuthenticationContextIntegratedAuthExtensions.AcquireTokenAsync теперь не работает при предварительном просмотре 4.0 с unknown_user - PullRequest
0 голосов
/ 30 августа 2018

У меня есть некоторый код, который использует ADAL v3, который использует метод расширения в заголовке, чтобы получить токен для текущего пользователя Windows. Я попробовал новый пакет v4 , и теперь вызов завершается неудачно: «unknown_user: не удалось идентифицировать пользователя, вошедшего в систему».

Это известная проблема? Или мне нужно сделать что-то другое при использовании v4?

Вот основной код, который я использую:

$authAuthority = "https://login.microsoftonline.com/common"
$vstsResourceId = "XYZfake"
$vsClientId = "ABCfake"

$authContext = New-Object Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext -ArgumentList $authAuthority
$userCredential = New-Object Microsoft.IdentityModel.Clients.ActiveDirectory.UserCredential

$task = [Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContextIntegratedAuthExtensions]::AcquireTokenAsync($authContext, $vstsResourceId, $vsClientId, $userCredential)
$task.GetAwaiter().GetResult()
$authResult = $task.Result

1 Ответ

0 голосов
/ 31 августа 2018

Причина сбоя заключается в том, что я использовал двоичный файл netstandard1.3, а метод PlatformInformation.GetUserPrincipalNameAsync() представляет собой dummy - он просто возвращает пустую строку.

    public override async Task<string> GetUserPrincipalNameAsync()
    {
        return await Task.Factory.StartNew(() => string.Empty).ConfigureAwait(false);
    }
...