Authorization
Định nghĩa
Authorization là quá trình kiểm tra caller đã xác thực có quyền thực hiện action cụ thể trên resource cụ thể hay không.
Cách hiểu bằng lời của tôi
Một user đăng nhập hợp lệ vẫn không được đọc đơn hàng của user khác. Authentication mở cửa vào hệ thống; authorization kiểm từng căn phòng.
Cần biết
- Broken Object Level Authorization xảy ra khi API chỉ kiểm login nhưng không kiểm quyền trên object ID.
- Least privilege giới hạn blast radius khi credential bị lộ.
- RBAC gán quyền qua role; ABAC dùng thuộc tính caller/resource/context để quyết định linh hoạt hơn.
- ReBAC dùng quan hệ giữa user, group và object để diễn đạt sharing/inheritance.
- Hệ authorization ở scale lớn cần kiểm soát freshness, cache, quota và isolation giữa client.
- Authorization phải nằm server-side và được kiểm cho từng resource/action nhạy cảm.