Blog
Thoughts on engineering, design, and building great products.
Bảo Mật: IAM Least-Privilege, Throttling và WAF
Siết bảo mật cho sản phẩm. Thu quyền IAM của từng hàm về đúng hành động nó cần thay vì cấp cả bộ đọc-ghi, đặt throttle ở API Gateway để chống lạm dụng, bàn về nơi cất bí mật, và cách gắn WAF cho một HTTP API. Kiểm rằng least-privilege không làm hỏng chức năng, và quan sát hệ thống tự gạt tải khi bị dội.
Multi-Tenant: Mỗi Người Một Vùng Dữ Liệu, và Chặn IDOR
Biến URL shortener thành multi-tenant đúng nghĩa. Thêm route liệt kê link giới hạn theo danh tính trong token, và route xóa link kiểm quyền sở hữu ngay trong thao tác ghi để một người không xóa được link của người khác kể cả khi đoán đúng mã. Test với hai người dùng thật để thấy ranh giới giữ vững.
Cognito và JWT Authorizer: Chỉ Người Đăng Nhập Mới Tạo Được Link
Thêm người dùng thật bằng Amazon Cognito. Dựng user pool phát JWT, gắn JWT authorizer của HTTP API để bảo vệ route tạo link trong khi route mở link vẫn công khai, và cho handler đọc danh tính người dùng từ claim trong token thay vì gán cứng. Tạo user thật, lấy token thật, gọi API có và không có token để thấy ranh giới.