Bài viết liên quan
JWT (JSON Web Token)
JSON Web Token
JWT (JSON Web Token) là gì?
JWT là chuẩn mở được định nghĩa tại RFC 7519 của IETF, cho phép truyền tải thông tin xác thực giữa các bên dưới dạng chuỗi JSON an toàn, có chữ ký số. Trong ngân hàng Việt Nam, JWT được ứng dụng rộng rãi ở tầng API Gateway để xác thực phiên làm việc (stateless session) giữa mobile app, internet banking với core banking và các microservice nội bộ.
Cấu trúc 3 phần (base64url-encoded)
- Header: mô tả thuật toán ký (HS256/RS256/ES256) và loại token
- Payload: chứa các claim như sub (mã KH), iss (issuer), aud (audience), exp, iat, jti, scope
- Signature: HMAC-SHA256 hoặc RSA-SHA256, đảm bảo tính toàn vẹn và xác thực nguồn gốc
Ví dụ thực tế
Khách hàng đăng nhập app MB Bank → backend cấp access token hạn 15 phút (HS256) kèm refresh token hạn 7-30 ngày lưu HttpOnly Secure cookie. Token được verify tại Gateway trước khi truy vấn số dư hoặc chuyển tiền. Khi phát hiện giao dịch bất thường (đăng nhập từ IP lạ), token bị thêm vào blacklist trên Redis cho đến khi hết hạn exp. Theo Thông tư 17/2024/TT-NHNN, ngân hàng phải áp dụng xác thực đa yếu tố và lưu trữ log truy cập tối thiểu 5 năm; tuân thủ Nghị định 13/2023/NĐ-CP về bảo vệ dữ liệu cá nhân.