2016-10-29 8 views
0

Xeroパートナーアプリケーションを作成しましたが、Entrust証明書の更新を依頼されました。私はOAuthの/ RequestTokenに投稿するとき、私はこのエラーを取得する:Xeroが署名の検証に失敗しました

oauth_problem = signature_invalid & oauth_problem_advice =%20to%20validate%失敗しました。ここ20signature

は私が撮った手順は次のとおりです。私は、ダウンロード

  1. XeroからのP12 Entrust証明書。
  2. certmgrでは、私の個人証明書ストアにP12証明書をインポートしました。
  3. 証明書を右クリックしました。私はすべてのタスクをクリックしてエクスポートしました。
  4. 私は秘密鍵をエクスポートしないと言いました。
  5. ファイルをCERとしてエクスポートしました。
  6. 私はdeveloper.xero.comにログインして、アプリをクリックしました。
  7. フォームにCERをアップロードして保存をクリックしました。

追加手順はありますか?私はあなたが間違っていたところだと思い

答えて

1

は、委託の証明書は、開発者ポータルにアップロードすることが想定されていない段階で、5

です。

開発者ポータルにアップロードする.cerファイルは、公開鍵をconatinsし、API呼び出しで指定した署名のデコードに使用されます。この署名は、アプリケーションに関連付けられた秘密鍵を使用して署名されます。証明書が一致しない場合(APIが間違った公開鍵で解読しようとしている)、あなたが見ている「署名の検証に失敗しました」というエラーが表示されます。

あなたはこれを変更しない限り、それはあなたが現在(と署名されている秘密鍵と一致するように、あなたはもともとアプリケーションに使用前の.cerの公開鍵ファイルを再アップロード

  1. のどちらかになるでしょうまた)

  2. は、ここで説明したように、新しい公開鍵/秘密鍵のペアを再生成します、https://developer.xero.com/documentation/advanced-docs/public-private-keypairを開発者ポータルに新しい.cerの公開鍵をアップロードし、あなたのアプリケーションに新しい秘密鍵を使用し

+0

ありがとう! CERファイルは、ステップ2のOpenSSLドキュメントにあります。私はIISを使用していても、OpenSSLを使用して私有鍵と公開鍵を生成する必要があります。 –

関連する問題