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

  • Azure RBAC

    Azure RBAC là gì và vì sao quản trị viên cloud bắt buộc phải nắm

    Khi bắt đầu làm việc với Microsoft Azure, một trong những chủ đề quan trọng nhất mà anh em quản trị hệ thống, cloud engineer hay admin cần hiểu rõ chính là RBAC, hay Role-Based Access Control.

    Đây là cơ chế kiểm soát truy cập theo vai trò, giúp tổ chức quản lý chính xác ai được quyền truy cập vào tài nguyên nào, được phép thực hiện thao tác gì, và trong phạm vi nào.

    Nói đơn giản hơn, Azure RBAC trả lời 3 câu hỏi cốt lõi:

    Ai đang truy cập?
    Họ được phép làm gì?
    Họ được phép thao tác ở đâu?

    Azure RBAC hoạt động trên nền Azure Resource Manager, cho phép phân quyền rất chi tiết từ cấp cao xuống cấp thấp, bao gồm:

    Management Group
    Subscription
    Resource Group
    Từng Resource cụ thể

    Vì sao Azure RBAC quan trọng?

    Trong môi trường thực tế, không thể cấp quyền quá rộng cho tất cả mọi người. Nếu ai cũng là Owner hoặc Contributor toàn subscription thì rủi ro là rất lớn.

    Ví dụ:

    Một kỹ sư chỉ cần quản lý VM thì không cần quyền chỉnh sửa network.
    Một DBA chỉ nên quản lý SQL Database, không nên có quyền tác động lên storage, VM hay subnet.
    Một ứng dụng chỉ nên được cấp quyền đúng với tài nguyên mà nó cần truy cập.

    Azure RBAC giúp doanh nghiệp thực hiện đúng nguyên tắc least privilege, tức là chỉ cấp tối thiểu quyền cần thiết để làm việc.

    Đây là nguyên tắc rất quan trọng trong bảo mật cloud, vì nó giúp giảm thiểu:

    Sai sót vận hành
    Truy cập trái phép
    Tác động lan rộng khi tài khoản bị lộ hoặc bị tấn công

    4 khái niệm bắt buộc phải nhớ trong Azure RBAC
    1. Security Principal

    Đây là đối tượng cần được cấp quyền. Nó có thể là:

    User
    Group
    Service Principal
    Managed Identity

    Hiểu đơn giản, security principal là “người” hoặc “thực thể” đang yêu cầu truy cập tài nguyên Azure.
    1. Role Definition

    Đây là tập quyền được định nghĩa sẵn hoặc tự tạo, mô tả principal có thể thực hiện những hành động nào.

    Một số role rất phổ biến trong Azure là:

    Reader: chỉ xem, không chỉnh sửa
    Contributor: tạo, sửa, xóa tài nguyên nhưng không cấp quyền cho người khác
    Owner: toàn quyền, bao gồm cả quản lý quyền truy cập
    User Access Administrator: tập trung vào quản lý quyền truy cập
    1. Scope

    Đây là phạm vi áp dụng quyền.

    Scope càng cao thì quyền tác động càng rộng.

    Ví dụ:

    Gán role ở mức subscription thì quyền có hiệu lực trên toàn subscription
    Gán role ở mức resource group thì chỉ áp dụng trong resource group đó
    Gán role ở mức resource thì chỉ áp dụng cho đúng tài nguyên đó
    1. Assignment

    Assignment là hành động gán một role cho một security principal tại một scope cụ thể.

    Đây chính là nơi 3 thành phần kết hợp lại với nhau:

    Ai
    Vai trò gì
    Ở phạm vi nào

    Ví dụ dễ hiểu về Azure RBAC

    Cho một ứng dụng truy cập toàn bộ tài nguyên trong một resource group.

    Cho user A quản lý virtual machines trong subscription.

    Cho user B quản lý virtual networks trong cùng subscription.

    Cho nhóm DBA quản lý SQL Databases trong subscription.

    Cho một admin quản lý toàn bộ tài nguyên trong một resource group, bao gồm VM, web app và subnet.

    Nhìn vào các ví dụ trên, chúng ta thấy RBAC không chỉ là cấp quyền, mà là cấp quyền đúng người, đúng việc, đúng phạm vi.

    Role Definition trong Azure được tạo như thế nào?

    Mỗi role trong Azure được định nghĩa bằng JSON.

    Một role definition bao gồm các thành phần chính:

    Name: tên role
    Id: mã định danh role
    Description: mô tả
    Actions: các thao tác được phép
    NotActions: các thao tác không được phép
    AssignableScopes: phạm vi có thể gán role

    Ví dụ role Owner:

    Name: Owner
    ID: 8e3af657-a8ff-443c-a75c-2fe8c4bcb65
    IsCustom: False
    Description: Manage everything, including access to resources
    Actions: {*}
    NotActions: {}
    AssignableScopes: {/}

    Ý nghĩa của role này là:

    Được phép thực hiện mọi hành động
    Không có hành động nào bị chặn
    Có thể áp dụng ở mọi scope

    Đây là role rất mạnh, nên trong thực tế cần hạn chế cấp phát tràn lan.

    Best Practice khi triển khai Azure RBAC

    Điểm quan trọng nhất khi thiết kế RBAC là không cấp quyền theo kiểu “cho nhanh”, mà phải thiết kế có chủ đích.

    Một số nguyên tắc thực chiến:

    Chỉ cấp quyền tối thiểu cần thiết
    Ưu tiên gán quyền cho group thay vì từng user riêng lẻ
    Hạn chế sử dụng Owner
    Phân tách rõ nhiệm vụ giữa system admin, network admin, DBA, security team
    Gán quyền ở scope nhỏ nhất có thể
    Thường xuyên rà soát lại role assignment

    Đây là nền tảng quan trọng để xây dựng môi trường Azure an toàn, dễ quản trị và dễ mở rộng khi hệ thống lớn dần lên.
    Azure RBAC là một trong những thành phần cốt lõi của quản trị Azure. Nếu anh em đang học AZ-104, làm Azure Administrator hoặc triển khai cloud cho doanh nghiệp, thì đây là kiến thức không thể bỏ qua. Hiểu RBAC không chỉ để thi chứng chỉ, mà còn để vận hành hệ thống đúng chuẩn:

    Đúng người
    Đúng quyền
    Đúng phạm vi
    Đúng nguyên tắc bảo mật

    Trong cloud, cấp quyền sai đôi khi còn nguy hiểm hơn cấu hình sai.
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X