diff --git a/OAuth-2.0-Features-Matrix.asciidoc b/OAuth-2.0-Features-Matrix.asciidoc new file mode 100644 index 0000000..281d2d5 --- /dev/null +++ b/OAuth-2.0-Features-Matrix.asciidoc @@ -0,0 +1,116 @@ +[[oauth2-features-matrix]] += OAuth 2.0 Features Matrix + + +[[oauth2-client-features-matrix]] +== Client Support + +[cols="<40,^15,^15,^15,^15",options="header"] +|=== +| +| https://projects.spring.io/spring-security/[Spring Security^] (5.0+) +| http://projects.spring.io/spring-security-oauth/[Spring Security OAuth^] (2.2+) +| https://cloud.spring.io/spring-cloud-security/[Spring Cloud Security^] (1.2+) +| https://projects.spring.io/spring-boot/[Spring Boot OAuth2^] (1.5.x) + +| [red]#*_Authorization Grants_*# 4+| +| Authorization Code | | ✔ | | +| Implicit | | ✔ | | +| Resource Owner Password Credentials | | ✔ | | +| Client Credentials | | ✔ | | +| Refresh Token | | ✔ | | + +| [red]#*_Client Authentication Methods_*# 4+| +| HTTP Basic | ✔ | ✔ | | +| HTTP POST | ✔ | ✔ | | + +| [red]#*_HTTP Client Support_*# 4+| +| RestTemplate | | ✔ | | +| WebClient | | | | + +| [red]#*_User Authentication_*# 4+| +| OAuth 2.0 Login (SSO) | ✔ | | | ✔ +| UserInfo Endpoint Support | ✔ | | | ✔ + +| [red]#*_Access Token Usage_*# 4+| +| Token Relay | | | ✔ | + +| [red]#*_Access Token Storage Management_*# 4+| +| In-Memory | ✔ | | | +| JDBC | | ✔ | | +|=== + + +[[oauth2-resource-server-features-matrix]] +== Resource Server Support + +[cols="<40,^15,^15,^15,^15",options="header"] +|=== +| +| https://projects.spring.io/spring-security/[Spring Security^] (5.0+) +| http://projects.spring.io/spring-security-oauth/[Spring Security OAuth^] (2.2+) +| https://cloud.spring.io/spring-cloud-security/[Spring Cloud Security^] (1.2+) +| https://projects.spring.io/spring-boot/[Spring Boot OAuth2^] (1.5.x) + +| [red]#*_Access Token Formats_*# 4+| +| Opaque | | ✔ | | +| JSON Web Token (JWT) | | ✔ | | + +| [red]#*_Access Token Verification_*# 4+| +| Opaque (using Introspection Endpoint) | | ✔ | | +| JSON Web Signature (MAC) | | ✔ | | +| JSON Web Signature (RSA) | | ✔ | | +| JSON Web Signature (using JSON Web Key) | | ✔ | | +| Custom JWT Claims Set Verifier| | ✔ | | +|=== + + +[[oauth2-authorization-server-features-matrix]] +== Authorization Server Support + +[cols="<40,^15,^15,^15,^15",options="header"] +|=== +| +| https://projects.spring.io/spring-security/[Spring Security^] (5.0+) +| http://projects.spring.io/spring-security-oauth/[Spring Security OAuth^] (2.2+) +| https://cloud.spring.io/spring-cloud-security/[Spring Cloud Security^] (1.2+) +| https://projects.spring.io/spring-boot/[Spring Boot OAuth2^] (1.5.x) + +| [red]#*_Authorization Grants_*# 4+| +| Authorization Code | | ✔ | | +| Implicit | | ✔ | | +| Resource Owner Password Credentials | | ✔ | | +| Client Credentials | | ✔ | | +| Refresh Token | | ✔ | | + +| [red]#*_Protocol Endpoints_*# 4+| +| Authorization Endpoint | | ✔ | | +| Token Endpoint | | ✔ | | +| User Approval Endpoint | | ✔ | | +| Introspection Endpoint | | ✔ | | + +| [red]#*_Access Token Formats_*# 4+| +| Opaque | | ✔ | | +| JSON Web Signature (MAC) | | ✔ | | +| JSON Web Signature (RSA) | | ✔ | | + +| [red]#*_Access Token Storage Management_*# 4+| +| In-Memory | | ✔ | | +| JDBC | | ✔ | | +| Redis | | ✔ | | + +| [red]#*_Client Authentication Methods_*# 4+| +| HTTP Basic | | ✔ | | +| HTTP POST | | ✔ | | + +| [red]#*_Client Registration Storage Management_*# 4+| +| JDBC | | ✔ | | + +| [red]#*_Authorization Code Storage Management_*# 4+| +| In-Memory | | ✔ | | +| JDBC | | ✔ | | + +| [red]#*_User Approval Storage Management_*# 4+| +| In-Memory | | ✔ | | +| JDBC | | ✔ | | +|=== \ No newline at end of file