Làm cách nào để quản lý bí mật bằng AWS Secrets Manager và RDS?

Lam Cach Nao De Quan Ly Bi Mat Bang Aws Secrets Manager Va Rds



Cơ sở dữ liệu quan hệ Amazon là một trong những dịch vụ cơ sở dữ liệu quan hệ dễ dàng và đơn giản hơn để vận hành và chạy các truy vấn phức tạp. Tuân theo cú pháp của truy vấn SQL, dịch vụ này của AWS nhanh hơn cơ sở dữ liệu truyền thống và tự động điều chỉnh quy mô cơ sở dữ liệu dựa trên yêu cầu của ứng dụng. Với AWS RDS, nó loại bỏ nhu cầu thiết lập tùy chỉnh phần cứng hoặc tạo cấu hình cho phần mềm để chạy truy vấn.

Bài viết này trình bày cách quản lý bí mật bằng AWS Secrets Manager và RDS.

Người quản lý bí mật là gì?

Các mối đe dọa bảo mật và mối lo ngại về quyền riêng tư cũng đã được các chuyên gia và người dân trên toàn cầu nêu ra. Để bảo vệ các bí mật kỹ thuật số của bạn như thông tin xác thực cơ sở dữ liệu, API và mã thông báo, AWS Secret Manager là công cụ cần thiết cho mục đích này.







AWS Secret Manager giúp các công ty và tổ chức bảo vệ tài nguyên và dịch vụ của họ khỏi các ý đồ xấu và các cuộc tấn công mạng nhằm chiếm đoạt hoặc đánh cắp dữ liệu nhạy cảm. Dịch vụ này bổ sung thêm một lớp bảo mật cho tài nguyên và cho phép bạn dễ dàng mở rộng quy mô và quản lý các bí mật.



Làm cách nào để quản lý bí mật bằng AWS Secret Manager và RDS?

Bất cứ khi nào người dùng định cấu hình cụm RDS, nó sẽ yêu cầu thông tin về vùng, tên người dùng và mật khẩu của cụm và xác định nó bằng cách sử dụng mã định danh duy nhất của cụm. Việc tích hợp RDS với Trình quản lý bí mật sẽ cho phép bạn bảo vệ thông tin xác thực RDS của mình và quản lý chúng một cách phù hợp.



Bằng cách sử dụng Trình quản lý bí mật, bạn có thể xác định vòng đời của những bí mật này và tích hợp chúng với các tài nguyên khác. Ở đây trong bài viết này, chúng tôi sẽ thêm AWS Secret Manager có chức năng Lambda vào cụm RDS của chúng tôi.





Dưới đây là một số bước cho mục đích này:

Bước 1: Tạo cụm RDS

Trình quản lý bí mật được sử dụng rộng rãi để bảo vệ thông tin xác thực Cơ sở dữ liệu. Vì vậy, bước đầu tiên là tạo cụm RDS. Vì mục đích này, hãy tham khảo bài viết này: “ Làm cách nào để tạo cụm RDS trên AWS? ”. Chúng tôi có cụm RDS đang hoạt động:



Bước 2: Trình quản lý bí mật của AWS

Trên Bảng điều khiển quản lý AWS, tìm kiếm và chọn “ Người quản lý bí mật ”:

Trên giao diện Secret Manager nhấn chọn vào “Lưu trữ một bí mật mới” cái nút:

bên trong Loại bí mật , chọn “Thông tin xác thực cho cơ sở dữ liệu Amazon RDS” tùy chọn khi chúng tôi đang định cấu hình nó cho RDS:

Tiếp theo là Thông tin xác thực phần. Trong phần này, cung cấp tên tài khoản Mật khẩu đối với cơ sở dữ liệu RDS mà chúng tôi vừa tạo:

bên trong Khóa mã hóa phần này, người dùng có thể sử dụng phần mặc định do AWS Secret Manager cung cấp hoặc tạo một phần mới bằng cách nhấp vào “Thêm khóa mới” lựa chọn. Tương tự, trong Cơ sở dữ liệu phần, chọn “Phiên bản cơ sở dữ liệu” mà bạn đã tạo và nhấn vào 'Kế tiếp' cái nút:

Cung cấp một tên duy nhất cho 'Bí mật' điều đó sẽ giúp chúng ta xác định nó sau này. Mô tả là tùy chọn. Tuy nhiên, người dùng cũng có thể cung cấp mô tả tùy chỉnh tại đây:

Trên giao diện , Người quản lý bí mật cũng cung cấp cho chúng tôi cơ sở để tái tạo bí mật. Đối với điều này, hãy chọn vùng mà bạn muốn tạo bản sao. Trong bản demo này, chúng tôi không yêu cầu bất kỳ bản sao nào, do đó, bằng cách giữ phần còn lại của cài đặt làm mặc định, hãy nhấn vào 'Kế tiếp' cái nút:

