私はSpringのセキュリティでアプリケーションを開発し、adminやcustomerのようなユーザの役割に従ってログインしましたが、app/j_spring_security_checkに記録されています。私は、認証とセキュリティでフィルタを実装し、すべてのURLをトレースしたい。私は何をあなたの実際の質問に見当もつかない春のセキュリティでフィルタを使用し、フィルタで認証を行う方法
答えて
Security_configuration.java
csrfheaderfilter.java
import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.web.csrf.CsrfToken;
import org.springframework.web.filter.OncePerRequestFilter;
import org.springframework.web.util.WebUtils;
public class CsrfHeaderFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
CsrfToken csrf = (CsrfToken) request.getAttribute(CsrfToken.class
.getName());
if (csrf != null) {
Cookie cookie = WebUtils.getCookie(request, "CSRF-TOKEN");
String token = csrf.getToken();
if (cookie == null || token != null
&& !token.equals(cookie.getValue())) {
cookie = new Cookie("CSRF-CSRF-TOKEN", token);
cookie.setPath("/main.html");
cookie.setHttpOnly(true);
cookie.setMaxAge(20);
response.addCookie(cookie);
}
}
filterChain.doFilter(request, response);
}
}
csrfrequestmatcher.java
import java.util.regex.Pattern;
import javax.servlet.http.HttpServletRequest;
import org.springframework.security.web.util.matcher.RegexRequestMatcher;
import org.springframework.security.web.util.matcher.RequestMatcher;
/**
*
* The default functionality is to skip CSRF checking for GET method. This
* functionality is lost when an explicit request matcher is provided. So, need
* to make sure that GET methods are skipped manually.
*
*/
public class CsrfRequestMatcher implements RequestMatcher {
// Always allow the HTTP GET method
private Pattern allowedMethods = Pattern.compile("^GET$");
private RegexRequestMatcher unprotectedMatcher = new RegexRequestMatcher(
"/unprotected", null);
@Override
public boolean matches(HttpServletRequest request) {
// Skip checking if request method is a GET
if (allowedMethods.matcher(request.getMethod()).matches()) {
return false;
}
// Check CSRF in all other cases.
return !unprotectedMatcher.matches(request);
}
}
お返事ありがとうございます。スプリングのcsrfトークンを検証する方法を知ることができます –
参照のためにspring-security.xmlファイルを添付してください –
http://www.mkyong.com/spring-security/spring-security-hello-world-example/このリンクを参照してくださいセキュリティxmlを取得するか、セキュリティ依存を管理するためにmavenを使用できます。 – Deepanjan
- 1. 春のセキュリティ認証フィルタのURLが無視されました
- 2. 春のセキュリティ認証方法
- 3. 春のセキュリティでLDAP認証とデータベース認証を行う方法は?
- 4. Springセキュリティjava設定基本認証フィルタ
- 5. 春のセキュリティで私の別のフィルタの前にフィルタを追加するには?
- 6. 春のセキュリティ認証
- 7. カスタム春3.0セキュリティ・フィルタ、複数のエントリポイント、AuthenticationProvider
- 8. Javaで認証トークンを使用してSpringセキュリティを行う方法
- 9. 春のセキュリティを使用してオブジェクトを認証しますか?
- 10. OSGiの認証フィルタ?
- 11. アクションの実行方法承認フィルタ前のフィルタMVC 4
- 12. 春のセキュリティ認証のリモート
- 13. LDAP認証 - 春のセキュリティ - LdapAuthenticationProvider
- 14. 春のセキュリティ認証エントリポイント
- 15. 手動認証春のセキュリティ
- 16. ユーザ名パスワード春のセキュリティでの認証
- 17. 春のセキュリティでのグローバル認証
- 18. フィルタとサーブレットを使った認証
- 19. サブセレクトでフィルタを使用する方法
- 20. ジャンゴでフィルタを使用する方法
- 21. jsonペイロードのトークンを使用したWebApi認証フィルタ
- 22. 春のクラウドデータフローサーバーでLDAP認証を行う方法は?
- 23. 特定のルートにのみ認証フィルタを適用する、春のブートセキュリティ
- 24. 春のセキュリティを使用して空のパスワードで基本認証を行うには?
- 25. スプリング認証プロバイダVS認証処理フィルタ
- 26. 春基本認証に加えて、IPフィルタ
- 27. カスタム認証フィルタSpring Security 3.2
- 28. Web APIカスタム認証フィルタ
- 29. asp.netでアクティブディレクトリグループを使用して認証を行う方法は?
- 30. http refererの値をソーシャル認証フィルタに渡す方法
を実装する方法が何であるかを示唆してくださいです。 http://stackoverflow.com/help/how-to-askを読んで質問を改善してください。 –
春のおもしろい話題は、私があなたがそれを助けることを願ってチェックできます。 – Deepanjan