Quay lại bộ đề
Question #39 Topic 1
You are migrating your data warehouse to BigQuery. You have migrated all of your data into tables in a dataset. Multiple users from your organization will be using the data. They should only see certain tables based on their team membership. How should you set user permissions?
Bạn đang di chuyển kho dữ liệu của mình sang BigQuery. Bạn đã di chuyển tất cả dữ liệu vào các bảng trong một tập dữ liệu (dataset). Nhiều người dùng từ tổ chức của bạn sẽ sử dụng dữ liệu này. Họ chỉ được phép xem một số bảng nhất định dựa trên tư cách thành viên nhóm của họ. Bạn nên thiết lập quyền người dùng như thế nào?
A
Assign the users/groups data viewer access at the table level for each table
Chỉ định quyền truy cập dữ liệu (data viewer) cho người dùng/nhóm ở cấp độ bảng cho từng bảng
B
Create SQL views for each team in the same dataset in which the data resides, and assign the users/groups data viewer access to the SQL views
Tạo các view SQL cho từng nhóm trong cùng một dataset chứa dữ liệu, và chỉ định quyền truy cập dữ liệu cho người dùng/nhóm đối với các view SQL đó
C
Create authorized views for each team in the same dataset in which the data resides, and assign the users/groups data viewer access to the authorized views
Tạo các authorized views (view được ủy quyền) cho từng nhóm trong cùng một dataset chứa dữ liệu, và chỉ định quyền truy cập dữ liệu cho người dùng/nhóm đối với các authorized views đó
D
Create authorized views for each team in datasets created for each team. Assign the authorized views data viewer access to the dataset in which the data resides. Assign the users/groups data viewer access to the datasets in which the authorized views reside
Tạo các authorized views cho từng nhóm trong các dataset riêng biệt được tạo cho mỗi nhóm. Cấp quyền truy cập dữ liệu cho các authorized views này đối với dataset gốc chứa dữ liệu. Chỉ định quyền truy cập dữ liệu cho người dùng/nhóm đối với các dataset chứa authorized views đó
Giải thích & Tài liệu tham khảo
Yêu cầu đặt ra là phân quyền cho người dùng chỉ xem được các bảng nhất định dựa trên đội nhóm của họ, đồng thời đảm bảo tính bảo mật và quản lý dễ dàng nhất trong BigQuery.
- D. Tạo các authorized views trong các dataset riêng biệt và cấp quyền: Đây là phương pháp chuẩn (best practice) của Google Cloud để bảo mật dữ liệu. Bằng cách tạo các dataset riêng biệt cho mỗi đội nhóm (ví dụ:
sales_dataset,marketing_dataset) và đặt các authorized views ở đó, ta có thể:
- Cho phép người dùng truy cập trực tiếp vào các view trong dataset của họ (họ chỉ có quyền đọc view này mà không có quyền đọc bảng gốc bên trong dataset gốc).
- Cấp quyền cho chính authorized view đó (Authorized View) truy cập vào dataset gốc chứa dữ liệu thực tế. Như vậy, khi người dùng truy vấn view, BigQuery sẽ cho phép truy cập bảng gốc thông qua quyền ủy quyền của view mà người dùng không bao giờ nhìn thấy hoặc truy cập trực tiếp được bảng gốc.
Các lựa chọn khác không phù hợp:
- A: Phân quyền ở cấp độ bảng (table-level IAM) cho từng bảng là cực kỳ khó quản lý, phức tạp và dễ gây ra sai sót bảo mật khi số lượng bảng tăng lên.
- B & C: Nếu đặt các view trong cùng một dataset với dữ liệu gốc, để người dùng chạy được view, họ sẽ cần quyền đọc trên dataset đó, đồng nghĩa với việc họ có thể xem hoặc truy cập các bảng khác trong cùng dataset, vi phạm nguyên tắc đặc quyền tối thiểu.
(Đáp án được gợi ý bởi AI)