Giới thiệu về bảo mật AWS

Sử dụng AWS Security dành cho Developer

Rahul Singh

Technical Product Manager

Yêu cầu đầu vào của khóa học

 

  • Kiến thức cơ bản về bảo mật AWS
  • Hiểu các khái niệm điện toán đám mây
  • Khái niệm về AWS Security và Quản lý chi phí

 

 

Thẻ tiêu đề khóa học AWS Security and Cost Management Concepts

Sử dụng AWS Security dành cho Developer

Mục tiêu khóa học

 

  1. Identity: ai đang gọi
  2. Authorization: họ được phép truy cập gì
  3. Secrets và mã hóa: bảo vệ dữ liệu
  4. Evidence: điều gì đã xảy ra, về sau

Bốn dải được đánh số xếp dọc, mỗi dải cho một mảng khóa học. Dải một, Identity, Chương 1. Dải hai, Authorization, Chương 2. Dải ba, Secrets and encryption, Chương 2 và 3. Dải bốn, Evidence, Chương 3. Mũi tên cam bên trái, ghi this video, chỉ vào dải một.

Sử dụng AWS Security dành cho Developer

Mã của bạn được chuyển qua pipeline

Luồng trái sang phải. Bước 1: hộp Your pipeline với ba giai đoạn: Build, Test, Deploy. Bước 2: mũi tên git push từ hộp You. Bước 3: huy hiệu cam bên dưới pipeline, nhãn its own identity. Mũi tên tiếp sang hộp AWS.

Trước hết, một thuật ngữ

  • Pipeline là tự động hóa để build, test và deploy mã của bạn
  • Nó chạy khi bạn push, không có người can thiệp
Sử dụng AWS Security dành cho Developer

Một lần deploy thất bại vì sai lý do

Khi mã thay đổi, thực ra đang kiểm tra quyền của ai?
  1. Bạn push thay đổi

Bước một của luồng dọc. Hộp You, đang push thay đổi mã.

Sử dụng AWS Security dành cho Developer

Một lần deploy thất bại vì sai lý do

Khi mã thay đổi, thực ra đang kiểm tra quyền của ai?
  1. Bạn push thay đổi

  2. Pipeline của bạn chạy

Luồng dọc. Bước một, You, push thay đổi mã. Mũi tên xuống bước hai, pipeline của bạn chạy deploy.

Sử dụng AWS Security dành cho Developer

Một lần deploy thất bại vì sai lý do

Khi mã thay đổi, thực ra đang kiểm tra quyền của ai?
  1. Bạn push thay đổi

  2. Pipeline của bạn chạy

  3. Deploy dừng: AccessDenied

Phản xạ đầu tiên: "Để mình kiểm tra quyền của chính mình."

Luồng dọc. Bước một, You, push thay đổi mã. Bước hai, pipeline chạy deploy. Bước ba, AWS đánh giá yêu cầu và trả về AccessDenied.

Sử dụng AWS Security dành cho Developer

Thực ra chuyện gì đã xảy ra

Bước một của luồng trái sang phải. Hộp You, và bạn kết thúc vai trò tại đây.

  1. Bạn push. Vai trò của bạn kết thúc tại đây
Sử dụng AWS Security dành cho Developer

Thực ra chuyện gì đã xảy ra

Luồng trái sang phải. Hộp You, mũi tên đến hộp Your pipeline. Huy hiệu deploy-role treo dưới pipeline.

  1. Bạn push. Vai trò của bạn kết thúc tại đây
  2. Pipeline deploy, chạy với một role do nhóm bạn tạo
Sử dụng AWS Security dành cho Developer

Thực ra chuyện gì đã xảy ra

Luồng trái sang phải từ You, tới Your pipeline, tới AWS. Huy hiệu deploy-role dưới pipeline, và mũi tên đứt đoạn nhãn checks từ AWS quay về huy hiệu đó thay vì về You.

  1. Bạn push. Vai trò của bạn kết thúc tại đây
  2. Pipeline deploy, chạy với một role do nhóm bạn tạo
  3. AWS đánh giá role đó
Sử dụng AWS Security dành cho Developer

Actor và principal

Actor

Người khởi động công việc.

Ở đây: bạn.

Biểu tượng người đại diện cho actor khởi động công việc.

Sử dụng AWS Security dành cho Developer

Actor và principal

Actor

Người khởi động công việc.

Ở đây: bạn.

Principal

Danh tính mà AWS đánh giá khi yêu cầu tới.

Ở đây: role của pipeline.

Biểu tượng người đại diện cho actor khởi động công việc.

Biểu tượng đại diện cho principal.

Sử dụng AWS Security dành cho Developer

Actor và principal

Actor

Người khởi động công việc.

Ở đây: bạn.

Principal

Danh tính mà AWS đánh giá khi yêu cầu tới.

Ở đây: role của pipeline.

  • Lambda: execution role. ECS: task role. Tên khác, cùng principal
  • Ngoại lệ: một khóa sống lâu trong terminal của bạn, nên IAM user là principal

Biểu tượng người đại diện cho actor khởi động công việc.

Biểu tượng cho thấy AWS kiểm tra principal chứ không phải actor.

Sử dụng AWS Security dành cho Developer

Cùng một deploy, hai role

Role A (Dáng dấp của AdministratorAccess)

  • Đọc mọi bucket
  • Dùng mọi key
  • Cập nhật mọi function

Role B

  • Đọc một bucket
  • Dùng một key
  • Cập nhật một function

Prefix: đường dẫn kiểu thư mục bên trong bucket

Hình ảnh cho thấy một role toàn quyền truy cập sáu policy khác nhau.

Hình ảnh cho thấy một role hẹp chỉ truy cập một policy.

Sử dụng AWS Security dành cho Developer

Bán kính ảnh hưởng

Role rộng

Nếu bị xâm phạm: chạm tới mọi bucket, prefix và object trong tài khoản.

Role hẹp

Nếu bị xâm phạm: chỉ chạm một prefix trong một bucket. Không gì hơn.

Vòng đồng tâm minh họa role rộng chạm tới mọi phần trong cả tài khoản.

Vòng đồng tâm minh họa role hẹp chỉ chạm tới vòng trong cùng (object và prefix), phần khác không bị ảnh hưởng.

Sử dụng AWS Security dành cho Developer

Nguyên tắc đặc quyền tối thiểu, áp dụng thực tế

Một role chỉ nên làm đúng phần việc của nó, và rất ít ngoài ra.

  • AWS managed, như AmazonS3ReadOnlyAccess: mọi bucket. Customer managed: của bạn, tới mức một prefix
  • Phạm vi và thời hạn: ưu tiên thông tin xác thực ngắn hạn hơn khóa dài hạn
  • AWS bảo mật hạ tầng
  • Độ rộng role là do bạn quyết định, được lưu trong repository của bạn

Ví dụ: role đọc reports-bucket Hai quyền allow. Không cấp gì khác.

  • Không có gì trên IAM, dịch vụ quyết định ai được làm gì

Danh sách quyền của một role với ba quyền dư bị gạch đỏ và hai quyền cần thiết giữ màu xanh.

Sử dụng AWS Security dành cho Developer

Cùng luyện tập nào!

Sử dụng AWS Security dành cho Developer

Preparing Video For Download...