Xác thực và phân quyền (authn/authz)

Chủ đề Dành cho thành viên

Bài toán

Ở monolith, mỗi dữ liệu thường chỉ có một đường vào, nên kiểm tra quyền nằm ngay đó: một hàm has_access?, một API mỗi resource. Khi hệ thống tách thành nhiều service, nhiều client, nhiều loại token, cả hai nửa đều vỡ:

  • Xác thực (authn), tức "ai đang gọi": mỗi service phải tự hiểu cookie, token thiết bị, token đối tác; identity bị truyền dạng chuỗi trần và không ai kiểm toàn vẹn.
  • Phân quyền (authz), tức "được làm gì": logic bị chép sang nhiều service rồi lệch nhau. Một lần check phải gọi nhiều service khác (fan-out), và chính service phân quyền trở thành phụ thuộc cứng của mọi request.

Trang này nói về thiết kế và vận hành hệ xác thực, phân quyền ở production: đặt quyết định ở đâu, mô hình dữ liệu quyền (ACL, RBAC, ReBAC kiểu Zanzibar, ABAC, policy), làm sao giữ nhanh và đúng. Quản lý secret, credential hạ tầng và sự cố bảo mật nằm ở Bảo mật hạ tầng và quản lý secret.

Bạn đã dùng hết 3 bài đọc thử miễn phí

Đây là phần mở đầu của Xác thực và phân quyền (authn/authz). Thành viên đọc được toàn bộ 46 bài tổng hợp theo chủ đề và 141 dòng thời gian công ty. Các bài tóm tắt vẫn đọc tự do.

  • Đọc không giới hạn mọi bài tổng hợp và dòng thời gian
  • Danh sách đọc cá nhân hoá theo trình độ và mục tiêu
  • Cộng đồng Discord cho thành viên (sắp mở)

Gói 6 tháng giảm ~16%, gói 12 tháng giảm ~25%. Trả bằng VietQR hoặc thẻ.