1

をコードを使用してアプリのトークンを取得できません私はhttp://apps.dev.microsoft.com/でアプリを作成し、ここに私のWebアプリケーション から接続しようとしたが、私のコードです:紺碧のグラフから

$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); 

私は応答を取得します:

[エラー] => invalid_client [ましたerror_description] => AADSTS70002:エラーの資格情報を検証します。 AADSTS50012:無効なクライアントシークレットが提供されています。トレースID: 47f5eaa3-2ea0-45bc-9bfa-8457395ae354相関ID: 3007e67d-120D-4cf1-a0e6-1863d202b233タイムスタンプ:2017年1月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 

私がリクエストで正しいクライアントシークレットとクライアントIDを提供していることをかなり確信しているが、それでも私は、このエラーのすべての時間を取得します。誰かが私がどこに間違っているかもしれないか、あるいはこれを修正するためにもっと何をする必要があるのか​​を提案することはできますか?

答えて

2

現在、クライアントの秘密フィールドで使用している値は、実際にはGenerate New Key Pairボタンを押すと生成される公開鍵です。

あなたがしようとしていることは、ポータルのGenerate New Passwordボタンを押して23文字のクライアントの秘密を得ることです。それは認証コードを取得する必要があります。

もう1つのことは、正しい認証エンドポイントhttps://login.microsoftonline.com/common/oauth2/v2.0/authorizeを使用する認証コードを取得しようとしていることを確認してください。上記のURLは、認証コードがあり、それをトークンと交換したい場合に使用されます。

+0

私は認証コード@Daniel Dobalianを持っています。トークンを取得しようとしています – Mainak

+0

'Generate New Password'シークレットでエラーを修正しましたか? –

関連する問題