0

私の API は、「公式」アプリとサードパーティ アプリをサポートする必要があります。公式アプリの場合、(ログイン後に) ユーザーが明示的にアクセスを許可することは望ましくありません。

redirect_uri をhttp://official.service.tdlのようなものに制限している限り、「許可」画面をスキップできるというのは正しいですか? それとも、これには私が考えもしなかったセキュリティ上の意味がありますか?

4

2 に答える 2

0

公式アプリの場合、機密クライアントであると仮定して、を使用できますclient credentials grant。公式アプリとAPIには事前に確立された関係があり、組織もアクセスサーバーを制御しているようです。クライアントではclient credentials grant、アクセスサーバーと直接通信して、APIで使用するトークンを取得できます。

リダイレクトURIが会社からのものである場合にユーザー認証をバイパスする場合は、特に認証コードリダイレクトURI操作を確認する必要があります。

In order to prevent such an attack, the authorization server MUST
ensure that the redirection URI used to obtain the authorization code
is identical to the redirection URI provided when exchanging the
authorization code for an access token.  The authorization server
MUST require public clients and SHOULD require confidential clients
to register their redirection URIs.  If a redirection URI is provided
in the request, the authorization server MUST validate it against the
registered value.

また、リダイレクトURIに一致するオープンリダイレクトがないことを確認する必要があります。

または、ユーザーに一度アクセスを承認させ、更新トークンを使用して、アクセスを再承認する必要がないようにすることもできます。

于 2012-12-06T22:31:06.027 に答える
0

リダイレクト URI はクライアント ブラウザーから送信されるため、公式の URI から送信されているように見せるために、誰かがブラウザーをセットアップして URI を変更しないとは限りません。問題は、サード パーティのアプリが明示的なアクセスをバイパスした場合に、どのようなセキュリティ問題が発生するかということです。

于 2012-12-06T19:46:57.400 に答える