Phương pháp hay nhất cho các tài nguyên AWS như EC2/Lambda/etc là sử dụng các vai trò IAM, chi tiết đây. Nói tóm lại, bạn không tạo người dùng cho máy chủ, bạn tạo một vai trò mà dịch vụ có thể cho rằng có một tập hợp các quyền được liên kết với máy chủ EC2.
Máy chủ có vai trò đó được cung cấp thông tin xác thực "tạm thời" khi nó đang chạy để có thể truy cập vào bất kỳ dịch vụ nào mà vai trò IAM cho phép. Khi tôi nói "tạm thời", thông tin đăng nhập cung cấp cho dịch vụ chỉ tồn tại trong thời gian ngắn, có thể là 24 giờ, nhưng khi chúng hết hạn, thông tin đăng nhập mới sẽ được cấp. Điều này thường rõ ràng, trừ khi bạn đang viết phần mềm sử dụng chúng, trong trường hợp đó bạn phải thỉnh thoảng kiểm tra chúng. Tôi có thể không có các chi tiết tốt ở đó, nhưng nó ít nhiều đúng.
AWS có các chính sách được xác định trước có thể giúp xác định vai trò dễ dàng hơn.
Ví dụ: bạn có thể xác định vai trò có nội dung "Máy chủ EC2 có vai trò này có thể chuyển sang SQS, kéo từ SQS, thực thi một chức năng lambda này" và mọi thứ không được cấp rõ ràng đều bị từ chối. Đôi khi, phải thử nghiệm một chút để có được các quyền mà bạn cần. Đặc quyền tối thiểu là tốt nhất để nếu một tài nguyên như máy chủ EC2 bị xâm phạm thì tài nguyên đó không có quyền quản trị đối với AWS và không thể xóa mọi thứ hoặc bắt đầu khai thác tiền điện tử.
Nếu bạn đang làm việc trong một công ty lớn làm công việc AWS, tôi khuyên bạn nên tham gia một số khóa đào tạo về AWS. Đào tạo trực tuyến cho AWS Architect Associate với một nơi như Cloud Guru là điều tối thiểu bạn cần. AWS rất phức tạp. Tôi đã làm việc toàn thời gian ở AWS trong nhiều năm, nhưng tôi học được điều gì đó mới mỗi ngày.