Syllabus học Boundary
TUẦN 0 - Tư duy nền tảng
Ngày 1: Boundary là gì và giải quyết bài toán gì
Mục tiêu: Hiểu vị trí Boundary trong hệ sinh thái HashiCorp và so với VPN/bastion host/PAM truyền thống.
Nội dung:
Lý thuyết: Boundary là "identity-aware proxy" cho least-privileged, just-in-time access. Triết lý: Boundary lo access (ai được kết nối tới đâu), Vault lo secrets (credential động) - Boundary không thay thế Vault, hai sản phẩm bổ trợ nhau.
So sánh: VPN/bastion (trust theo network/IP) vs Boundary (trust theo identity, session có thời hạn, ghi log/record được).
4 giai đoạn core workflow: User Authentication → Granular Authorization → Dynamic catalog selection → Access.
Thực hành: Cài Boundary dev mode (
boundary dev), login, thửboundary connecttới 1 target demo.
Mini-Project: Không, warm-up.
TUẦN 1 - Domain Model & Core Concepts
Ngày 2: Scopes - đơn vị tổ chức & blast radius
Mục tiêu: Hiểu cấu trúc phân cấp
Global → Organization → Project.Nội dung:
Lý thuyết: Scope là "container" cho resource và permission, mỗi scope có permission boundary cô lập → giới hạn blast radius. Global: admin cấu hình toàn hệ thống. Org: nên chia theo business unit. Project: chia theo sản phẩm/ứng dụng.
Thực hành: Tạo 1 org scope + 2 project scope, quan sát cây scope qua
boundary scopes list.
Ngày 3: IAM - Users, Groups, Auth Methods, Accounts
Mục tiêu: Hiểu cách Boundary định danh và xác thực principal.
Nội dung:
Lý thuyết: Principal = User hoặc Group. Auth method hỗ trợ password, OIDC, LDAP. Account là bộ credential cụ thể trong 1 auth method, gắn với 1 user; 1 user có thể có nhiều account từ nhiều auth method.
Thực hành: Tạo password auth method, account + user, login thử bằng CLI.
Ngày 4: Access Management - Actions, Grants, Roles
Mục tiêu: Hiểu RBAC 3 tầng của Boundary.
Nội dung:
Lý thuyết: Action là hành vi trên resource. Grant = action(s) + resource(s) được phép (grant string
id=...;type=...;actions=...). Role = tập hợp grant, gán cho principal, thuộc 1 scope duy nhất.Thực hành: Viết grant string giới hạn 1 group chỉ
read,listtarget trong 1 project, gán vào role, verify.
Ngày 5: Host Resources - Host, Host Catalog, Host Set
Mục tiêu: Hiểu cách Boundary tổ chức và khám phá tài nguyên mạng.
Nội dung:
Lý thuyết: Host = computing element có network address. Host catalog chứa host + host set - loại
statichoặcplugin-based (dynamic). Host set = nhóm host tương đương cho access control.Thực hành: Tạo static host catalog + host set với 2-3 host demo.
Ngày 6: Targets - address-based vs host-sources-based
Mục tiêu: Hiểu cách user "thấy" và kết nối tới resource.
Nội dung:
Lý thuyết: Target with address (đơn giản, host đơn lẻ) vs target with host sources (linh hoạt, khuyến nghị khi nhiều host/host động).
Thực hành: Tạo 1 target address-based, 1 target host-set-based, so sánh.
Ngày 7: Credentials - Store, Library, Brokering vs Injection
Mục tiêu: Hiểu cách Boundary cấp credential mà user không cần thấy secret.
Nội dung:
Lý thuyết: Credential store lưu/lấy/sinh credential. Credential library cấp credential cùng loại/access level từ 1 store. Brokering (trả credential về client) vs injection (Boundary tự inject, user không thấy secret).
Thực hành: Tạo static credential store, gắn vào target, connect và quan sát brokering vs injection.
Ngày 8: Aliases & Sessions (khái niệm)
Mục tiêu: Hiểu 2 resource còn lại trong domain model.
Nội dung:
Lý thuyết: Alias là chuỗi DNS-like trỏ tới resource đích. Session = tập hợp connection giữa user và host, có thể mang credential, có thời hạn.
Thực hành: Tạo alias cho target ở Ngày 6, connect bằng alias.
Ngày 9: Ôn tập Tuần 1
- Mini-Project: Dựng 1 cây scope (1 org, 2 project) + RBAC (2 role khác quyền) + 1 target host-set + 1 credential store injection + 1 alias, verify bằng 2 user khác quyền.
TUẦN 2 - Kiến trúc & Internals: Controller, Worker, State
Ngày 10: Kiến trúc tổng thể - Control plane vs Data plane
Mục tiêu: Phân biệt Controller và Worker.
Nội dung:
Lý thuyết: Controller = control plane - API, state (Postgres), auth/authorization. Worker = data plane - proxy traffic thực tế, không lưu state lâu dài.
Thực hành: Setup 1 controller + 1 worker local, quan sát log giao tiếp.
Ngày 11: Controller Internals - Repository Layer & State Model
Mục tiêu: Hiểu cách Controller thực sự đọc/ghi state, đủ để debug các lỗi liên quan tới data.
Nội dung:
Lý thuyết: Luồng nội bộ
Controller → Repository Layer → Postgres- Repository layer đóng vai trò domain logic + validate trước khi chạm DB; transaction model đảm bảo mỗi thay đổi resource (vd tạo target + gắn host set) atomic; optimistic locking (version field) tránh ghi đè khi 2 request sửa cùng resource đồng thời; resource hierarchy trong DB phản chiếu đúng cây scope đã học ở Tuần 1.Thực hành: Kết nối Postgres backend (dev mode), xem schema bảng chính, thử tạo 2 request sửa cùng 1 resource gần như đồng thời để quan sát version conflict.
Ngày 12: Worker Lifecycle Internals
Mục tiêu: Hiểu đầy đủ vòng đời 1 worker và source code liên quan.
Nội dung:
Lý thuyết: Vòng đời
Register → Authorize → Session Receive → Proxy → Terminate; worker định kỳ gửi status về controller (giống fingerprint ở các sản phẩm khác) để controller biết worker nào khả dụng cho session mới; source code tham khảointernal/worker/handlers(xử lý request/status) vàinternal/worker/proxy(logic proxy traffic thực tế).Thực hành: Theo dõi log worker qua từng giai đoạn lifecycle khi mở 1 session mới, đối chiếu với sơ đồ lý thuyết.
Ngày 13: PKI-based Worker Registration
Mục tiêu: Hiểu cách worker tự đăng ký an toàn với controller.
Nội dung:
Lý thuyết: Worker dùng PKI-based auth - tự sinh keypair, gửi registration request, controller xác nhận; giúp scale worker mà không cần phân phối secret tĩnh (khác cơ chế KMS-based auth cũ).
Thực hành: Đăng ký thêm 1 worker mới bằng PKI-based auth, verify qua
boundary workers list.
Ngày 14: Multi-hop Sessions & Ingress/Egress Workers
Mục tiêu: Hiểu cách Boundary kết nối tới target nằm sâu trong mạng private.
Nội dung:
Lý thuyết: Multi-hop session cho phép chuỗi worker (ingress → intermediate → egress) relay traffic qua nhiều network zone không cần mở firewall inbound; worker tags/filters chọn đúng worker qua
worker_filter/egress_worker_filter/ingress_worker_filter.Thực hành: Giả lập 2 mạng tách biệt, dùng multi-hop worker để connect tới target ở mạng "sâu" hơn.
Ngày 15: Network Internals - Proxy Flow
Mục tiêu: Hiểu Boundary xử lý traffic ở tầng network/TLS, đủ để trả lời "ai thấy gì" trong 1 session.
Nội dung:
Lý thuyết: Luồng proxy đầy đủ
Client TCP connection → TLS tới worker → Session tunnel (worker xác thực session token) → Worker mở connection riêng tới target → Connection multiplexing khi có nhiều connection trong cùng 1 session; điểm mấu chốt: Controller cấp session credential nhưng không nằm trên đường truyền traffic; Worker là nơi duy nhất thấy traffic thực tế (và có thể decrypt nếu TLS terminate tại đó); target có thể yêu cầu TLS riêng (double-hop TLS) tuỳ giao thức.Thực hành: Dùng
tcpdump/sstrên máy worker khi 1 session đang chạy để quan sát kết nối thực tế, đối chiếu với sơ đồ lý thuyết.
Ngày 16: Session Authorization Flow - toàn bộ chuỗi
Mục tiêu: Nắm được flow quan trọng nhất của Boundary từ đầu đến cuối trong 1 bức tranh duy nhất.
Nội dung:
Lý thuyết: Chuỗi đầy đủ
User → OIDC (hoặc auth method khác) → Account → (Managed Group nếu có) → Role → Grant → Target → Session; ở mỗi bước, Controller kiểm tra 1 điều kiện khác nhau (xác thực danh tính → map principal → resolve permission → tìm target hợp lệ → cấp session); hiểu rõ chuỗi này giúp debug cực nhanh khi user báo "không connect được" (lỗi có thể nằm ở bất kỳ mắt xích nào).Thực hành: Vẽ lại sơ đồ flow này cho chính hệ thống đã dựng ở Ngày 9, đánh dấu từng bước tương ứng resource nào trong Boundary; cố tình phá 1 mắt xích (vd xoá grant) và xác định lỗi trả về tương ứng bước nào.
Ngày 17: Deployment Topologies & HA Architecture
Mục tiêu: So sánh hướng triển khai và hiểu Boundary chịu tải/chịu lỗi ra sao.
Nội dung:
Lý thuyết: HCP Boundary (managed control plane, tự chạy private worker, có auto-update/DR/push-button deploy) vs Enterprise self-managed (full parity, tự vận hành controller + Postgres + worker) - tóm tắt nhanh khác biệt chủ yếu ở mức độ tự động hoá vận hành, không phải năng lực bảo mật cốt lõi. HA: nhiều controller sau load balancer cùng trỏ 1 Postgres HA, nhiều worker theo network zone; controller stateless về session nên scale ngang dễ.
Thực hành: Vẽ sơ đồ kiến trúc HA (2 controller + Postgres HA + 3 worker theo 3 zone) cho 1 hệ thống giả định.
Ngày 18: Source Code Reading có định hướng
Mục tiêu: Có lộ trình đọc code Boundary hiệu quả cho ai muốn đi sâu hơn mức vận hành.
Nội dung: Thứ tự đọc:
internal/iam(domain model: scope, user, role, grant) →internal/auth(auth method, OIDC/LDAP/password logic) →internal/session(session lifecycle, authorization) →internal/worker(lifecycle, proxy) →internal/controller(API handlers, gRPC giữa controller-worker).Mini-Project: Đọc
internal/iamvàinternal/session, viết note đối chiếu với sơ đồ Session Authorization Flow ở Ngày 16.
Ngày 19: Ôn tập Tuần 2
- Mini-Project: Từ hệ thống Ngày 9, thêm 1 worker multi-hop, verify toàn bộ Session Authorization Flow qua log thực tế của cả Controller lẫn Worker.
TUẦN 3 - Authentication & Identity
Ngày 20: Auth Methods Deep-dive
Mục tiêu: Nắm chi tiết từng loại auth method.
Nội dung:
Lý thuyết:
password(native, bootstrap/demo);oidc(delegate IDP ngoài);ldap(Active Directory truyền thống). So sánh use case và giới hạn.Thực hành: Cấu hình thêm 1 LDAP auth method trỏ tới LDAP server demo (hoặc mock).
Ngày 21: OIDC Integration với IDP thực tế
Mục tiêu: Setup SSO thực chiến.
Nội dung:
Lý thuyết: Luồng OIDC: redirect → IDP xác thực → callback với ID token → Boundary map claim thành account/user.
Thực hành: Tích hợp OIDC với 1 IDP miễn phí (Okta dev/Auth0/Keycloak), login qua SSO.
Ngày 22: Managed Groups
Mục tiêu: Tự động hoá gán quyền theo nhóm từ IDP.
Nội dung:
Lý thuyết: Managed group gom account dựa trên claim từ auth method backend - dùng trực tiếp làm principal trong role.
Thực hành: Tạo managed group filter theo claim, gán role, verify user trong nhóm IDP tự động có quyền.
Ngày 23: Multi-account Users & SSO nâng cao
Mục tiêu: Xử lý tình huống 1 người có nhiều danh tính.
Nội dung: Lý thuyết: 1 user có thể liên kết account từ nhiều auth method - hữu ích khi migrate IDP hoặc có tài khoản service riêng.
Ngày 24: Ôn tập Tuần 3
- Mini-Project: OIDC SSO đầy đủ + managed group tự động cấp quyền theo team, không thao tác thủ công nào ở Boundary sau setup.
TUẦN 4 - Cấu hình Access nâng cao
Ngày 25: Configure Hosts - Dynamic Host Catalogs
Mục tiêu: Tự động hoá discovery tài nguyên cloud.
Nội dung:
Lý thuyết: Plugin-based host catalog (AWS/Azure/GCP) tự động quét/đồng bộ instance theo filter (tag, region...).
Thực hành: Cấu hình dynamic host catalog AWS (sandbox), filter theo tag, verify host tự xuất hiện.
Ngày 26: Configure Targets - đa loại giao thức
Mục tiêu: Mở rộng ra ngoài SSH/TCP đơn giản.
Nội dung:
Lý thuyết: Target hỗ trợ TCP, SSH, RDP, database, Kubernetes; mỗi loại xử lý credential/injection khác nhau.
Thực hành: Tạo target RDP và database, thử connect với credential injection.
Ngày 27: Kubernetes Access Patterns
Mục tiêu: Áp dụng Boundary cho use case ngày càng phổ biến - truy cập Kubernetes API riêng tư.
Nội dung:
Lý thuyết: Pattern
Developer → Boundary → Private Kubernetes APIgiúp không cần expose K8s API server ra internet hay quản lý kubeconfig tĩnh; Boundary proxy traffic tới K8s API endpoint (EKS/RKE/OpenShift private endpoint), kết hợp Vault để cấp short-lived K8s token thay vì static kubeconfig.Thực hành: Tạo target trỏ tới 1 private K8s API endpoint (hoặc mô phỏng bằng cluster local qua worker riêng), verify
kubectlhoạt động qua Boundary session.
Ngày 28: Vault Integration cho Credentials
Mục tiêu: Đạt true passwordless bằng dynamic secret.
Nội dung:
Lý thuyết: Boundary dùng Vault làm credential store, lấy dynamic credential (vd DB credential từ Vault Database Secrets Engine) cho từng session, tự thu hồi khi session kết thúc.
Thực hành: Cấu hình Vault credential store + credential library, gắn vào target, verify credential sinh mới mỗi session.
Ngày 29: Credential Injection vs Brokering
Mục tiêu: Chọn đúng cơ chế theo yêu cầu bảo mật.
Nội dung: Lý thuyết: Injection phù hợp khi cần user tuyệt đối không thấy secret; brokering phù hợp khi ứng dụng/tool phía client cần tự cầm credential.
Thực hành: So sánh trải nghiệm 2 chế độ trên cùng target.
Ngày 30: Transparent Sessions & Client Agent
Mục tiêu: Hiểu trải nghiệm "không cần biết đang dùng Boundary".
Nội dung:
Lý thuyết: Client Agent chạy nền, tự intercept kết nối tới alias/target quen thuộc và route qua Boundary session dựa trên client cache.
Thực hành: Cài Client Agent, connect tới alias qua công cụ quen thuộc (vd
sshthẳng).
Ngày 31: Ôn tập Tuần 4
- Mini-Project: Target database + Vault dynamic credential + injection, thêm 1 dynamic host catalog AWS và 1 target Kubernetes, verify toàn chuỗi tự động.
TUẦN 5 - Sessions, Performance, Monitoring & Compliance
Ngày 32: Session Lifecycle & Session Connections
Mục tiêu: Hiểu chi tiết vòng đời 1 session.
Nội dung:
Lý thuyết: Session có trạng thái pending → active → cancelling → terminated; 1 session có thể chứa nhiều connection; admin có thể cancel session để thu hồi quyền ngay lập tức.
Thực hành: Mở session, dùng
boundary sessions canceltừ admin, quan sát client bị ngắt.
Ngày 33: Session Recording Architecture
Mục tiêu: Hiểu kiến trúc ghi session, không chỉ cách bật tính năng.
Nội dung:
Lý thuyết: Session recording lưu dưới dạng cấu trúc thư mục trong storage bucket (external object store); storage policy định nghĩa retention/lifecycle; kiến trúc ghi diễn ra ở tầng Worker (nơi thấy traffic thực) rồi đẩy asynchronously lên storage bucket, không làm chậm session đang chạy; đây là tính năng chỉ có ở HCP Plus/Enterprise Plus.
Thực hành (nếu có tier phù hợp): Cấu hình storage bucket, bật recording cho 1 target, review lại session đã ghi.
Ngày 34: Performance & Scale Planning
Mục tiêu: Trả lời câu hỏi production rất hay gặp: "cụm cần bao nhiêu controller/worker cho X user?"
Nội dung:
Lý thuyết: Các yếu tố cần cân nhắc khi scale từ 100 → 1,000 → 10,000 user: controller sizing (CPU/memory theo số request API đồng thời, chủ yếu bottleneck ở Postgres connection pool), worker sizing (băng thông + số session đồng thời proxy qua, bottleneck ở network throughput chứ không phải CPU), Postgres là điểm nghẽn chung nhất ở quy mô lớn (connection limit, transaction throughput) nên cần connection pooling (PgBouncer) và theo dõi sát; concurrent sessions ảnh hưởng trực tiếp tới số worker cần thiết theo network zone.
Thực hành: Ước lượng sizing cho 1 kịch bản giả định (vd 2,000 user, 500 session đồng thời cao điểm), đề xuất số controller/worker + cấu hình Postgres tương ứng.
Ngày 35: Monitor Access - Audit Logs & Event Streaming
Mục tiêu: Giám sát truy cập theo thời gian thực.
Nội dung:
Lý thuyết: Audit log ghi mọi request API; event streaming đẩy log ra SIEM ngoài (Splunk, Datadog...) để cảnh báo real-time.
Thực hành: Bật audit logging, thử vài action, review log sinh ra.
Ngày 36: Audit & Compliance sâu hơn
Mục tiêu: Hiểu Boundary hỗ trợ các khung compliance phổ biến thế nào.
Nội dung: Lý thuyết: Ánh xạ tính năng Boundary vào yêu cầu compliance thường gặp - PCI-DSS (least-privileged access, session logging cho hệ thống chứa dữ liệu thẻ), SOC2 (audit trail đầy đủ ai truy cập gì khi nào, access review định kỳ qua role/grant), ISO27001 (quản lý access lifecycle, thu hồi quyền tức thời qua session cancel); session recording (nếu có tier) là bằng chứng mạnh nhất cho auditor.
Ngày 37: Cloud-native Access Patterns
Mục tiêu: Áp dụng Boundary đúng cách trong kiến trúc cloud thực tế.
Nội dung: Lý thuyết: Pattern phổ biến theo từng cloud - AWS:
Boundary → Vault (dynamic secret) → RDS/EC2kết hợp dynamic host catalog theo tag; Azure: tương tự với Azure AD làm OIDC provider + dynamic host catalog Azure; GCP: kết hợp Workload Identity của GCP với Vault; điểm chung: Boundary luôn đứng giữa user và resource, Vault luôn đứng giữa Boundary và credential thực.
Ngày 38: Ôn tập Tuần 5
- Mini-Project: Bản sizing + kiến trúc giám sát/compliance hoàn chỉnh cho 1 hệ thống giả định 2,000 user, kèm mapping tính năng Boundary vào ít nhất 1 khung compliance cụ thể.
TUẦN 6 - Security & Operations
Ngày 39: Secure Boundary - TLS & KMS
Mục tiêu: Bảo mật giao tiếp và encryption-at-rest.
Nội dung:
Lý thuyết: TLS giữa client-controller và controller-worker; KMS (Vault Transit hoặc cloud KMS) mã hoá dữ liệu nhạy cảm trong Postgres.
Thực hành: Cấu hình KMS block trỏ Vault Transit/AWS KMS, verify controller khởi động thành công.
Ngày 40: Deploy Boundary - Self-managed HA Setup
Mục tiêu: Triển khai thực tế cụm production tự quản lý.
Nội dung: Thực hành: Deploy 2 controller + Postgres HA + 2 worker bằng Terraform/Docker Compose, verify LB phân phối đúng, worker vẫn hoạt động khi 1 controller down.
Ngày 41: Upgrade Boundary
Mục tiêu: Nâng cấp version không downtime.
Nội dung: Lý thuyết: Rolling upgrade controller trước (giữ ít nhất 1 controller sống), sau đó worker; kiểm tra compatibility matrix.
Ngày 42: Disaster Recovery
Mục tiêu: Chuẩn bị phương án phục hồi khi có sự cố nghiêm trọng.
Nội dung: Lý thuyết: Backup/restore Postgres state, recovery KMS key để phục hồi quyền truy cập dữ liệu mã hoá; ở HCP, DR phần lớn tự động hoá (managed); ở self-managed cần tự xây quy trình backup Postgres định kỳ + test restore + lưu trữ recovery KMS key an toàn tách biệt khỏi cụm chính.
Thực hành: Backup Postgres, giả lập mất cụm, restore và verify Boundary hoạt động lại đầy đủ.
Ngày 43: Enterprise Features
Mục tiêu: Có bức tranh đầy đủ về những gì Enterprise/HCP thêm so với OSS.
Nội dung: Lý thuyết: Tổng hợp lại - Session recording architecture (Ngày 33), Worker filtering nâng cao (filter phức tạp hơn theo nhiều tag/attribute kết hợp, ưu tiên worker theo latency), HCP deployment model (control plane managed, chỉ cần vận hành private worker), DR automation (backup/restore tự động, không cần tự script). Giúp ra quyết định đúng giữa OSS/Enterprise/HCP theo nhu cầu tổ chức.
Ngày 44: Troubleshooting - Common Error Messages
Mục tiêu: Debug nhanh các lỗi thường gặp.
Nội dung:
Lý thuyết: Lỗi permission denied (grant sai), worker không reachable (network/firewall/PKI registration), session bị treo (credential store lỗi kết nối Vault), lỗi API do version mismatch.
Thực hành: Cố tình gây 2-3 lỗi và tự debug bằng log + tài liệu "Common error messages", đối chiếu với Session Authorization Flow (Ngày 16) để xác định lỗi rơi vào mắt xích nào.
Ngày 45: Ôn tập Tuần 6
- Mini-Project: Runbook upgrade cụm 2-controller không downtime + quy trình backup/restore đã test + checklist xử lý 3 lỗi thường gặp nhất.
TUẦN 7 - Automation & Ecosystem
Ngày 46: Terraform Boundary Provider
Mục tiêu: IaC hoá toàn bộ cấu hình Boundary.
Nội dung:
Lý thuyết: Terraform provider quản lý hầu hết resource domain model - version control cấu hình IAM/access thay vì click tay.
Thực hành: Viết Terraform apply toàn bộ setup từ Ngày 9 bằng code.
Ngày 47: CLI, API & Go SDK Automation
Mục tiêu: Tự động hoá vượt ra ngoài Terraform cho tác vụ vận hành/runtime.
Nội dung:
Lý thuyết: HTTP API cho phép build tool nội bộ (tự cấp quyền tạm thời khi incident, tự cancel session khi phát hiện bất thường); Go SDK khi cần tích hợp sâu vào hệ thống Go nội bộ.
Thực hành: Viết script gọi API tạo role tạm thời, gán quyền, tự thu hồi sau X phút - mô phỏng just-in-time access elevation.
Ngày 48: CI/CD Integration Patterns
Mục tiêu: Đưa Boundary vào pipeline tự động.
Nội dung: Thực hành: Pipeline CI/CD dùng Boundary connect tới môi trường private khi cần migration/deploy, request session ngắn hạn qua CLI/API trong job, tự hết hạn sau khi job xong.
Ngày 49: Ôn tập Tuần 7
- Mini-Project: Toàn bộ hạ tầng Boundary quản lý bằng Terraform trong 1 repo, kèm 1 script just-in-time access elevation qua API.
TUẦN 8 - Capstone
Ngày 50: Capstone Project - Triển khai Boundary Production hoàn chỉnh
Yêu cầu:
Kiến trúc HA: 2+ controller sau load balancer, Postgres HA (có connection pooling), worker triển khai theo tối thiểu 2 network zone với ít nhất 1 chuỗi multi-hop.
IAM đầy đủ: cây scope, SSO qua OIDC với 1 IDP thực, managed group tự động cấp quyền theo team.
Access resources: dynamic host catalog cloud, target đa giao thức (SSH + database + Kubernetes), ít nhất 1 target address-based.
Credential: Vault credential store với dynamic secret + injection cho true passwordless.
Bảo mật: TLS toàn bộ, KMS ngoài, worker PKI-based auth.
Giám sát & Compliance: audit logging + event streaming ra hệ thống ngoài; mapping tính năng đã dùng vào ít nhất 1 khung compliance (SOC2/PCI-DSS/ISO27001); (nếu có tier) session recording cho 1 target nhạy cảm.
Vận hành: runbook upgrade không downtime, backup/restore Postgres đã test, bản sizing ước lượng cho quy mô mục tiêu (vd 2,000 user).
Automation: toàn bộ cấu hình bằng Terraform, có script just-in-time access elevation qua API.
Internals: tài liệu hoá Session Authorization Flow của chính hệ thống capstone (sơ đồ tự vẽ, không copy lý thuyết), kèm ghi chú đã đọc qua source
internal/iam,internal/session.Troubleshooting: tài liệu hoá 3 sự cố phổ biến nhất đã tự tạo và tự xử lý được.