Chính sách bảo mật
Có hiệu lực từ ngày [dd/mm/yyyy]. Phiên bản: draft.
Chính sách này giải thích cách GeoCDM xử lý dữ liệu cá nhân của bạn theo pháp luật Việt Nam về bảo vệ dữ liệu cá nhân, gồm Luật Bảo vệ dữ liệu cá nhân và các nghị định hướng dẫn đang có hiệu lực.
1. Bên kiểm soát dữ liệu
[Tên pháp nhân / cá nhân], địa chỉ [địa chỉ], email liên hệ về dữ liệu cá nhân [email]. [Đầu mối bảo vệ dữ liệu cá nhân, nếu có: tên/chức danh.]
2. Dữ liệu chúng tôi thu thập
| Nhóm dữ liệu | Chi tiết | Nguồn |
|---|---|---|
| Tài khoản | Họ tên, email, mật khẩu (chỉ lưu dạng băm, không lưu mật khẩu gốc), thời điểm xác nhận email; thời điểm tạo tài khoản, số lần đăng nhập sai và thời điểm khóa tạm, bộ đếm số lần gửi lại thư | Bạn cung cấp |
| Nhóm và thành viên | Tên nhóm, vai trò (admin/thành viên), số seat, số máy tối đa; các yêu cầu nâng cấp (gói số thành viên, app, người gửi, người duyệt, ghi chú của nhân viên khi từ chối). | Bạn và admin nhóm cung cấp |
| Người được mời (có thể chưa có tài khoản) | Email người được mời (chữ thường), nhóm và người mời, trạng thái (đang chờ, đã chấp nhận, đã thu hồi), thời điểm tạo, hết hạn (7 ngày) và chấp nhận, số lần gửi lại; mã lời mời chỉ lưu dạng băm. Mục đích: gửi và kiểm tra lời mời vào nhóm. Lưu trong cơ sở dữ liệu, gắn với nhóm. Admin nhóm thấy email các lời mời đang chờ (kể cả đã quá hạn nhưng chưa bị thu hồi) và có thể thu hồi trên Portal. Nếu bạn nhận được lời mời mà không muốn tham gia: không bấm vào liên kết (lời mời hết hiệu lực sau 7 ngày) và gửi yêu cầu xóa địa chỉ email của bạn khỏi hệ thống tới [điền: email hỗ trợ]; bản ghi lời mời đã hết hạn hoặc bị thu hồi được hệ thống xóa hẳn sau 30 ngày kể từ ngày hết hạn (xem mục 5). | Admin nhóm nhập (người được mời chưa tự cung cấp) |
| Đồng ý pháp lý | Phiên bản Điều khoản và Chính sách bạn đã đồng ý, thời điểm đồng ý | Phát sinh khi đăng ký |
| Thiết bị | Mã băm định danh máy (device_hash: SHA-256 của mã máy Windows cộng một hằng số của GeoCDM, do app tính và gửi lên), tên máy Windows do app gửi lên, lần dùng cuối. Tên máy có thể chứa tên người; admin nhóm và nhân viên thấy tên máy. | App gửi lên |
| Cấp phép | Mỗi lần khởi động app và mỗi lượt chạy được cấp phép, hệ thống ghi nhóm được cấp, app và phiên bản app (xem dòng Số liệu sử dụng). Kênh cập nhật chỉ dùng để kiểm tra phiên bản tối thiểu và không được lưu; kết quả từ chối cấp phép không được lưu. | Phát sinh khi chạy app |
| Số liệu sử dụng | Sự kiện khởi động app (launch) và lượt chạy (run): app, phiên bản, thời điểm, tài khoản, nhóm, máy. Không có nội dung dữ liệu và không có địa chỉ IP. | Phát sinh khi dùng app |
| Dùng thử | Mã băm máy (device_hash) và chuỗi băm một chiều có muối của email đã chuẩn hóa (không lưu email ở dạng đọc được), app, nhóm, thời điểm | Phát sinh khi kích hoạt |
| Kỹ thuật | Địa chỉ IP: dùng để giới hạn tốc độ và chống đăng ký rác (tạm thời trong bộ nhớ), gửi cho Cloudflare Turnstile để xác minh, và chỉ được ghi vào nhật ký khi có nhiều lần đăng ký bất thường từ một IP. Nhật ký lỗi của hệ thống chứa mã định danh nội bộ, không chứa mật khẩu hay mã xác nhận. Loại trình duyệt chỉ xuất hiện trong báo cáo lỗi gửi Sentry. Ứng dụng không ghi nhật ký truy cập từng yêu cầu. Cookie phiên đăng nhập. | Tự động |
| Nhật ký thao tác | Các thao tác quản trị quan trọng (duyệt nâng cấp, khóa nhóm, giải phóng máy...) và người thực hiện; việc tự xóa tài khoản, tạo hoặc sửa app, ghi nhận phát hành. Nhật ký chỉ chứa mã định danh nội bộ. | Phát sinh khi thao tác |
Chúng tôi không thu thập nội dung dữ liệu bạn xử lý trong app (tọa độ, bản đồ, hồ sơ đo đạc, địa chính, tệp bạn mở hay xuất). Chúng tôi chỉ ghi số liệu sử dụng nêu trên.
Chúng tôi không chủ định thu thập dữ liệu cá nhân nhạy cảm. Vui lòng không đưa dữ liệu nhạy cảm vào tên nhóm hoặc tên máy.
3. Mục đích và cơ sở xử lý
- Tạo và quản lý tài khoản, nhóm, mời thành viên: để thực hiện hợp đồng dịch vụ với bạn.
- Cấp phép chạy app, giới hạn máy và seat, bắt buộc cập nhật: để thực hiện hợp đồng và bảo vệ quyền sở hữu phần mềm.
- Chống lạm dụng dùng thử, phát hiện đăng ký rác: lợi ích chính đáng và bảo vệ quyền lợi của GeoCDM.
- Gửi email xác nhận, lời mời, đặt lại mật khẩu, thông báo dịch vụ: để thực hiện hợp đồng.
- Thống kê sử dụng, cải thiện app, hỗ trợ khách hàng, theo dõi sự cố: nâng cao chất lượng dịch vụ.
- Tuân thủ nghĩa vụ pháp luật và yêu cầu hợp pháp của cơ quan có thẩm quyền.
Các xử lý dựa trên sự đồng ý của bạn (ví dụ khi bạn đồng ý Điều khoản và Chính sách lúc đăng ký) được ghi nhận kèm phiên bản và thời điểm. Chúng tôi không dùng dữ liệu của bạn cho quảng cáo, không bán dữ liệu cá nhân. Người được mời vào nhóm chưa đồng ý Điều khoản khi email của họ được lưu để gửi lời mời; cơ sở pháp lý cho việc này.
4. Chia sẻ dữ liệu với bên thứ ba
Chúng tôi chỉ chia sẻ ở mức cần thiết với các bên xử lý thay mặt chúng tôi, theo hợp đồng bảo mật:
- Vultr (máy chủ ảo VPS chạy Portal, Api, cơ sở dữ liệu PostgreSQL và các bản sao lưu): đặt ngoài lãnh thổ Việt Nam, vùng datacenter [điền: vùng datacenter Vultr]. Mọi dữ liệu nêu ở mục 2 (trừ dữ liệu chỉ nằm trên máy của bạn) được lưu tại đây.
- Nhà cung cấp gửi email (SMTP): Viettel IDC (máy chủ tại Việt Nam). Nhận địa chỉ email người nhận và nội dung thư (họ tên, tên nhóm, liên kết xác nhận hoặc lời mời).
- Cloudflare: (a) Turnstile chống đăng ký rác: tiện ích được nạp trên các trang của Portal; khi cần kiểm tra (đăng ký, quên mật khẩu, đăng nhập sau nhiều lần sai), máy chủ GeoCDM gửi cho Cloudflare mã kết quả của tiện ích và địa chỉ IP của bạn để xác minh, Cloudflare có thể xử lý thêm thông tin trình duyệt theo chính sách của họ; (b) R2 và mạng phân phối tại download.geocdm.vn lưu và phân phối bản cài đặt, bản cập nhật: kho này chỉ chứa tệp phát hành, không chứa dữ liệu tài khoản hay dữ liệu cá nhân của bạn, nhưng Cloudflare có thể ghi nhận địa chỉ IP của thiết bị tải về; (c) dịch vụ DNS của geocdm.vn.
- Sentry (dịch vụ theo dõi lỗi; vùng dữ liệu [điền: EU hoặc US]): chỉ nhận báo cáo về lỗi chưa được xử lý của Portal và Api (loại lỗi, thông báo lỗi, vết ngăn xếp, phiên bản ứng dụng, đường dẫn đã bỏ chuỗi truy vấn, loại trình duyệt hoặc ứng dụng gọi). Trước khi gửi, hệ thống lọc bỏ chuỗi truy vấn, cookie, tiêu đề xác thực, nội dung yêu cầu, thông tin người dùng, địa chỉ IP, tên máy chủ và nhật ký thông thường; địa chỉ email trong thông báo lỗi bị che. Nội dung dữ liệu bạn xử lý trong app không đi qua Sentry.
- Thành viên của một nhóm thấy họ tên, email và vai trò của các thành viên khác trong nhóm đó. Admin nhóm còn thấy các lời mời đang chờ (email người được mời) và tên máy cùng lần dùng cuối của thành viên. Nhân viên GeoCDM có quyền truy cập quản trị theo nhu cầu công việc (gồm thành viên, máy, chuỗi băm chống lạm dụng dùng thử và nhật ký thao tác), mọi thao tác quan trọng đều được ghi nhật ký.
- Cơ quan nhà nước có thẩm quyền khi có yêu cầu hợp pháp.
Chuyển dữ liệu xuyên biên giới. Máy chủ chính của GeoCDM365 (Vultr, vùng [điền: vùng datacenter Vultr]) đặt ngoài lãnh thổ Việt Nam, nên toàn bộ dữ liệu nêu ở mục 2 được lưu và xử lý ở nước ngoài. Cloudflare và Sentry (vùng dữ liệu [điền: EU hoặc US]) cũng xử lý dữ liệu ngoài lãnh thổ Việt Nam. Nhà cung cấp email (Viettel IDC) đặt máy chủ trong lãnh thổ Việt Nam nên không thuộc phần chuyển dữ liệu xuyên biên giới.
5. Thời gian lưu trữ
| Dữ liệu | Thời gian lưu |
|---|---|
| Tài khoản chưa xác nhận email | Xóa sau 7 ngày kể từ lúc đăng ký nếu vẫn chưa xác nhận (việc dọn tự động chạy mỗi 24 giờ nên có thể chậm thêm khoảng một ngày) |
| Tài khoản, nhóm, thành viên | Đến khi bạn xóa tài khoản hoặc nhóm bị xóa. Nếu bạn là thành viên duy nhất của một nhóm, nhóm bị xóa cùng tài khoản của bạn; khi một nhóm bị xóa, tài khoản của các thành viên còn lại vẫn được giữ. |
| Lời mời | Hiệu lực 7 ngày. Hồ sơ lời mời (gồm email người được mời) thuộc dữ liệu của nhóm và bị xóa khi nhóm bị xóa, khi người mời xóa tài khoản hoặc khi chính người được mời xóa tài khoản; ngoài ra, lời mời đã bị thu hồi, hoặc đã hết hạn mà chưa được chấp nhận, được hệ thống xóa hẳn sau 30 ngày kể từ ngày hết hạn (việc dọn chạy mỗi 24 giờ); lời mời đã được chấp nhận được giữ đến khi nhóm bị xóa. |
| Mã máy (device_hash) | Đến khi giải phóng máy, rời hoặc bị xóa khỏi nhóm, xóa tài khoản, hoặc xóa nhóm. (Mã máy nằm trong thông tin chống lạm dụng dùng thử được nêu ở dòng dưới.) |
| Thông tin chống lạm dụng dùng thử | Xóa khi nhóm bị xóa (kể cả khi nhóm bị xóa vì thành viên duy nhất xóa tài khoản; khi đó bản ghi của nhóm mất theo, nên có thể dùng thử lại), hoặc khi nhân viên gỡ bản ghi cho khách bị chặn nhầm. Nếu một thành viên xóa tài khoản mà nhóm vẫn còn thành viên khác, bản ghi (mã băm máy, chuỗi băm email, app, thời điểm) vẫn được giữ đến khi nhóm bị xóa. |
| Số liệu sử dụng | Giữ gắn với tài khoản, nhóm và máy cho đến khi tài khoản bị xóa (khi đó bỏ liên kết với người dùng và máy; vẫn gắn với nhóm nếu nhóm còn) hoặc nhóm bị xóa (khi đó bỏ liên kết với người dùng, nhóm và máy). Còn lại app, phiên bản, loại sự kiện và thời điểm để thống kê. Hiện hệ thống không tự ẩn danh theo thời gian. |
| Nhật ký thao tác | [N] năm; không chứa mật khẩu hay dữ liệu nhạy cảm; vẫn còn sau khi xóa nhóm hoặc tài khoản ở dạng định danh tối thiểu |
| Nhật ký kỹ thuật (log) | Log của Portal ghi vào tệp, mỗi ngày một tệp và tách thêm khi đạt 10 MB, giữ tối đa 30 tệp (tệp cũ nhất bị xóa). Log của Api và các thành phần khác nằm trong nhật ký của Docker, xoay vòng tối đa 3 tệp mỗi thành phần, mỗi tệp tối đa 10 MB. Thời gian giữ thực tế phụ thuộc lượng log; chúng tôi không cam kết một số ngày cố định. Theo rà soát mã nguồn, log không ghi mật khẩu và mã xác nhận. |
| Bản sao lưu cơ sở dữ liệu | [N] ngày (cấu hình hiện tại: sao lưu mỗi ngày và trước mỗi lần triển khai, giữ 14 bản gần nhất); dữ liệu đã xóa sẽ biến mất khỏi bản sao lưu khi bản đó hết chu kỳ |
| Dữ liệu tại bên thứ ba (Cloudflare, Sentry) | Theo chính sách và thời hạn lưu của từng bên [điền: tra cứu thời hạn lưu của Cloudflare và Sentry] |
Nhóm hết hạn và không hoạt động trong thời gian dài có thể bị xóa thủ công (xem Điều khoản mục 8.3).
6. Bảo mật
Chúng tôi áp dụng: mã hóa kết nối (TLS), băm mật khẩu và mã lời mời (không lưu bản gốc), khóa tài khoản khi đăng nhập sai nhiều lần, giới hạn tốc độ, phân quyền theo vai trò, nhật ký thao tác, sao lưu hằng ngày và theo dõi sự cố. Dữ liệu được lưu trên máy chủ ảo (VPS) của Vultr đặt ngoài lãnh thổ Việt Nam (xem mục 4). Bản sao lưu cơ sở dữ liệu hiện nằm trên chính máy chủ này và không được mã hóa riêng; việc chép bản sao lưu ra ngoài là tùy chọn. 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 cá nhân, chúng tôi sẽ thông báo cho cơ quan có thẩm quyền và bạn theo quy định.
7. Cookie
Portal dùng cookie phiên đăng nhập geocdm365.auth (HttpOnly, chỉ gửi qua HTTPS, SameSite=Lax, dùng chung cho 365.geocdm.vn và api.geocdm.vn, hết hạn sau 14 ngày và được gia hạn khi bạn còn hoạt động) và cookie chống giả mạo yêu cầu (antiforgery). Khóa bảo vệ cookie được lưu trong cơ sở dữ liệu, không phải trong cookie. Các cookie này không dùng cho quảng cáo. Tiện ích Cloudflare Turnstile được nạp trên các trang của Portal và có thể dùng bộ nhớ của trình duyệt theo chính sách của Cloudflare. [Nếu thêm công cụ phân tích, cập nhật mục này.] Trên máy của bạn, app lưu mã làm mới phiên đăng nhập trong Windows Credential Manager, dùng chung cho các app GeoCDM; bạn có thể xóa bằng cách đăng xuất.
8. Quyền của bạn
Theo pháp luật hiện hành, bạn có quyền được biết, đồng ý hoặc rút lại sự đồng ý, truy cập, chỉnh sửa, xóa, hạn chế hoặc phản đối xử lý, yêu cầu cung cấp dữ liệu của mình, và khiếu nại. Cụ thể:
- Đổi mật khẩu: trên Portal (mục "Đổi mật khẩu"). Xem thông tin tài khoản đang lưu và sửa họ tên: Portal hiện chưa có trang riêng, hãy gửi yêu cầu qua email [điền: email hỗ trợ].
- Xóa tài khoản: trên Portal (mục "Xóa tài khoản"), cần nhập lại email, mật khẩu và đánh dấu xác nhận. Việc xóa không thể hoàn tác. Nếu bạn là thành viên duy nhất của một nhóm, nhóm đó bị xóa cùng tài khoản; nếu bạn là admin cuối của nhóm còn thành viên khác, cần chỉ định admin khác trước. Số liệu sử dụng được tách khỏi tài khoản của bạn; nhật ký thao tác vẫn giữ mã định danh nội bộ (xem mục 5). Thành viên bị xóa khỏi nhóm sẽ mất quyền ở nhóm đó nhưng tài khoản vẫn còn.
- Giải phóng máy: trên Portal (mục "Máy của tôi"), tối đa 3 lần trong 30 ngày cho mỗi nhóm. Rời nhóm: trên trang thành viên của nhóm.
- Truy cập hoặc nhận bản sao dữ liệu, rút lại sự đồng ý, phản đối hoặc hạn chế xử lý: hiện chưa có chức năng tự phục vụ trên Portal, hãy gửi yêu cầu qua email [điền: email hỗ trợ]. Xóa tài khoản chấm dứt việc xử lý dữ liệu tài khoản của bạn.
- Các yêu cầu khác: gửi email tới [email]. Chúng tôi phản hồi trong thời hạn pháp luật quy định.
- Rút lại đồng ý có thể khiến chúng tôi không thể tiếp tục cung cấp dịch vụ.
9. Trẻ em
Dịch vụ dành cho người từ đủ 18 tuổi. Chúng tôi không chủ định thu thập dữ liệu của trẻ em; nếu phát hiện, chúng tôi sẽ xóa.
10. Thay đổi chính sách
Khi Chính sách thay đổi, chúng tôi cập nhật số phiên bản và ngày hiệu lực, thông báo cho bạn và yêu cầu đồng ý lại khi thay đổi ảnh hưởng đến quyền hoặc mục đích xử lý.
11. Liên hệ
[Tên], [địa chỉ], email [email], điện thoại [số].