Security & Governance nâng cao
Network security (VPC/VNet injection, PrivateLink), secret management, ABAC, audit logs, compliance.
Ở quy mô doanh nghiệp, governance cơ bản của Unity Catalog (Module 5) cần được bổ sung thêm lớp bảo mật hạ tầng mạng và quản lý secret đúng chuẩn — đặc biệt quan trọng khi lakehouse xử lý dữ liệu nhạy cảm hoặc chịu các yêu cầu tuân thủ ngành (tài chính, y tế, chính phủ).
🎯 Mục tiêu học tập
- Hiểu các mô hình triển khai mạng an toàn: VPC/VNet injection, PrivateLink
- Quản lý secret đúng chuẩn bằng Databricks Secrets, không hard-code credential
- Nắm khái niệm Attribute-Based Access Control (ABAC) — mô hình phân quyền theo thuộc tính/tag
- Sử dụng audit log để phục vụ điều tra sự cố và báo cáo tuân thủ
Network Security: VPC/VNet Injection & PrivateLink
VPC/VNet injection cho phép triển khai data plane Databricks vào mạng riêng đã có sẵn của tổ chức (thay vì Databricks tự tạo mạng mặc định) — cần thiết khi tổ chức có yêu cầu kiểm soát chặt network segmentation, firewall rule theo chuẩn nội bộ. PrivateLink loại bỏ hoàn toàn việc truyền dữ liệu qua public internet giữa control plane và data plane, hoặc giữa client và workspace — bắt buộc với nhiều yêu cầu compliance nghiêm ngặt (tài chính, chính phủ).
Secret Management
Không bao giờ hard-code API key/mật khẩu trong notebook. Databricks Secrets lưu trữ credential trong "secret scope" (có thể backed bởi chính Databricks hoặc bởi Azure Key Vault nếu trên Azure), truy cập qua API mà không bao giờ hiển thị giá trị thật trong log hay output notebook:
api_key = dbutils.secrets.get(scope="prod-secrets", key="openai-api-key")
Nguyên tắc giống hệt quản lý secret cho AI service (Module 2, 10 của khoá AI Engineer) — chỉ khác cơ
chế lưu trữ tích hợp sẵn trong nền tảng thay vì tự cấu hình .env/secret manager riêng.
Attribute-Based Access Control (ABAC)
Thay vì cấp quyền thủ công cho từng bảng/schema (GRANT truyền thống ở Module 5 — mô hình RBAC), ABAC
cho phép định nghĩa policy dựa trên tag gắn vào dữ liệu (ví dụ tag pii=true,
classification=confidential) — một policy duy nhất tự động áp dụng cho mọi bảng/cột
hiện tại và tương lai có tag phù hợp, không cần cập nhật GRANT thủ công mỗi khi có bảng mới. Đây là mô
hình quản trị mở rộng tốt hơn nhiều khi số lượng bảng trong lakehouse lên đến hàng nghìn.
Audit Log & Compliance
system.access.audit ghi lại mọi thao tác trên workspace (ai truy vấn bảng nào, lúc nào, từ
IP nào, thành công hay bị từ chối quyền) — dữ liệu nền tảng cho việc điều tra sự cố bảo mật và tạo báo cáo
tuân thủ định kỳ. Nên thiết lập truy vấn định kỳ (qua Workflows, Module 7) quét audit log tìm pattern bất
thường (một tài khoản truy vấn khối lượng dữ liệu lớn bất thường ngoài giờ làm việc) và tự động cảnh báo.
🏋️ Bài tập thực hành
Tạo 1 secret scope, lưu 1 giá trị giả lập (API key mẫu), viết notebook đọc secret đó thay vì hard-code. Gắn tag classification=confidential cho 1 bảng chứa dữ liệu giả lập nhạy cảm (nếu workspace hỗ trợ ABAC). Viết 1 truy vấn trên system.access.audit tìm các lần truy vấn bị từ chối quyền (permission denied) trong 7 ngày qua.
📚 Tài nguyên học tập
-
Databricks — Secret managementTài liệu chính thức quản lý secretDocs
-
Databricks — Network securityTài liệu network security (VPC injection, PrivateLink)Docs
-
Databricks — Audit logsTài liệu audit logDocs
✅ Tự đánh giá hoàn thành
- Lưu và đọc được secret qua Databricks Secrets, không hard-code credential
- Giải thích được khi nào cần VPC injection/PrivateLink
- Hiểu khái niệm ABAC và khác biệt so với RBAC truyền thống
- Viết được truy vấn cơ bản trên system.access.audit