Невозможно получить токены для приложения, используя код из диаграммы Azure.

Я создал приложение в http://apps.dev.microsoft.com/ и попытался подключиться из моего веб-приложения
Вот мой код:

  $data = array (
'code' => $code,
'client_secret' => 'C2A32632155A3270220244A5774431C58126F9B5',
'client_id' => '49c1c823-b423-4673-af57-7be1ab39e386',
'grant_type' => 'authorization_code',
'redirect_uri' => 'http://localhost/crm/contacts/connectOffice',
'scope' => 'offline_access Contacts.ReadWrite'
);
$url = 'https://login.microsoftonline.com/common/oauth2/v2.0/token';
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$result = curl_exec($curl);

Я получаю ответ:

[error] => invalid_client
[error_description] => AADSTS70002: Ошибка при проверке учетных данных. AADSTS50012: указан неверный секретный ключ клиента. Идентификатор трассировки:
47f5eaa3-2ea0-45bc-9bfa-8457395ae354 ID корреляции:
3007e67d-120d-4cf1-a0e6-1863d202b233 Метка времени: 2017-01-12 13: 12: 28Z
[error_codes] => Массив
(
[0] => 70002
[1] => 50012
)

[timestamp] => 2017-01-12 13:12:28Z
[trace_id] => 47f5eaa3-2ea0-45bc-9bfa-8457395ae354
[correlation_id] => 3007e67d-120d-4cf1-a0e6-1863d202b233

Я совершенно уверен, что в запросе я указал правильный секретный ключ клиента и идентификатор клиента, но все равно постоянно получаю эту ошибку. Кто-нибудь может подсказать, где я могу пойти не так или что еще мне нужно сделать, чтобы это исправить?

1

Решение

Значение, которое вы сейчас используете в своем секретном поле клиента, на самом деле является открытым ключом, который генерируется, если вы нажмете Generate New Key Pair кнопка.

За то, что вы пытаетесь сделать, вы хотите ударить Generate New Password Кнопка на портале, чтобы получить секретный ключ из 23 символов. Это должно позволить вам получить код авторизации.

Еще одна вещь, убедитесь, что если вы пытаетесь получить код авторизации, вы используете правильную конечную точку авторизации https://login.microsoftonline.com/common/oauth2/v2.0/authorize, URL, который вы указали выше, используется, когда у вас есть код авторизации и вы хотите обменять его на токены.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]