Giữ nguyên mặc định, bây giờ chúng ta xem xét và chỉnh sửa thông tin. Sau khi xác nhận thông tin được cung cấp, hãy nhấp vào 'Cửa hàng' nút để tạo và lưu trữ bí mật:

Ở đây, bí mật là thành công trong việc tạo ra . Bấm vào “ Tên bí mật ” để xem cấu hình của nó:

Kéo xuống giao diện chúng ta sẽ có phần Mã mẫu. Trong phần này, một mã được tạo bởi Người quản lý bí mật. Sao chép mã này vì nó sẽ được sử dụng trong Hàm Lambda:

// Sử dụng đoạn mã này TRONG ứng dụng của bạn.
// Nếu bạn cần hơn thông tin về cấu hình hoặc triển khai mã mẫu, hãy truy cập tài liệu AWS:
// https: // docs.aws.amazon.com / sdk-cho-javascript / v3 / hướng dẫn phát triển / bắt đầu.html

nhập khẩu {
SecretsManagerClient,
GetSecretValueCommand,
} từ '@aws-sdk/client-secrets-manager' ;

const secret_name = 'mysecret1/sh' ;

const client = SecretsManagerClient mới ( {
vùng đất: 'ap-đông nam-1' ,
} ) ;

cho phép phản ứng;

thử {
phản hồi = đang chờ client.send (
GetSecretValueCommand mới ( {
ID bí mật: secret_name,
Phiên bảnGiai đoạn: 'TUYỆT VỜI' , // VersionStage mặc định là AWSCURRENT nếu như không xác định
} )
) ;
} nắm lấy ( lỗi ) {
// Để biết danh sách các trường hợp ngoại lệ được đưa ra, hãy xem
// https: // docs.aws.amazon.com / người quản lý bí mật / muộn nhất / lời xin lỗi /
API_GetSecretValue.html
lỗi ném;
}

const secret = reply.SecretString;

// Mã của bạn ở đây

Bước 3: Tạo hàm Lambda

Trên giao diện Hàm Lambda, nhấp vào “ Tạo một chức năng ' cái nút:

Bấm vào “Tác giả từ đầu” tùy chọn từ “Tạo một chức năng” giao diện:

Tiếp theo chúng ta tiến tới 'Thông tin cơ bản' phần. Cung cấp tên hàm trong 'Tên chức năng' trường và sau đó cung cấp “Thời gian chạy” môi trường. Ở đây chúng tôi đã chọn “Node.js 16. x” trong trường Thời gian chạy:

Bấm vào “Tạo chức năng” cái nút:

Ở đây, chúng tôi đã dán mã được tạo bởi Người quản lý bí mật . Sau khi dán mã xong bấm vào 'Triển khai' cái nút:

Sau khi triển khai tất cả các thay đổi, nhấp vào 'Cấu hình' tab để cấp quyền cho Người quản lý bí mật:

Bấm vào “Quyền” tùy chọn từ “Cấu hình” chuyển hướng. Điều này sẽ hiển thị “ Vai trò thực thi” giao diện và nhấp vào liên kết sau dưới “Tên vai trò” cánh đồng:

bên trong “Chính sách cấp phép” phần, bấm vào “Thêm quyền” cái nút. Từ trình đơn thả xuống, nhấp vào “Đính kèm chính sách” lựa chọn:

bên trong “Các chính sách quyền khác” phần, tìm kiếm và chọn “SecretManagerReadWrite” lựa chọn. Nhấn vào “Thêm quyền” cái nút:

Ở đây chính sách đã được đính kèm và cấu hình thành công:

Bước 4: Xác minh quyền truy cập bí mật

Bây giờ hãy chuyển đến Giao diện bảng điều khiển Lambda. Bấm vào 'Bài kiểm tra' chuyển hướng:

Trên giao diện tiếp theo, cung cấp tên cho sự kiện thử nghiệm trong phần “Tên sự kiện” cánh đồng. Bấm vào 'Cứu' nút để áp dụng cấu hình:

Đến đây thử nghiệm đã được cấu hình thành công. Bấm vào 'Bài kiểm tra' cái nút:

Ở đây chúng ta sẽ bấm vào 'Bài kiểm tra' một lần nữa và nó sẽ hiển thị đầu ra sau:

Đó là tất cả từ hướng dẫn này.

Phần kết luận

Để quản lý bí mật trong Trình quản lý bí mật, hãy tạo cụm RDS, đính kèm cụm đó vào Trình quản lý bí mật rồi thực thi mã đó trong Hàm Lambda đã định cấu hình. Hàm Lambda sẽ xác định xem bí mật có thể được truy cập hay không bằng cách thực thi mã chứa thông số kỹ thuật của cụm RDS trong đó. Bài viết này là hướng dẫn từng bước để quản lý bí mật bằng AWS Secret Manager và RDS.