Là một công cụ cộng tác để thiết kế API, tài liệu, gỡ lỗi, giả lập và kiểm thử, Apidog có một tính năng được đánh giá cao: hỗ trợ các thao tác cơ sở dữ liệu khi gửi/nhận yêu cầu. Tính năng này tạo điều kiện thuận lợi cho những người dùng cần chuẩn bị dữ liệu yêu cầu khi gọi một endpoint hoặc chèn dữ liệu vào cơ sở dữ liệu khi nhận được phản hồi, khiến nó trở thành một tính năng được người dùng yêu thích.
Tuy nhiên, do nhiều người dùng sử dụng rộng rãi tính năng này hàng ngày, một số điểm cần cải thiện đã được xác định. Một trong những điểm được nêu ra thường xuyên nhất là:
Cấu hình kết nối cơ sở dữ liệu có thể được quản trị viên nhóm thiết lập và sau đó được các thành viên khác trong nhóm sử dụng cộng tác không? Thật rắc rối khi mọi người phải nhập lại chi tiết kết nối.
Ngay từ thiết kế ban đầu của tính năng này, chúng tôi đã xem xét liệu có nên cho phép cấu hình cơ sở dữ liệu được sử dụng cộng tác hay không. Tuy nhiên, việc cho phép người dùng lưu thông tin nhạy cảm như tên người dùng và mật khẩu cơ sở dữ liệu trên máy chủ đám mây là một vấn đề cần được xem xét cẩn thận. Do đó, bảo mật dữ liệu là lý do cốt lõi khiến việc sử dụng cộng tác cấu hình kết nối cơ sở dữ liệu không được triển khai vào thời điểm đó.
Ngày nay, Apidog đã trở thành công cụ quản lý và cộng tác API chính cho hàng triệu nhà phát triển, và các khả năng nền tảng của Apidog đã trở nên mạnh mẽ hơn. Do đó, chúng tôi đã xem xét lại yêu cầu tối ưu hóa này đối với việc sử dụng cộng tác cấu hình kết nối cơ sở dữ liệu, nỗ lực cân bằng giữa bảo mật dữ liệu và hiệu quả phát triển để làm hài lòng người dùng của chúng tôi.
Lưu trữ cấu hình kết nối cơ sở dữ liệu trên đám mây
Bước 1: Tạo kết nối cơ sở dữ liệu mới
Khi phiên bản Apidog của bạn được cập nhật lên 2.6.50 trở lên, hãy vào "Cài đặt dự án -> Kết nối cơ sở dữ liệu" và nhấp để tạo kết nối cơ sở dữ liệu mới. Bạn sẽ thấy tất cả các trường kết nối hướng dẫn bạn sử dụng biến để điền giá trị trường.

Bước 2: Thiết lập biến trong các môi trường khác nhau
Trong quản lý môi trường, thiết lập các biến cho kết nối cơ sở dữ liệu để sử dụng trong các môi trường khác nhau. Bằng cách này, các biến này có thể được áp dụng trong cấu hình kết nối cơ sở dữ liệu.

Bước 3: Cấu hình kết nối cơ sở dữ liệu bằng biến
Quay lại trang cấu hình kết nối cơ sở dữ liệu, bạn có thể điền thủ công các biến bằng định dạng biến, hoặc trực tiếp tham chiếu các biến này thông qua tính năng giá trị động. Chúng tôi khuyên bạn nên sử dụng biến môi trường ở đây để cấu hình tự động chuyển đổi theo ngữ cảnh của các môi trường khác nhau. Ngoại trừ số cổng, tất cả các trường khác tốt nhất nên được điền bằng biến.

Bước 4: Lưu và sử dụng kết nối cơ sở dữ liệu
Lưu cấu hình kết nối cơ sở dữ liệu sử dụng biến, và nó có thể được sử dụng trong các thao tác cơ sở dữ liệu trong quản lý API, kiểm thử tự động và các lĩnh vực khác.

