Secrets & API Key Management cho website là cách kiểm kê, lưu trữ, cấp quyền, sử dụng, rotate và revoke các credential dùng bởi website và integration: API key, webhook secret, SMTP credential, payment key, database credential, token và WordPress Application Password.
Tóm tắt: Mỗi secret cần có owner, purpose, scope, nơi lưu, ngày tạo/rotate, dependency và revoke path. Không gửi secret qua kênh công khai, không hard-code vào repository công khai và không dùng một credential chung cho nhiều integration nếu có thể tách riêng.
Secret khác mật khẩu người dùng như thế nào?
Mật khẩu người dùng phục vụ đăng nhập của con người. Secret trong vận hành website thường dùng giữa hệ thống với hệ thống: website gọi CRM, SMTP, payment gateway, CDN, storage hoặc API bên ngoài. Vì vậy secret cần lifecycle và quyền riêng theo integration, không nên phụ thuộc hoàn toàn vào tài khoản cá nhân của một nhân sự.

Những secret thường có trong một website
- API key/token của CRM, ERP, email, map, AI hoặc analytics service.
- SMTP username/password hoặc token.
- Payment gateway key/secret.
- Webhook signing secret.
- Database credential.
- Cloud/CDN/storage credential.
- WordPress Application Password.
- Deployment/repository token.
Inventory secret tối thiểu cần những trường nào?
| Trường | Ý nghĩa |
|---|---|
| Secret/credential name | Tên nhận diện không chứa giá trị bí mật. |
| Owner | Team/người chịu trách nhiệm. |
| Purpose | Integration hoặc chức năng nào sử dụng. |
| Scope | Credential được phép làm gì. |
| Environment | Production, staging hay development. |
| Storage | Nơi quản lý credential. |
| Created/rotated | Mốc lifecycle gần nhất. |
| Revoke path | Cách vô hiệu hóa khi cần. |
Không hard-code secret trong nơi dễ rò rỉ
OWASP khuyến nghị quản lý secret tập trung, kiểm soát provisioning, auditing và rotation; secret không nên bị hard-code vào source code, script hoặc cấu hình bị chia sẻ công khai. Nếu một credential từng xuất hiện trong repository công khai hoặc ticket không kiểm soát, nên coi nó đã có nguy cơ lộ và rotate/revoke theo mức rủi ro.
Scope càng hẹp càng dễ kiểm soát
Nếu một API cho phép tạo credential chỉ đọc thay vì toàn quyền, hoặc tách key theo từng ứng dụng, nên ưu tiên phạm vi tối thiểu đủ dùng. Khi credential bị lộ, scope nhỏ giúp giảm blast radius và dễ truy vết integration nào sử dụng nó.
WordPress Application Password dùng khi nào?
WordPress Application Passwords là credential riêng cho programmatic access, có thể tạo và revoke độc lập với mật khẩu chính của user. Nó giúp tránh việc đưa mật khẩu đăng nhập chính cho app, script hoặc integration.
Nên đặt tên theo integration, owner và mục đích; revoke khi integration bị thay, vendor kết thúc hợp đồng hoặc credential không còn được dùng.

Production và staging không nên dùng chung secret nếu có thể tách
Staging có thể bị nhiều developer hoặc vendor truy cập hơn production. Nếu dùng chung payment key, SMTP hoặc webhook secret, một lỗi test có thể tác động dữ liệu thật. Ưu tiên sandbox/test credential và endpoint riêng khi nhà cung cấp hỗ trợ.
Khi nào cần rotate secret?
Không có chu kỳ cố định phù hợp mọi credential. Rotation nên được kích hoạt theo policy và trigger thực tế:
- nhân sự/vendor rời dự án;
- credential bị gửi nhầm hoặc commit vào repository;
- incident hoặc nghi ngờ compromise;
- thay integration;
- scope/owner thay đổi;
- nhà cung cấp yêu cầu rotation;
- policy nội bộ yêu cầu cadence cho secret critical.
Rotation phải tính dependency
Đổi key nhưng quên một cron job hoặc webhook consumer có thể làm production lỗi. Trước rotation cần inventory nơi sử dụng secret, triển khai credential mới theo thứ tự phù hợp, test và chỉ revoke credential cũ sau khi dependency đã chuyển hoàn tất.
Với thay đổi production, đi qua Change Management và regression test phù hợp.
Offboarding phải thu hồi cả credential máy-máy
Khi agency hoặc developer kết thúc công việc, không chỉ xóa WordPress user. Cần rà Application Password, API token, repository/deploy key, hosting/CDN credential và các integration do người đó tạo. Xem quản lý quyền admin WordPress và quyền kiểm soát website.
Checklist Secrets Management
- Mọi secret critical có owner và purpose.
- Không lưu giá trị secret trong asset register công khai.
- Credential được tách theo environment/integration khi khả thi.
- Scope tối thiểu đủ dùng.
- Có revoke path.
- Có trigger rotation.
- Không dùng mật khẩu admin chính cho integration nếu có credential riêng.
- Offboarding bao gồm token/Application Password.
- Monitoring có thể phát hiện credential bất thường khi hệ thống hỗ trợ.
Kết luận
Secrets & API Key Management là một lớp của Website Security Operations. Quản lý tốt secret giúp giảm credential sharing, thu hẹp quyền, dễ revoke và tránh một key bị quên trở thành cửa hậu vận hành.
Khi cần đưa credential governance vào dịch vụ bảo mật website
Bài này tiếp tục sở hữu intent Secrets & API Key Management website. Nếu doanh nghiệp cần một phạm vi có access review, secret governance, hardening, vulnerability management, monitoring, recovery readiness và incident escalation được vận hành theo owner, xem dịch vụ bảo mật website / WordPress.
Nguồn tham khảo: WordPress – Application Passwords và OWASP Secrets Management Cheat Sheet.
Đoàn Trình Dục là Giảng viên Khoa Công nghệ Thông tin tại Đại học Công nghệ Sài Gòn (STU), với hơn 10 năm kinh nghiệm thực chiến trong các lĩnh vực Mạng máy tính, Marketing Online, SEO và Bảo mật hệ thống.
Với nền tảng sư phạm và kinh nghiệm tư vấn cho nhiều doanh nghiệp, thầy chuyên sâu vào việc xây dựng các giải pháp kỹ thuật số toàn diện và hiệu quả.

