Spring Security は、ユーザー名とパスワードを渡すことができるような API を提供し、認証が成功した場合は認証オブジェクトを返すか、認証が失敗した場合は AuthenticationCredentialsNotFoundException を返しますか?
私の要件を詳しく説明しましょう。
私たちのアプリケーションには HTTP API (たとえば、/createXXX.do) があり、クライアントはユーザー名、パスワード、およびその他のパラメーターでこれをヒットしています。
ここで、このアクセスを認証 + 承認したいと考えています (HTTP ヒットからアプリケーションへのアクセス)。
私の計画した設計は次のようになります: a) HTTP API コンテキスト (つまり、/createXXX.do) へのアクセスを制限しません。
b) リクエストが doGet()/doPost() に到達したら、リクエストからユーザー名とパスワードを取得し、以下のようなスプリング セキュリティ API を使用します。
認証 validateXXXXX(String username, String password) は AuthenticationCredentialsNotFoundException をスローします。
c) 上記の API により、これらのユーザー名/パスワードが既存の Spring セキュリティ チェーンに内部的にプッシュされ、認証が成功した場合は認証オブジェクトが返され、認証が失敗した場合は AuthenticationCredentialsNotFoundException が返されます。
d) 認証が失敗した場合、AuthenticationCredentialsNotFoundException をキャッチし、AUTHENTICATION_ERROR コードで HttpServletResponse を返します。
e) 認証オブジェクトからの権限に基づいて、認証が成功するために、AUTHORIZATION_ERROR コードで HttpServletResponse を許可または返します。
そのような春のセキュリティ API について知っている人はいますか? ポインタ/提案は高く評価されます。
ありがとう。