AWS Systems Manager Parameter Store là gì?

Parameter Store là một tính năng của AWS Systems Manager. Đó là một kho lưu trữ phân cấp an toàn cho việc quản lý dữ liệu cấu hình và bảo mật.

Các giá trị có thể lưu trữ bao gồm:

・Password

・Database string

・AMI ID

・License code

Sự khác biệt của các Parameter

Parameter Store bao gồm hai loại parameters là standard parameters và advanced parameters. Standard parameters là thông số mặc định.

standardadvanced
Tổng số Parameter10,000 100,000
Kích thước tối đa củaparameter value4K8K
Parameter policynot availableAvailable
Phí sử dụng Miễn phíCó phí phụ thu

Nội dung cập nhật

Trước đây, để chia sẻ Parameter Store với các tài khoản AWS khác, cần sử dụng API PutResourcePolicy. Với cập nhật này, bạn có thể chia sẻ các advanced parameters với các tài khoản AWS khác và quản lý dữ liệu cấu hình một cách tập trung, và có thể sử dụng thêm AWS Resource Access Manager (RAM) cho việc quản lý tập trung này.

Cách sử dụng Parameter Store

Điều kiện để có thể sử dụng Parameter Store

– Để chia sẻ Parameter, Parameter phải nằm trong tài khoản AWS. Không thể chia sẻ Parameter được chia sẻ từ tài khoản khác. 

– Để chia sẻ Parameter, Parameter phải nằm tại lớp advanced parameter.

– Để chia sẻ SecureString parameter, bắt buộc phải mã hóa với key quản lý của khách hàng, vì thế cần sử dụng KMS.

– Để chia sẻ Parameter với tổ chức hoặc đơn vị tổ chức của AWS Organizations, cần kích hoạt tính năng chia sẻ với AWS Organizations.

Hình ảnh chia sẻ Parameter Store

Đây là hình ảnh minh họa chia sẻ Parameter Store qua nhiều tài khoản. Để chia sẻ Parameter, cần thêm Parameter  đó vào RAM. Bạn có thể chia sẻ Parameter bạn sở hữu cho các tài khoản khác qua AWS RAM Console hoặc AWS CLI.

Thử nghiệm

Trước tiên tạo một khóa được quản lý bởi khách hàng (customer managed key) trong KMS.

Tạo một Parameter mới từ Parameter Store. Chú ý : chỉ có thể chia sẻ advanced parameter. 

Chọn khóa KMS đã tạo từ trước.

Do không thể chỉ định dấu gạch chéo “/” ở cuối chuỗi tên của parameter, nên cần thay đổi khi tạo.

IMG_256

Bạn có thể tuỳ ý chỉ định thời hạn có hiệu lực cho Parameter. Ở đây đã chỉ định là ngày hôm sau.

IMG_256

Parameter đã được tạo thành công.

IMG_256

Kiểm tra tab “Chia sẻ” để chia sẻ key vừa tạo với các tài khoản khác.

IMG_256

Vì việc thiết lập chia sẻ KMS chưa được thực hiện, nên ở đây sẽ thiết lập cho phép chia sẻ với tài khoản cụ thể từ phía KMS. Sau đó, tiến hành chia sẻ qua RAM.

IMG_256

Ở đây đã thực hiện chia sẻ với các tài khoản được chỉ định cụ thể.

IMG_256

Kiểm tra tài khoản được chia sẻ. Kiểm tra RAM. Bạn có thể xác nhận rằng có một tài nguyên đã được chia sẻ với bạn. Nhấp vào “Chấp nhận Chia sẻ Tài nguyên” và hoàn thành.

IMG_256

Khi bạn chấp nhận lời mời, bạn có thể truy cập vào tài nguyên.

IMG_256

Khi xoá khỏi phần chia sẻ sẽ xuất hiện lỗi

IMG_256

Tiến hành xoá trên tài khoản đã chia sẻ

IMG_256

Đây là những nội dung hỗ trợ cho việc truy cập vào Parameter đã chia sẻ.

・Dynamic references in CloudFormation

・CloudFormation template parameters

・AWS Parameters and Secrets Lambda Extension

・Template khởi động của EC2

・Giá trị ImageID trong lệnh EC2 RunInstances để tạo ra một instance từ AMI

・Parameters in Systems Manager Run Command

・Việc lấy giá trị Parameter trong Runbook của Systems Manager Automation

Chi phí của Parameter Store

accountNumber of callsChi phí
Account A (nguồn chia sẻ)10,000 callsadvanced parameter: USD 0.0510,000 calls to MyAdvancedParameter: USD 0.05Total: USD 0.10
Account B(nguồn chia sẻ)20,000 calls20,000 calls to MyAdvancedParameter: USD 0.10 Total: USD 0.10
Account C (nguồn chia sẻ)30,000 calls30,000 calls to MyAdvancedParameter: USD 0.15 Total: USD 0.15

Tham khảo: 【アップデート】AWS Systems Manager パラメータストアがクロスアカウントをサポートしました | SunnyCloud