29

API を提供するアプリがあります。このアプリは OAuth2 プロバイダーです。

クライアント側のみのアプリでこの API (読み書き) にアクセスしたい。これを簡単にするためにJSOを使用しています。

それはうまくいきます。

問題は、(アプリに登録したアプリケーションの) クライアント シークレットをどこにも入力する必要がないことです。そして、私はその理由を理解しています。そうすれば、誰でも利用できるようになります。

クライアント シークレットなしで API にアクセスできる場合、その目的を説明していただけますか?

4

3 に答える 3

13

クライアントシークレットはOAuth1.0でリクエストに署名するために使用されていたため、必須でした。一部のOAuth2サーバー(Google WebサーバーAPIなど)では、アクセストークン(リクエストトークンまたは更新トークンのいずれかから)を受信するためにクライアントシークレットを送信する必要がありました。

OAuth 2.0は、クライアントシークレットの役割を大幅に削減しましたが、それを使用するサーバーには引き続き渡されます。

于 2012-08-28T16:21:15.947 に答える