Chính sách bảo vệ dữ liệu cá nhân
Cập nhật lần cuối: 29 tháng 10, 2026 · Có hiệu lực từ: 28 tháng 10, 2026
Chính sách này mô tả cách website https://ngochuydo.com và hệ thống quản trị https://cms.ngochuydo.com (gọi chung là "Dịch vụ") thu thập, sử dụng, lưu trữ, cung cấp và bảo vệ dữ liệu cá nhân.
Dịch vụ gồm website portfolio công khai và hệ thống CMS dùng để quản lý nội dung, tài khoản quản trị và các chức năng liên quan. Người chịu trách nhiệm vận hành Dịch vụ là Đỗ Ngọc Huy.
Chúng tôi xử lý dữ liệu cá nhân theo pháp luật Việt Nam hiện hành, bao gồm Luật Bảo vệ dữ liệu cá nhân số 91/2025/QH15 và các văn bản hướng dẫn.
Việc truy cập website không đồng nghĩa với việc bạn đồng ý cho mọi hoạt động xử lý dữ liệu. Mỗi hoạt động dưới đây chỉ được thực hiện cho đúng mục đích bạn chủ động sử dụng.
1. Dữ liệu cá nhân được xử lý
1.1. Đăng nhập và tài khoản CMS
CMS cho phép tự đăng ký bằng email và mật khẩu, hoặc đăng nhập bằng Google hoặc GitHub. Tài khoản mới không có quyền quản trị cho đến khi được quản trị viên cấp.
Khi đăng nhập bằng Google, Dịch vụ chỉ yêu cầu các quyền openid, email và profile. Khi đăng nhập bằng GitHub, Dịch vụ chỉ yêu cầu quyền read:user và user:email. Từ nhà cung cấp, chúng tôi chỉ lưu địa chỉ email đã được xác minh và tên hiển thị; không lưu mã định danh tài khoản, ảnh đại diện hay token của Google/GitHub.
Khi đăng ký bằng email và mật khẩu, chúng tôi lưu email, tên người dùng, mật khẩu dưới dạng giá trị băm (không lưu văn bản thuần), trạng thái tài khoản và mã xác minh tạm thời dùng để xác minh email hoặc đặt lại mật khẩu.
Khi bạn tạo, sửa hoặc xóa dữ liệu trong CMS, hệ thống ghi nhật ký thao tác gồm tên tài khoản, thao tác, bản ghi bị tác động, các trường thay đổi và thời điểm, để quản trị viên truy vết khi cần. Mỗi lần lưu bài viết cũng tạo một phiên bản để có thể khôi phục.
Chúng tôi không yêu cầu quyền truy cập danh bạ, lịch, tệp, email hay tin nhắn trong tài khoản Google/GitHub của bạn.
1.2. Biểu mẫu liên hệ
Khi bạn gửi biểu mẫu liên hệ, chúng tôi lưu tên, địa chỉ email, tiêu đề và nội dung tin nhắn để tiếp nhận và phản hồi yêu cầu của bạn, đồng thời xử lý hành vi lạm dụng biểu mẫu khi cần.
1.3. Đăng ký nhận bản tin
Bản tin dùng cơ chế xác nhận hai bước (double opt-in): sau khi bạn nhập email, chúng tôi gửi một liên kết xác nhận và chỉ gửi bản tin sau khi bạn bấm xác nhận. Chúng tôi lưu địa chỉ email, thời điểm xác nhận và mã dùng cho liên kết xác nhận/hủy đăng ký.
Mọi email bản tin đều có liên kết hủy đăng ký. Khi bạn hủy, địa chỉ email của bạn bị xóa hoàn toàn khỏi danh sách nhận tin.
1.4. Chat và tin nhắn
Chức năng chat do chúng tôi tự xây dựng và lưu trên máy chủ của Dịch vụ, không dùng dịch vụ chat bên thứ ba. Chúng tôi lưu nội dung tin nhắn, tên và email nếu bạn chọn cung cấp, cùng ngôn ngữ giao diện. Trình duyệt của bạn giữ một mã cuộc trò chuyện trong localStorage để bạn tiếp tục cuộc trò chuyện khi quay lại.
Vui lòng không gửi dữ liệu cá nhân nhạy cảm hoặc thông tin bí mật qua chat.
1.5. Dữ liệu kỹ thuật, nhật ký máy chủ và thống kê
Máy chủ web (Nginx) ghi nhật ký truy cập theo định dạng chuẩn, gồm địa chỉ IP, user-agent, URL được yêu cầu, mã phản hồi và thời điểm truy cập, để vận hành, xử lý lỗi và phát hiện tấn công.
Để chống spam, một số chức năng (đăng nhập, chat, biểu mẫu) giới hạn số lần gửi theo địa chỉ IP. Bộ đếm này chỉ nằm trong bộ nhớ và tự hết hạn sau tối đa 10 phút.
Thống kê website chỉ ghi loại sự kiện (ví dụ lượt xem trang hoặc bài viết), mã nội dung và ngôn ngữ. Bản ghi thống kê không chứa địa chỉ IP, cookie hay bất kỳ mã định danh người dùng nào, nên không thể liên kết với một cá nhân. Trình duyệt chỉ giữ danh sách trang đã xem trong sessionStorage để không đếm trùng, và danh sách này tự xóa khi đóng tab.
2. Mục đích và căn cứ xử lý
Chúng tôi chỉ xử lý dữ liệu cho mục đích cụ thể, rõ ràng và trong phạm vi cần thiết.
| Hoạt động | Mục đích | Căn cứ xử lý |
|---|---|---|
| Đăng nhập CMS | Xác thực, quản lý tài khoản, bảo vệ quyền truy cập | Sự đồng ý của bạn khi chủ động đăng ký hoặc đăng nhập |
| Biểu mẫu liên hệ | Tiếp nhận và phản hồi yêu cầu | Sự đồng ý của bạn khi chủ động gửi biểu mẫu, chỉ cho mục đích phản hồi |
| Bản tin | Gửi bản tin bạn đã đăng ký | Sự đồng ý được xác nhận qua email (double opt-in), rút lại bằng liên kết hủy |
| Chat | Trao đổi và trả lời tin nhắn | Sự đồng ý của bạn khi chủ động gửi tin nhắn |
| Nhật ký kỹ thuật, giới hạn tần suất | Bảo mật, xử lý lỗi, ngăn chặn lạm dụng | Bảo đảm an ninh, an toàn hệ thống theo quy định pháp luật |
| Thống kê website | Đánh giá mức độ quan tâm nội dung | Không xử lý dữ liệu cá nhân |
3. Thời hạn lưu trữ
- Tài khoản CMS: lưu đến khi tài khoản bị xóa. Tài khoản đã xóa được xóa vĩnh viễn khỏi cơ sở dữ liệu sau 15 ngày.
- Mã xác minh email và đặt lại mật khẩu: tự động xóa sau khi hết hạn.
- Nhật ký thao tác trong CMS: tự động xóa sau 1 năm.
- Biểu mẫu liên hệ: lưu đến khi được xử lý và xóa; bản ghi đã xóa được xóa vĩnh viễn sau 15 ngày.
- Bản tin: lưu đến khi bạn hủy đăng ký hoặc yêu cầu xóa; khi hủy, email bị xóa ngay.
- Chat: lưu đến khi cuộc trò chuyện bị xóa hoặc bạn yêu cầu xóa.
- Nhật ký Nginx: xoay vòng hằng ngày và tự xóa sau 14 ngày.
- Thống kê: lưu lâu dài vì không chứa dữ liệu cá nhân.
Chúng tôi không duy trì bản sao lưu tự động định kỳ của cơ sở dữ liệu, vì vậy dữ liệu đã xóa không tồn tại trong bản sao lưu cũ. Nếu sau này áp dụng sao lưu, chính sách này sẽ được cập nhật kèm thời hạn lưu bản sao.
4. Bên tiếp nhận dữ liệu và dịch vụ bên thứ ba
Dữ liệu chỉ được chia sẻ với các nhà cung cấp cần thiết để Dịch vụ hoạt động:
| Nhà cung cấp | Vai trò | Dữ liệu liên quan |
|---|---|---|
| Xác thực đăng nhập; máy chủ SMTP Gmail gửi email | Email, tên hiển thị khi đăng nhập; email người nhận và nội dung email hệ thống/bản tin | |
| GitHub | Xác thực đăng nhập | Email, tên hiển thị |
| Amazon Web Services (S3, khu vực Singapore ap-southeast-1) | Lưu trữ tệp tải lên (ảnh, CV) | Tệp do quản trị viên tải lên; không chứa dữ liệu của khách truy cập |
- Chúng tôi không bán dữ liệu cá nhân và không cung cấp dữ liệu cho bên thứ ba để quảng cáo.
- Dữ liệu nhận được từ Google API chỉ được dùng để đăng nhập và tuân thủ Google API Services User Data Policy, bao gồm các yêu cầu Limited Use. Dữ liệu này không được dùng cho quảng cáo, không được chuyển cho bên khác và không được dùng để huấn luyện mô hình AI.
5. Chuyển dữ liệu ra nước ngoài
Google và GitHub xử lý dữ liệu xác thực trên hạ tầng toàn cầu của họ (chủ yếu tại Hoa Kỳ); email gửi qua Gmail SMTP cũng được xử lý trên hạ tầng của Google. Tệp tải lên được lưu trên AWS tại Singapore. Cơ sở dữ liệu chính của Dịch vụ (tài khoản, liên hệ, bản tin, chat) được lưu trên máy chủ do chúng tôi quản lý.
Chúng tôi chỉ chuyển dữ liệu tối thiểu cần thiết cho các chức năng trên và thực hiện các nghĩa vụ về chuyển dữ liệu cá nhân ra nước ngoài theo pháp luật Việt Nam.
6. Cookie và lưu trữ trên trình duyệt
Dịch vụ chỉ dùng cookie và bộ nhớ trình duyệt thiết yếu, không dùng cookie quảng cáo hay theo dõi của bên thứ ba:
| Tên | Nơi dùng | Mục đích | Thời hạn |
|---|---|---|---|
| token | cms.ngochuydo.com | Phiên đăng nhập CMS (HttpOnly, Secure, SameSite=Strict) | 30 ngày, hoặc đến khi đóng trình duyệt nếu không chọn ghi nhớ |
| oauth_state | cms.ngochuydo.com, đường dẫn /api/auth/callback | Chống giả mạo trong quá trình đăng nhập Google/GitHub (HttpOnly, Secure, SameSite=Lax) | 10 phút, xóa ngay khi đăng nhập xong |
| NEXT_LOCALE | ngochuydo.com, cms.ngochuydo.com | Ghi nhớ ngôn ngữ | Theo phiên trình duyệt |
| theme (localStorage) | ngochuydo.com, cms.ngochuydo.com | Ghi nhớ giao diện sáng/tối | Đến khi bạn xóa dữ liệu trình duyệt |
| chat-token, chat-profile (localStorage) | ngochuydo.com | Tiếp tục cuộc trò chuyện chat | Đến khi bạn xóa dữ liệu trình duyệt |
| tracked-page-views (sessionStorage) | ngochuydo.com | Tránh đếm trùng lượt xem | Đến khi đóng tab |
- Bạn có thể xóa hoặc chặn cookie trong cài đặt trình duyệt. Chặn cookie token hoặc oauth_state sẽ khiến bạn không đăng nhập được CMS.
- Nếu sau này dùng cookie không thiết yếu, chúng tôi sẽ cập nhật chính sách và xin sự đồng ý trước.
7. Bảo mật dữ liệu
- Toàn bộ kết nối dùng HTTPS.
- Mật khẩu được băm, không lưu văn bản thuần.
- Cookie phiên là HttpOnly, Secure, SameSite=Strict; đăng nhập Google/GitHub được bảo vệ bằng tham số state chống giả mạo.
- Quyền trong CMS được phân theo vai trò; tài khoản mới không có quyền quản trị.
- Các chức năng công khai có giới hạn tần suất để chống spam và dò mật khẩu.
Không hệ thống nào an toàn tuyệt đối. Nếu xảy ra sự cố lộ lọt dữ liệu, chúng tôi sẽ khắc phục, thông báo cho cơ quan có thẩm quyền và cho người bị ảnh hưởng theo thời hạn pháp luật quy định.
8. Quyền của chủ thể dữ liệu
Theo pháp luật, bạn có quyền:
- Được biết về hoạt động xử lý dữ liệu cá nhân của mình.
- Đồng ý hoặc không đồng ý, và rút lại sự đồng ý bất cứ lúc nào.
- Xem, chỉnh sửa hoặc yêu cầu chỉnh sửa dữ liệu.
- Yêu cầu cung cấp, xóa hoặc hạn chế xử lý dữ liệu.
- Phản đối việc xử lý trong các trường hợp pháp luật quy định.
- Khiếu nại, tố cáo, khởi kiện và yêu cầu bồi thường theo quy định.
- Thu hồi quyền truy cập của Dịch vụ trong tài khoản Google (myaccount.google.com/permissions) hoặc GitHub (Settings → Applications).
9. Hủy nhận bản tin
Bạn có thể hủy bằng liên kết hủy đăng ký có trong mọi email bản tin, hoặc liên hệ với chúng tôi. Việc hủy có hiệu lực ngay và email của bạn bị xóa khỏi hệ thống.
10. Trẻ em và liên kết bên ngoài
Dịch vụ là website portfolio cá nhân, không hướng đến trẻ em dưới 16 tuổi. Chúng tôi không cố ý thu thập dữ liệu của trẻ em; nếu phát hiện, dữ liệu đó sẽ được xóa.
Website có liên kết đến dịch vụ bên ngoài (GitHub, LinkedIn…). Các dịch vụ đó có chính sách riêng mà chúng tôi không kiểm soát.
11. Liên hệ về dữ liệu cá nhân
Để thực hiện các quyền ở trên, hãy gửi yêu cầu kèm email bạn đã dùng với Dịch vụ. Chúng tôi có thể xác minh danh tính ở mức hợp lý trước khi cung cấp hoặc xóa dữ liệu, và sẽ phản hồi trong thời hạn pháp luật quy định. Yêu cầu xóa có thể bị giới hạn nếu pháp luật bắt buộc lưu trữ.
- Người vận hành: Đỗ Ngọc Huy
- Email liên hệ về quyền riêng tư: huydn1402@gmail.com
- Website: http://localhost:3001
- Biểu mẫu liên hệ: http://localhost:3001/#contact
12. Thay đổi chính sách
Chúng tôi có thể cập nhật chính sách khi Dịch vụ hoặc quy định pháp luật thay đổi. Ngày cập nhật và ngày hiệu lực luôn ghi ở đầu trang. Nếu thay đổi làm thay đổi đáng kể mục đích xử lý, chúng tôi sẽ thông báo và xin lại sự đồng ý khi pháp luật yêu cầu.
Nếu có khác biệt giữa bản tiếng Việt và bản tiếng Anh, bản tiếng Việt được ưu tiên áp dụng.