2015-09-16 16 views
5

Tôi có một ngăn xếp tạo ứng dụng ba cấp. Tôi muốn bảo vệ ngăn xếp của mình khỏi tình cờ xóa. Có cách nào để bảo vệ ngăn xếp CloudFormation AWS không?Làm thế nào để bảo vệ ngăn xếp đám mây AWS khỏi xóa?

Ngoài ra tôi muốn biết làm thế nào, ngay cả khi ngăn xếp của tôi bị xóa, cách tôi có thể dừng tài nguyên được liên kết với ngăn xếp bị xóa.

Trả lời

5

Có một số cách để bảo vệ tài nguyên được tạo bởi AWS CloudFormation.

Protect Stack

AWS CloudFormation mất một mẫu mô tả các nguồn lực mong muốn và triển khai nó như là một chồng tài nguyên. Khi một ngăn xếp bị xóa, các tài nguyên cũng sẽ bị xóa.

Do đó, phương pháp đầu tiên là kiểm soát người dùng nào có quyền xóa chồng. Điều này có thể được chỉ định qua Quản lý nhận dạng và truy cập (IAM).

Dưới đây là một ví dụ từ các tài liệu Controlling Access with AWS Identity and Access Management:

Một chính sách mẫu mà phủ nhận những hành động ngăn xếp xóa và cập nhật cho MyProductionStack:

{ 
    "Version":"2012-10-17", 
    "Statement":[{ 
     "Effect":"Deny", 
     "Action":[ 
      "cloudformation:DeleteStack", 
      "cloudformation:UpdateStack" 
     ], 
     "Resource":"arn:aws:cloudformation:us-east-1:123456789012:stack/MyProductionStack/*" 
    }] 
} 

Một chính sách cũng có thể require use of a Multi-factor Authentication (MFA) code trước khi thực hiện các hoạt động nhạy cảm, chẳng hạn như xóa một chồng.

Bảo vệ Tài nguyên

Tài tạo ra bởi CloudFormation vẫn có thể bị xóa/sửa đổi bởi bất kỳ người sử dụng với sự cho phép thích hợp. Do đó, điều quan trọng là bạn bảo vệ các tài nguyên quan trọng khỏi bị ảnh hưởng bởi người dùng trái phép. AWS khuyên bạn nên cấp đặc quyền tối thiểu để người dùng chỉ có quyền kiểm soát tài nguyên mà họ yêu cầu và không còn nữa.

Policy CloudFormation Xóa

Một chính sách xóa định nghĩa nguồn lực mà nên không bị xóa khi một chồng sẽ bị xóa.

Từ CloudFormation documentation:

Với DeletionPolicy thuộc tính bạn có thể duy trì hoặc (trong một số trường hợp) sao lưu một tài nguyên khi stack của nó sẽ bị xóa. Bạn chỉ định thuộc tính DeletionPolicy cho mỗi tài nguyên mà bạn muốn kiểm soát. Nếu tài nguyên không có thuộc tính DeletionPolicy, AWS CloudFormation sẽ xóa tài nguyên theo mặc định.

Để giữ tài nguyên khi ngăn xếp của tài khoản bị xóa, hãy chỉ định Retain cho tài nguyên đó. Bạn có thể sử dụng giữ lại cho bất kỳ tài nguyên nào. Ví dụ, bạn có thể giữ lại một thùng chứa Amazon S3 hoặc một cá thể Amazon EC2 để bạn có thể tiếp tục sử dụng hoặc sửa đổi các tài nguyên đó sau khi bạn xóa các ngăn xếp của chúng.

Điều này thường được sử dụng để giữ tài nguyên sau khi xóa theo chủ ý. Ví dụ, giữ lại một thùng chứa Amazon S3 hoặc một cơ sở dữ liệu Amazon RDS. Tuy nhiên, nó cũng có thể được sử dụng để bảo tồn tài nguyên ngay cả một ngăn xếp vô tình bị xóa.

Các vấn đề liên quan