Канонический шаблон для получения токенов доступа с использованием ADAL.NET выглядит следующим образом:
try
{
result = await authContext.AcquireTokenSilentAsync(graphResourceId, clientId);
}
catch (AdalException adalException)
{
if (adalException.ErrorCode == AdalError.FailedToAcquireTokenSilently || adalException.ErrorCode == AdalError.UserInteractionRequired)
{
result = await authContext.AcquireTokenAsync(graphResourceId,
clientCred,
userAssertion);
}
}
Предположительно AcquireTokenSilentAsync
пытается получить токен без взаимодействия с пользователем, в то время как AcquireTokenAsync
запрашивает у пользователя разрешение.Однако ... Эта функция вызывается в веб-API, который пытается вызвать другой веб-API - поэтому нет способа вообще запросить у пользователя разрешение.Какой я использую?Нужно ли использовать оба?