私は多くの記事に出くわし、多くはAPIキーを介してOAuthを使用することを提案しています。OAuthでは、最終的にアクセストークンを取得し、何日も有効です。 、QuickBooks online OAuthトークンは6か月間有効です。
したがって、アクセストークンはAPIキーと同等です。誰でもそれを手に入れて、APIキーのような安全なものを持っているべきです。そして、OAuth APIキーベースの呼び出しと同様にHTTPS経由で呼び出しを行う必要があります。
OAuthに対するもう1つの利点は承認です。しかし、APIキーモデルでも同じことができます。たとえば、データベースで次のようなルールを定義できますAPIキーアクセスできますこれらAPI。
さて、OAuthの本当の利点は何ですか? OAuthを実装する場合、すべてのクライアントにサーバーにOAuthサポートライブラリをインストールするように依頼する必要があります。そして、それは彼らにとっても私たちにとっても複雑なタスクです。他の追加のライブラリや複雑さのない単純なWeb呼び出し。
私の意図は、OAuthをよりよく理解し、API Keyモデルと比較して議論することではありません。
注:
ユーザーが表示して権限を付与する必要があるGoogleとLinkedInのようなモデルについては話していません。私たちが自分の顧客に提供しているAPIについて話しているだけです。
事前にご協力いただきありがとうございます。
必要なのは、OAuth=サービスのユーザーが、サードパーティのクライアントアプリケーションが自分の資格情報(ID&パスワード)アプリケーションに。
APIキーとAPIシークレットのペアができることは、クライアントアプリケーションの認証だけです。認証されたクライアントアプリケーションがユーザーの明示的な同意なしにユーザーのデータにアクセスできるようにすることが許される場合、 OAuthを使用する必要はありません。