Khi sử dụng, cơ chế sử dụng thực tế cho cấu hình kết nối cơ sở dữ liệu được lưu cục bộ so với những cấu hình được lưu trên đám mây như sau:
Cấu hình được lưu cục bộ (Không sử dụng biến) | Cấu hình được lưu trên đám mây (Sử dụng biến) |
1. Khi một yêu cầu endpoint kích hoạt một thao tác cơ sở dữ liệu, cấu hình cơ sở dữ liệu được chỉ định sẽ được đọc. | 1. Khi một yêu cầu endpoint kích hoạt một thao tác cơ sở dữ liệu, cấu hình cơ sở dữ liệu được chỉ định sẽ được đọc. |
2. Hệ thống đọc chi tiết cấu hình từ một tệp cục bộ, sử dụng trực tiếp các giá trị thực. | 2. Cấu hình được lấy từ đám mây và chứa các biến. Hệ thống giải quyết các biến này dựa trên tên và độ ưu tiên của chúng. |
3. Các giá trị này (ví dụ: host, tên người dùng, mật khẩu) được sử dụng để xây dựng kết nối cơ sở dữ liệu hoàn chỉnh và khởi tạo kết nối. | 3. Các biến được thay thế bằng giá trị thực của chúng để tạo thành một cấu hình kết nối cơ sở dữ liệu hoàn chỉnh, và kết nối được khởi tạo. |
4. Sau khi kết nối thành công, các câu lệnh SQL được định nghĩa trong thao tác cơ sở dữ liệu sẽ được thực thi, cùng với bất kỳ thao tác nào như lưu kết quả vào biến. | 4. Sau khi kết nối thành công, các câu lệnh SQL được định nghĩa trong thao tác cơ sở dữ liệu sẽ được thực thi, cùng với bất kỳ thao tác nào như lưu kết quả vào biến. |
MẸO CHUYÊN NGHIỆP: Đối với các thành viên dự án khác cần sử dụng cấu hình kết nối cơ sở dữ liệu này, giờ đây họ chỉ cần vào quản lý môi trường, tìm các biến tương ứng và điền giá trị cục bộ, mà không cần phải cấu hình trong quản lý dự án như trước đây.
Đây là các bước chi tiết để cấu hình kết nối cơ sở dữ liệu đám mây. Vì việc sử dụng giá trị cục bộ được khuyến nghị, và cấu hình thực tế vẫn được lưu trữ cục bộ, nên không cần lo lắng về rủi ro bảo mật dữ liệu. Các biến chỉ đơn giản làm cho quá trình trở nên thuận tiện và dễ quản lý hơn.
Apidog cũng tiếp tục hỗ trợ nhập trực tiếp các giá trị thực vào cài đặt kết nối cơ sở dữ liệu. Điều này đảm bảo khả năng tương thích với các cấu hình hiện có và hỗ trợ người dùng thích làm việc với dữ liệu cục bộ. Tuy nhiên, một lời nhắc nhở rõ ràng sẽ được hiển thị, khuyến khích người dùng chuyển sang sử dụng biến và lưu chúng lên đám mây để có trải nghiệm tốt hơn và hợp lý hơn.

Lưu ý khi sử dụng kết nối cơ sở dữ liệu đám mây:
Trong cấu hình kết nối cơ sở dữ liệu, khi các biến được sử dụng, thứ thực sự được lưu trên đám mây là tên biến. Khi thực thi các kết nối cơ sở dữ liệu, cấu hình kết nối hoàn chỉnh sẽ được tập hợp theo các quy tắc sử dụng biến để khởi tạo kết nối.
✅ Hành động được khuyến nghị:
- Sử dụng "Giá trị hiện tại" hoặc "Biến Vault" cho các giá trị biến.
- Số cổng có thể được nhập trực tiếp, không cần sử dụng biến, để thuận tiện và không có rủi ro.
❌ Hành động không được khuyến nghị:
- Sử dụng "Giá trị ban đầu" cho các giá trị biến.
- Trộn lẫn văn bản thuần túy và biến, điều này vẫn yêu cầu mọi người cấu hình riêng trong cài đặt dự án.
Sử dụng biến Vault để lưu cấu hình kết nối cơ sở dữ liệu
Đối với cài đặt kết nối cơ sở dữ liệu, chúng tôi khuyên bạn nên sử dụng biến Vault. Các biến này được lấy từ dịch vụ quản lý bí mật bên ngoài và được lưu trữ dưới dạng mã hóa trên máy cục bộ của bạn. Cách tiếp cận này mang lại lợi ích kép—bảo vệ dữ liệu an toàn và cộng tác nhóm hiệu quả thông qua lưu trữ đám mây.
Bước 1: Cấu hình biến Vault
Thiết lập nhà cung cấp Vault và lưu trữ văn bản thuần túy của thông tin đăng nhập kết nối cơ sở dữ liệu vào đó. Đối với cấu hình kết nối cơ sở dữ liệu trong các môi trường khác nhau, bạn cần tạo các Khóa Vault khác nhau trong nhà cung cấp của mình. Để biết các phương pháp cụ thể, hãy tham khảo tài liệu trợ giúp.

Bước 2: Tạo biến môi trường
Đối với mỗi môi trường, hãy tạo các biến môi trường có cùng tên—chẳng hạn như dbHost
. Sau đó, đặt Giá trị ban đầu
để tham chiếu biến Vault thích hợp cho môi trường đó, và để Giá trị hiện tại
theo giá trị ban đầu.

