Spring
Why Spring
Overview Microservices Reactive Event Driven Cloud Web Applications Serverless Batch
Learn
Overview Quickstart Guides Blog
Projects
Overview Spring Boot Spring Framework Spring Cloud Spring Cloud Data Flow Spring Data Spring Integration Spring Batch Spring Security View all projects
  • DEVELOPMENT TOOLS
  • Spring Tools 4 Spring Initializr
    Academy
    Courses Get Certified
    Solutions
    Overview Spring Runtime Spring Consulting Spring Academy For Teams Security Advisories
    Community
    Overview Events Team
    Spring Security 5.7.9
      • Overview
      • Prerequisites
      • Community
      • What’s New
      • Getting Spring Security
      • Features
        • Authentication
          • Password Storage
        • Protection Against Exploits
          • CSRF
          • HTTP Headers
          • HTTP Requests
        • Integrations
          • Cryptography
          • Spring Data
          • Java’s Concurrency APIs
          • Jackson
          • Localization
      • Project Modules
      • Samples
      • Servlet Applications
        • Getting Started
        • Architecture
        • Authentication
          • Authentication Architecture
          • Username/Password
            • Reading Username/Password
              • Form
              • Basic
              • Digest
            • Password Storage
              • In Memory
              • JDBC
              • UserDetails
              • UserDetailsService
              • PasswordEncoder
              • DaoAuthenticationProvider
              • LDAP
          • Persistence
          • Session Management
          • Remember Me
          • OpenID
          • Anonymous
          • Pre-Authentication
          • JAAS
          • CAS
          • X509
          • Run-As
          • Logout
          • Authentication Events
        • Authorization
          • Authorization Architecture
          • Authorize HTTP Requests
          • Authorize HTTP Requests with FilterSecurityInterceptor
          • Expression-Based Access Control
          • Secure Object Implementations
          • Method Security
          • Domain Object Security ACLs
          • Authorization Events
        • OAuth2
          • OAuth2 Log In
            • Core Configuration
            • Advanced Configuration
          • OAuth2 Client
            • Core Interfaces and Classes
            • OAuth2 Authorization Grants
            • OAuth2 Client Authentication
            • OAuth2 Authorized Clients
          • OAuth2 Resource Server
            • JWT
            • Opaque Token
            • Multitenancy
            • Bearer Tokens
        • SAML2
          • SAML2 Log In
            • SAML2 Log In Overview
            • SAML2 Authentication Requests
            • SAML2 Authentication Responses
          • SAML2 Logout
          • SAML2 Metadata
        • Protection Against Exploits
          • Cross Site Request Forgery (CSRF) for Servlet Environments
          • Security HTTP Response Headers
          • HTTP
          • HttpFirewall
        • Integrations
          • Concurrency
          • Jackson
          • Localization
          • Servlet APIs
          • Spring Data
          • Spring MVC
          • WebSocket
          • Spring’s CORS Support
          • JSP Taglib
        • Configuration
          • Java Configuration
          • Kotlin Configuration
          • Namespace Configuration
        • Testing
          • Method Security
          • MockMvc Support
          • MockMvc Setup
          • Security RequestPostProcessors
            • Mocking Users
            • Mocking CSRF
            • Mocking Form Login
            • Mocking HTTP Basic
            • Mocking OAuth2
            • Mocking Logout
          • Security RequestBuilders
          • Security ResultMatchers
          • Security ResultHandlers
        • Appendix
          • Database Schemas
          • XML Namespace
            • Authentication Services
            • Web Security
            • Method Security
            • LDAP Security
            • WebSocket Security
          • Proxy Server Configuration
          • FAQ
      • Reactive Applications
        • Getting Started
        • Authentication
          • X.509 Authentication
          • Logout
        • Authorization
          • Authorize HTTP Requests
          • EnableReactiveMethodSecurity
        • OAuth2
          • OAuth2 Log In
            • Core Configuration
            • Advanced Configuration
          • OAuth2 Client
            • Core Interfaces and Classes
            • OAuth2 Authorization Grants
            • OAuth2 Client Authentication
            • OAuth2 Authorized Clients
          • OAuth2 Resource Server
            • JWT
            • Opaque Token
            • Multitenancy
            • Bearer Tokens
        • Protection Against Exploits
          • CSRF
          • Headers
          • HTTP Requests
        • Integrations
          • CORS
          • RSocket
        • Testing
          • Testing Method Security
          • Testing Web Security
            • WebTestClient Setup
            • Testing Authentication
            • Testing CSRF
            • Testing OAuth 2.0
        • WebFlux Security
    Edit this Page GitHub Project Stack Overflow
    • Spring Security
    • Servlet Applications
    • OAuth2

    For the latest stable version, please use Spring Security 6.4.5!

    OAuth2

    Spring Security provides comprehensive OAuth 2 support. This section discusses how to integrate OAuth 2 into your servlet based application.

    Section Summary

    • OAuth2 Log In
    • OAuth2 Client
    • OAuth2 Resource Server
    • Spring Security
      • 6.4.5
      • 6.3.9
      • 6.2.8
      • 6.1.9
      • 6.0.8
      • 5.8.16
      • 5.7.9
      • 6.5.0-RC1
      • 7.0.0-SNAPSHOT
      • 6.5.0-SNAPSHOT
      • 6.4.6-SNAPSHOT
      • 6.3.10-SNAPSHOT
    • Related Spring Documentation
      • Spring Framework
      • Spring Security
        • Spring Authorization Server
        • Spring LDAP
        • Spring Security Kerberos
        • Spring Session
        • Spring Vault
      • Spring GraphQL
    • All Docs...
    Spring

    Copyright © 2005 - Broadcom. All Rights Reserved. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
    Terms of Use • Privacy • Trademark Guidelines • Thank you • Your California Privacy Rights • Cookie Settings

    Apache®, Apache Tomcat®, Apache Kafka®, Apache Cassandra™, and Apache Geode™ are trademarks or registered trademarks of the Apache Software Foundation in the United States and/or other countries. Java™, Java™ SE, Java™ EE, and OpenJDK™ are trademarks of Oracle and/or its affiliates. Kubernetes® is a registered trademark of the Linux Foundation in the United States and other countries. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Windows® and Microsoft® Azure are registered trademarks of Microsoft Corporation. “AWS” and “Amazon Web Services” are trademarks or registered trademarks of Amazon.com Inc. or its affiliates. All other trademarks and copyrights are property of their respective owners and are only mentioned for informative purposes. Other names may be trademarks of their respective owners.

    Search in all Spring Docs