AWS Secrets Manager và Parameter Store

Sử dụng Kho dữ liệu trong AWS

Dunieski Otano

AWS Solutions Architect

Thảm họa hardcode mật khẩu

  • Dev hardcode mật khẩu DB trong mã
  • Mã đẩy lên GitHub công khai
  • Kẻ tấn công tìm thấy trong 12 phút
  • DB bị xóa, bị đòi tiền chuộc

tấn công

Sử dụng Kho dữ liệu trong AWS

Vì sao không bao giờ hardcode bí mật

  • Lỗi thường gặp
    • Hardcode trong mã nguồn
    • Văn bản thuần trong file cấu hình
    • Commit vào hệ thống quản lý phiên bản
  • Hệ quả
    • Lộ lọt trên repo công khai
    • Khó xoay vòng
    • Thiếu nhật ký kiểm toán

không nên

Sử dụng Kho dữ liệu trong AWS

Tổng quan AWS Secrets Manager

  • Mục đích
    • Lưu và xoay vòng thông tin xác thực tự động
  • Lưu những gì
    • Mật khẩu DB, khóa API, token OAuth
  • Tính năng chính
    • Xoay vòng tự động, mã hóa KMS, ghi nhật ký kiểm toán

sm

Sử dụng Kho dữ liệu trong AWS

Tự động xoay vòng trong Secrets Manager

  • Quy trình xoay vòng
    • Lambda cập nhật thông tin xác thực
  • Cửa sổ xoay vòng
    • Thiết lập thời điểm xoay (rate hoặc cron)
  • Không gián đoạn
    • Mật khẩu cũ và mới đều dùng được trong lúc xoay vòng

xoay vòng

Sử dụng Kho dữ liệu trong AWS

Lưu bí mật ở dạng JSON

  • Bí mật có cấu trúc
    • Lưu nhiều giá trị trong một secret
  • Định dạng JSON
    • {"username": "admin", "password": "...", "host": "db.example.com"}
  • Truy xuất và phân tích
    • Dùng API GetSecretValue

lấy

Sử dụng Kho dữ liệu trong AWS

Tổng quan Parameter Store

  • Thuộc AWS Systems Manager
  • Mục đích
    • Lưu cấu hình và bí mật tĩnh
  • Tổ chức phân cấp
    • /app/prod/db/password
    • /app/dev/api-key
  • Miễn phí
    • Tối đa 10.000 tham số chuẩn (tối đa 4 KB)
    • Tham số nâng cao (tối đa 8 KB) tính phí

ps

Sử dụng Kho dữ liệu trong AWS

Các loại tham số của Parameter Store

  • String
    • Văn bản thuần (cờ tính năng, endpoint)
  • StringList
    • Danh sách phân tách bằng dấu phẩy (địa chỉ IP)
  • SecureString
    • Mã hóa bằng KMS (mật khẩu, khóa API)

loại

Sử dụng Kho dữ liệu trong AWS

Hướng dẫn chọn: Secrets Manager vs Parameter Store

  • Dùng Secrets Manager khi
    • Cần xoay vòng tự động
    • Lưu thông tin đăng nhập DB
  • Dùng Parameter Store khi
    • Giá trị cấu hình tĩnh
    • Nhạy chi phí (tầng miễn phí)
  • Dùng kết hợp
    • Mẫu phổ biến trong production

nâng cao

Sử dụng Kho dữ liệu trong AWS

Ayo berlatih!

Sử dụng Kho dữ liệu trong AWS

Preparing Video For Download...