AAD AquireTokenAsync Ошибка 406 - PullRequest
0 голосов
/ 11 июня 2018

Я изучаю, как интегрировать панели мониторинга PowerBI в приложение ASP.NET, и когда я пытаюсь пройти аутентификацию с использованием AAD, я получаю следующую ошибку в трассировке стека.

[AdalException: : Unknown error]

[HttpRequestException: Response status code does not indicate success: 406 (NotAcceptable).]

Код (ГдеИмя пользователя и пароль читаются из AppSettings в web.config):

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        RegisterAsyncTask(new PageAsyncTask(GetToken));
    }
}

private async Task<AuthenticationResult> GetToken()
{

    UserPasswordCredential credential;
    AuthenticationResult authenticationResult;
    string AuthorityUrl = "https://login.windows.net/common/oauth2/authorize/";
    string resourceUrl = "https://analysis.windows.net/powerbi/api";

    var authenticationContext = new AuthenticationContext(AuthorityUrl);            
    credential = new UserPasswordCredential(Username, Password);

    authenticationResult = await authenticationContext.AcquireTokenAsync(resourceUrl, ClientId, credential);
    return authenticationResult;                    

}  

Любая помощь приветствуется (это мой первый опыт работы с API и AAD, так что будьте осторожны).

1 Ответ

0 голосов
/ 11 июня 2018

В большинстве случаев это указывает на неверную конфигурацию приложения AAD, которое используется для доступа к службе Power BI. Здесь вы можете найти подробное описание того, как зарегистрировать приложение, а здесь - хорошее видео, объясняющее немного больше.Вы должны иметь в виду, что пользователь должен быть пользователем AAD с электронной почтой, которая, скорее всего, заканчивается .onmicrosoft.com Почтовые адреса, такие как outlook.com или аналогичные, не допускаются,

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