Với mong muốn đem đến cho các bạn một hướng dẫn toàn tập về xây dựng một Authorization Server sử dụng Spring Authorization Server, mình đã bỏ thời gian để viết cuốn sách “Spring Authorization Server – From the basics”.
Các bạn có thể mua sách tại đây:
Store | URL | Price |
Kobo | 14.99$ | |
Amazon | 28.99$ |
Cuốn sách này cover tất cả những tính năng cần có của một Authorization Server và đã được Spring Authorization Server hỗ trợ. Cập nhập tới Spring Authorization Server phiên bản 1.1.0.
Trong cuốn sách này, mình hướng dẫn các bạn cách hiện thực một Authorization Server với Spring Authorization Server, giới thiệu với các bạn cách cấu hình cho một RegisteredClient hỗ trợ các grant types trong OAuth 2.1, bao gồm:
- Grant type Authorization Code với có và không có PKCE,
- Grant type Client Credentials,
- Grant type Refresh Token
- Và grant type Device Code.
Mình cũng hướng dẫn các bạn một số thao tác liên quan đến access token trong chương “Access token” và các sử dụng tập tin keystore PKCS12 để bảo mật cho access token.
Trong chương 6, mình đề cập về OpenID Connect và hướng dẫn các bạn cách cấu hình để Authorization Server được xây dựng sử dụng Spring Authorization Server, hỗ trợ OpenID Connect.
Để lưu các thông tin về RegisteredClient, Authorization và Authorization Consent vào database, các bạn có thể đọc chương “JDBC”.
Và cuối cùng, để customize các trang login hay consent screen của Authorization Server, các bạn hãy đọc chương 8 “Customization”.
Mục lục của cuốn sách này như sau:
1. Giới thiệu
1.1 OAuth 2.1
1.2 OpenID Connect
1.3 Spring Authorization Server
2. Bắt đầu
2.1 Cấu hình Authorization Server
2.2 Cấu hình Spring Security
2.3 Đăng ký client với Authorization Server
2.4 Đăng ký user với Authorization Server
2.5 Smoke test
2.6 OAuth Authorization Server Info
3. OAuth 2.1 grant types
3.1 Grant type Authorization Code
3.1.1 Standard
3.1.2 Với PKCE
3.2 Grant type Client Credentials
3.3 Grant type Refresh Token
3.4 Extension grant type
3.4.1 Grant type Device Code
4. Access token
4.1 Thay đổi expiration time
4.2 Token introspection
4.3 Token revocation
4.4 Thêm claims
5. JWT/JWS/JWK
5.1 Generate tập tin keystore PKCS12
5.2 Sử dụng tập tin keystore PKCS12
6. OpenID Connect
6.1 ID Token
6.2 User Info
6.3 Client Registration
6.4 Client Read
6.5 Provider Configuration
6.6 Logout
7. JDBC
7.1 RegisteredClient
7.2 Authorization
7.3 Authorization Consent
8. Customization
8.1 Login
8.2 Consent Screen
8.2.1 Định nghĩa request URI
8.2.2 Định nghĩa consent screen template
8.2.3 Cấu hình Authorization Server
Phụ lục
- Client types trong OAuth 2.1