Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Authentication & Authorization – Từ Lý Thuyết Đến Thực Tế

    Mở đầu: Câu chuyện từ thực tế

    Hôm này mình được giao task hỗ trợ phân quyền tài khoản Facebook "Hải My" để có quyền chạy quảng cáo trên Fanpage VnPro. Nghe có vẻ đơn giản – nhưng đây thực ra là một ví dụ rất rõ ràng của hai khái niệm nền tảng trong bảo mật hệ thống: AuthenticationAuthorization. Bài này mình sẽ giải thích cả hai theo cách dễ hiểu nhất có thể,
    1. Authentication là gì?

    Authentication (Xác thực) = "Bạn là ai?"

    Đây là bước hệ thống kiểm tra xem bạn có đúng là người bạn tự nhận hay không.

    Ví dụ đời thực:
    • Bạn đăng nhập Facebook bằng email + mật khẩu → Facebook đang xác thực bạn
    • Quét vân tay để mở điện thoại → cũng là xác thực
    • Nhập mã OTP được gửi về điện thoại → xác thực 2 bước (2FA)
    Các loại Authentication phổ biến:
    Password-based Email + mật khẩu Trung bình
    Two-Factor (2FA) OTP qua SMS/app Cao
    Biometric Vân tay, Face ID Cao
    Token-based JWT, OAuth token Cao
    SSO (Single Sign-On) Đăng nhập Google để vào app khác Cao

    2. Authorization là gì?

    Authorization (Phân quyền) = "Bạn được làm gì?"

    Sau khi hệ thống đã biết bạn là ai, nó cần quyết định bạn được phép làm những gì.

    Ví dụ đời thực:
    • Bạn đăng nhập vào Facebook thành công (đã xác thực) → nhưng bạn có được chạy quảng cáo trên Fanpage VnPro không? → đó là câu hỏi của phân quyền
    • Nhân viên mới vào công ty được cấp thẻ từ vào tòa nhà, nhưng không phải phòng nào cũng vào được

    Các mô hình Authorization phổ biến:

    🔹 RBAC – Role-Based Access Control (Phân quyền theo vai trò)
    Người dùng được gán một vai trò, và vai trò đó có những quyền nhất định.

    Ví dụ trên Facebook Business:
    - Admin → xem, chỉnh sửa, chạy quảng cáo, quản lý người dùng
    - Advertiser → chỉ tạo và chạy quảng cáo
    - Analyst → chỉ xem báo cáo, không chỉnh sửa được gì
    - Moderator → chỉ trả lời comment, inbox

    🔹 ABAC – Attribute-Based Access Control (Phân quyền theo thuộc tính)
    Quyền được quyết định dựa trên nhiều yếu tố kết hợp: thời gian, địa điểm, thiết bị, phòng ban...

    Ví dụ: Nhân viên phòng Marketing được xem dữ liệu khách hàng,
    nhưng CHỈ trong giờ làm việc và CHỈ khi dùng máy tính công ty

    🔹 DAC – Discretionary Access Control (Phân quyền tùy ý)
    Chủ sở hữu tài nguyên tự quyết định ai được truy cập. Đây chính xác là mô hình Facebook đang dùng cho Fanpage!

    Admin Fanpage VnPro → tự chọn thêm "Hải My" vào với quyền Advertiser
    3. Authentication vs Authorization – Dễ nhầm, dễ phân biệt

    🔑 Authentication → "Đây là Hải My, đã đăng nhập thành công"
    🛡️ Authorization → "Hải My được phép chạy quảng cáo trên Fanpage VnPro"

    Một điểm quan trọng: Authentication phải xảy ra trước Authorization. Hệ thống phải biết bạn là ai trước khi quyết định bạn được làm gì.
    4. Áp dụng vào môi trường chuyên nghiệp như VnPro

    Trong môi trường doanh nghiệp như VnPro – nơi có Fanpage, tài khoản quảng cáo, tài liệu nội bộ, hệ thống LMS... việc quản lý quyền truy cập đúng cách cực kỳ quan trọng. Quy trình cấp quyền đúng chuẩn:

    1. Xác định nhu cầu → "Hải My cần quyền gì? Chạy ads thôi hay cần quản lý nữa?"
    2. Áp dụng Least Privilege → Chỉ cấp đúng quyền cần thiết, không hơn
    3. Thực hiện cấp quyền → Thêm vào Facebook Business với role phù hợp
    4. Xác nhận & kiểm tra → Test lại xem quyền hoạt động đúng chưa
    5. Ghi lại log → Lưu lại ai cấp, cấp quyền gì, ngày nào
    6. Review định kỳ → Khi nhân viên đổi vai trò hoặc nghỉ việc → thu hồi ngay

    Nguyên tắc vàng trong quản lý phân quyền: Principle of Least Privilege – Chỉ cấp quyền tối thiểu cần thiết để hoàn thành công việc

    Thay vì cấp quyền Admin cho mọi người cho "tiện", hãy cấp đúng role. Nếu Hải My chỉ cần chạy ads thì cấp Advertiser, không cần cấp Admin.

    Tại sao? Vì nếu tài khoản bị xâm phạm, thiệt hại chỉ giới hạn trong phạm vi quyền đó thôi.
    5. Rủi ro nếu quản lý phân quyền kém
    • Nhân viên cũ nghỉ việc nhưng vẫn còn quyền truy cập → rò rỉ dữ liệu
    • Cấp quyền Admin tràn lan → một tài khoản bị hack = toàn bộ hệ thống bị ảnh hưởng
    • Không có log ghi lại → không biết ai đã làm gì khi có sự cố
    • Dùng chung một tài khoản Admin → không truy vết được trách nhiệm

    6. Kết luận

    Authentication và Authorization tưởng chừng là hai khái niệm kỹ thuật khô khan, nhưng thực ra chúng xuất hiện trong mọi hệ thống số mà chúng ta dùng hàng ngày. Task phân quyền Facebook cho Hải My là một ví dụ nhỏ nhưng đủ để thấy rằng: bảo mật không phải việc của riêng team IT – bất kỳ ai quản lý tài khoản, fanpage hay hệ thống nội bộ đều cần hiểu và áp dụng đúng.

    Nếu bạn đang làm việc trong môi trường doanh nghiệp, hãy nhớ ba điều:
    1. ✅ Xác thực mạnh (bật 2FA cho mọi tài khoản quan trọng)
    2. ✅ Phân quyền tối thiểu (chỉ cấp đúng những gì cần)
    3. ✅ Review định kỳ (thu hồi quyền khi không còn cần thiết)
Working...
X