Tại sao lại làm điều này?
- Nó gói biến Vault trong một biến môi trường. Vì vậy, khi bạn cấu hình kết nối cơ sở dữ liệu sau này, bạn chỉ cần chọn biến môi trường. Apidog sẽ tự động sử dụng giá trị chính xác dựa trên môi trường hiện tại.
- Lưu trữ dữ liệu trong một giá trị ban đầu đảm bảo tất cả các thành viên dự án có thể sử dụng nó mà không cần thiết lập lại thủ công—nâng cao hiệu quả nhóm.
Bước 3: Thiết lập kết nối cơ sở dữ liệu bằng Vault Secret
Khi thiết lập kết nối cơ sở dữ liệu, hãy sử dụng các biến môi trường bạn đã định nghĩa trong Quản lý môi trường
(ví dụ: dbHost
, dbUser
, dbPassword
). Để tham chiếu nhanh các biến này, hãy sử dụng tính năng giá trị động.

Bước 4: Kiểm tra kết nối cơ sở dữ liệu
Nhấp vào "Kiểm tra kết nối". Bạn sẽ được nhắc chọn một môi trường để kiểm tra.
Đảm bảo các biến được sử dụng trong kết nối (như host, cổng, tên người dùng, v.v.) được cấu hình đúng cách cho môi trường đó. Sau khi xác nhận, hệ thống sẽ kiểm tra kết nối:
- ✅ Nếu thành công, bạn có thể tiếp tục.
- ❌ Nếu thất bại, hãy kiểm tra thông báo lỗi để biết các bước khắc phục sự cố cụ thể.

Bước 5: Sử dụng thao tác cơ sở dữ liệu trong yêu cầu Endpoint
Trong Pre Processors
hoặc Post Processors
của một yêu cầu endpoint, bạn có thể thêm một thao tác cơ sở dữ liệu bằng cách sử dụng cấu hình cơ sở dữ liệu đám mây đã lưu.

Ví dụ:
Giả sử bạn muốn:
- Tra cứu
id
của một thú cưng tên "Nancy" từ cơ sở dữ liệu. - Sử dụng ID đó để lấy thông tin chi tiết thông qua một yêu cầu endpoint.

Apidog sau đó sẽ:
- Thực thi thao tác cơ sở dữ liệu
- Lấy giá trị (ví dụ:
petID
) - Lưu nó dưới dạng một biến (ví dụ:
petId
) - Sử dụng biến đó trong yêu cầu endpoint
Sau khi cấu hình cơ sở dữ liệu được thiết lập trên đám mây như mô tả ở trên:
- Các thành viên khác trong nhóm có thể tái sử dụng nó trong các thao tác cơ sở dữ liệu của riêng họ.
- Không cần mỗi người phải cấu hình thủ công.
- Tiết kiệm thời gian và đảm bảo tính nhất quán trong toàn bộ dự án của bạn.
Kết luận
Thực hành trên cho thấy cách sử dụng biến Vault để lưu trữ và áp dụng cấu hình kết nối cơ sở dữ liệu một cách an toàn. Dưới đây là tóm tắt nhanh các bước:
- Tạo các biến Vault riêng biệt cho từng cài đặt cơ sở dữ liệu trong các môi trường khác nhau (ví dụ:
testDBHost
cho môi trường kiểm thử,prodDBHost
cho môi trường sản xuất). Bạn có thể bỏ qua cổng vì nó thường giữ nguyên. - Định nghĩa các biến môi trường có cùng tên trên tất cả các môi trường. Đối với mỗi môi trường, đặt giá trị ban đầu của biến môi trường để tham chiếu biến Vault tương ứng của nó.
Bảng dưới đây minh họa cách thiết lập các biến môi trường này cho cả môi trường kiểm thử và sản xuất. Bạn có thể đặt giá trị hiện tại khớp với giá trị ban đầu.
Môi trường | Tên biến môi trường | Giá trị ban đầu | Mô tả |
Môi trường kiểm thử | dbHost | {{vault:testDbHost}} | Tham chiếu biến Vault cho địa chỉ cơ sở dữ liệu trong môi trường kiểm thử |
dbUsername | {{vault:testDbUsername}} | Tham chiếu biến Vault cho tên người dùng cơ sở dữ liệu trong môi trường kiểm thử | |
dbPwd | {{vault:testDbPwd}} | Tham chiếu biến Vault cho mật khẩu cơ sở dữ liệu trong môi trường kiểm thử | |
dbTable | store | Không có lo ngại về bảo mật dữ liệu, nên được nhập trực tiếp. Biến Vault là tùy chọn | |
Môi trường sản xuất | dbHost | {{vault:prodDbHost}} | Tham chiếu biến Vault cho địa chỉ cơ sở dữ liệu trong môi trường sản xuất |
dbUsername | {{vault:prodDbUsername}} | Tham chiếu biến Vault cho tên người dùng cơ sở dữ liệu trong môi trường sản xuất | |
dbPwd | {{vault:prodDbPwd}} | Tham chiếu biến Vault cho mật khẩu cơ sở dữ liệu trong môi trường sản xuất | |
dbTable | store | Không có lo ngại về bảo mật dữ liệu, nên được nhập trực tiếp. Biến Vault là tùy chọn |