LoginSignup
7
2

More than 1 year has passed since last update.

SalesforceのOauthでinvalid_grant authentication failure

Last updated at Posted at 2021-09-07

記事の概要

Salesforce Oauth2のuernameとpasswordを使用するパターンでinvalid_grantエラーに悩まされたので、備忘録

エラーが出た場合の確認チェックポイント

・grant_typeにpasswordという文字列が設定されているか

・client_idに接続アプリケーションのコンシューマ鍵を設定しているか

・client_secretに接続アプリケーションのコンシューマの秘密を設定しているか

・usernameにsalesforceにログインする時に使用するユーザ名を設定しているか

・passwordにsalesforceにログインする時に使用するパスワードを設定しているか

・接続アプリケーションの管理で「IP制限を緩和」に設定されている
->passwordの末尾にセキュリティトークンが付与されていないことを確認。IP制限を緩和の場合はセキュリティトークンは不要

・接続アプリケーションの管理で「IP制限を適用」に設定されている
->passwordの末尾にセキュリティトークンが付与されていることを確認。IP制限を適用の場合はpasswordの末尾にセキュリティトークンを付与する必要があります

・OAuth ポリシーの許可されているユーザが「すべてのユーザは自己承認可能」に設定されているか

・postするアドレスは正しいか

本番環境
https://login.salesforce.com/services/oauth2/token
テスト環境
https://test.salesforce.com/services/oauth2/token

問題の切り分け方としては、まずはIP制限を緩和に設定し、認証が成功するかどうか確認してみる。
IP制限を適用に戻し、認証が失敗するようならセキュリティトークンが誤っている可能性が高いです。
(今回は、プロパーから連携されたセキュリティトークンが間違っていて1日溶かしました・・・)

おまけ エラーに関係ありそうでなかった設定値

・セキュリティ->ネットワークアクセスのIP制限リスト
->いくつかstack_overflowで設定を確認との記事があったが、セキュリティトークンを使用できる環境であれば、関係なかった。
(IP制限されていてもセキュリティトークンが正しい場合は認証に成功する)

・プロファイル->接続アプリケーションへのアクセスのチェックボックス
->チェックボックスの有無で特に認証に影響はなかった。

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2