Currently Empty: 0.00₫
Bài đọc – Access Token & Refresh Token
Trong quá trình kiểm thử API, đặc biệt là các hệ thống yêu cầu xác thực người dùng, bạn sẽ thường xuyên gặp hai khái niệm: Access Token và Refresh Token. Đây là hai thành phần quan trọng trong cơ chế xác thực theo kiểu Token-based Authentication, thường được dùng trong các hệ thống sử dụng OAuth 2.0 hoặc JWT (JSON Web Token).

1. Access Token là gì?
Access Token là một chuỗi mã ngắn hạn đại diện cho quyền truy cập của người dùng vào hệ thống. Khi người dùng đăng nhập thành công, hệ thống sẽ trả về một Access Token.
- Tác dụng: Dùng để xác thực các request sau đó của người dùng.
- Thời hạn: Thường rất ngắn (vài phút đến vài chục phút) để hạn chế rủi ro bảo mật.
- Ví dụ sử dụng:
GET /api/user/profile Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
2. Refresh Token là gì?
Refresh Token là một loại token dài hạn hơn, dùng để làm mới Access Token khi nó hết hạn.
- Tác dụng: Giúp người dùng không phải đăng nhập lại mỗi khi Access Token hết hạn.
- Thời hạn: Dài hơn Access Token (vài ngày, vài tuần hoặc lâu hơn).
- Bảo mật: Refresh Token thường được lưu trữ an toàn hơn (ví dụ: HttpOnly cookies).
3. Cách hoạt động chung
Bước 1: Đăng nhập
Người dùng gửi thông tin đăng nhập → hệ thống trả về:
- Access Token (ngắn hạn)
- Refresh Token (dài hạn)
Bước 2: Gọi API
Mỗi lần gọi API, client gửi Access Token trong phần Authorization Header.
Bước 3: Access Token hết hạn
- Hệ thống trả về lỗi
401 Unauthorized. - Lúc này, client gửi Refresh Token để yêu cầu cấp mới Access Token.
Bước 4: Nhận Access Token mới
Hệ thống xác thực Refresh Token → trả về Access Token mới (và có thể cả Refresh Token mới).
4. Access Token & Refresh Token trong API Testing
Trong kiểm thử API (bằng Postman, REST-assured, hoặc tools khác), cần kiểm tra:
🔸 Kiểm thử Access Token:
- Token có được cấp đúng không?
- Token có thời hạn không?
- Gửi request với token hết hạn có bị từ chối không?
🔸 Kiểm thử Refresh Token:
- Refresh Token có thể tạo lại Access Token không?
- Token mới có thay đổi hay vẫn giữ nguyên?
- Token cũ có bị thu hồi không?
🔸 Kiểm thử bảo mật:
- Refresh Token không được cấp phát cho user chưa đăng nhập.
- Token không bị rò rỉ hoặc có thể giả mạo.
Kết luận
Access Token và Refresh Token là hai thành phần quan trọng trong xác thực và phân quyền hiện đại. Nắm vững cơ chế hoạt động của chúng sẽ giúp bạn thực hiện API Testing chính xác và hiệu quả, đảm bảo hệ thống an toàn và mượt mà cho người dùng.

