2016-01-27 3 views
2

В настоящее время я пытаюсь получить доступ к определенному ресурсу из Microsoft Graph, используя следующий код:Отсутствует UPN и PUID утверждает

private const string _userUrl = "https://graph.microsoft.com/v1.0/me"; 
public static async Task<UserProfile> GetUserProfile() 
    { 
     using (var client = new HttpClient()) 
     { 
      using (var req = new HttpRequestMessage(HttpMethod.Get, _userUrl)) 
      { 
       var token = await GetToken(true); 
       req.Headers.Add("Authorization", string.Format("Bearer {0}", token)); 
       req.Headers.TryAddWithoutValidation("Content-Type", "application/json"); 
       using (var response = await client.SendAsync(req)) 
       { 
        var content = await response.Content.ReadAsStringAsync(); 

        UserProfile profile = JsonConvert.DeserializeObject<UserProfile>(content); 
        return profile; 
       } 
      } 
     } 
    } 

GetToken возвращает ожидаемое разрешение Bearer Токен, но когда код достигает:

var content = await response.Content.ReadAsStringAsync(); 

Код состояния ответа 400, а содержание «сообщение» дает мне «Отсутствие претензий UPN и PUID».

Учитывая, что я довольно новичок в Microsoft Graph, я не понимаю, что именно это означает. Если я ошибаюсь в своей логике или какой-то конфигурации в своем приложении AAD. Я пробовал this solution, но, к сожалению, я не мог этого понять.

Я был бы очень признателен за ваш вклад, и я только прошу указать, куда я должен искать, чтобы решить эту проблему.

Заранее спасибо.

ответ

3

Благодарим за сообщение об этой проблеме. В настоящее время API не поддерживает пользователей, которые подключаются к AAD, используя внешние учетные записи (например, учетную запись Microsoft). Мы работаем над этим, и ожидаем обновления, когда оно будет доступно.

В то же время попробуйте создать обычного пользователя AAD с использованием портала Azure и попробуйте API в качестве этого пользователя.

[Обновить-2016-2-16: Исправление теперь на месте. Пожалуйста, сделайте снимок]

+0

У вас есть обновленная информация о любых возможных таймфреймах, которые могут потребоваться, так как в настоящее время это очень важно для моего проекта. Благодарю. – DaRoGa

+0

Текущий срок для исправления составляет следующие 2-3 недели. Ожидайте обновления здесь, когда исправление будет вживую. –

+0

@sriramd, я отвечу на ваш ответ в качестве ответа, но я был бы очень признателен, если бы вы могли отредактировать свой пост, когда исправление было введено в действие. Большое спасибо! – AuroMetal

 Смежные вопросы

  • Нет связанных вопросов^_^