Tôi sắp viết hướng dẫn của công ty về những gì không bao giờ xuất hiện trong nhật ký (dấu vết của một ứng dụng). Trên thực tế, một số nhà phát triển cố gắng đưa càng nhiều thông tin càng tốt vào dấu vết, khiến việc lưu trữ các nhật ký đó trở nên nguy hiểm và cực kỳ nguy hiểm khi gửi chúng , đặc biệt là khi khách hàng không biết thông tin này được lưu trữ, bởi vì cô ấy không bao giờ quan tâm đến điều này và không bao giờ đọc tài liệu và / hoặc tin nhắn cảnh báo.
Ví dụ, khi xử lý các tệp, một số nhà phát triển bị cám dỗ theo dõi tên của các tệp . Ví dụ: trước khi gắn tên tệp vào thư mục, nếu chúng tôi theo dõi mọi thứ bị lỗi, sẽ dễ dàng nhận thấy ví dụ rằng tên được nối quá dài và lỗi trong mã là quên kiểm tra độ dài của chuỗi nối. Nó rất hữu ích, nhưng đây là dữ liệu nhạy cảm và không bao giờ xuất hiện trong nhật ký .
Theo cùng một cách:
- Mật khẩu ,
- Địa chỉ IP và thông tin mạng (địa chỉ MAC, tên máy chủ, v.v.) ¹,
- Cơ sở dữ liệu truy cập,
- Nhập trực tiếp từ người dùng và dữ liệu doanh nghiệp được lưu trữ
không bao giờ xuất hiện trong dấu vết.
Vì vậy, những loại thông tin khác phải được trục xuất khỏi các bản ghi? Có bất kỳ hướng dẫn đã được viết mà tôi có thể sử dụng?
Rõ ràng, tôi không nói về những thứ như nhật ký IIS hoặc Apache. Điều tôi đang nói đến là loại thông tin được thu thập với mục đích duy nhất là tự gỡ lỗi ứng dụng, không theo dõi hoạt động của các thực thể không tin cậy.
Chỉnh sửa: Cảm ơn bạn đã trả lời và ý kiến của bạn. Vì câu hỏi của tôi không quá chính xác, tôi sẽ cố gắng trả lời các câu hỏi trong các bình luận:
- Tôi đang làm gì với nhật ký?
Nhật ký của ứng dụng có thể được lưu trữ trong bộ nhớ, có nghĩa là ở dạng đơn giản trên đĩa cứng trên localhost, trong cơ sở dữ liệu, một lần nữa ở dạng đơn giản hoặc trong Sự kiện Windows. Trong mọi trường hợp, mối quan tâm là những nguồn đó có thể không đủ an toàn. Ví dụ: khi khách hàng chạy một ứng dụng và ứng dụng này lưu trữ nhật ký trong tệp văn bản thuần trong thư mục tạm thời, bất kỳ ai có quyền truy cập vật lý vào PC đều có thể đọc các nhật ký đó.
Nhật ký của ứng dụng cũng có thể được gửi qua internet. Ví dụ: nếu khách hàng gặp sự cố với ứng dụng, chúng tôi có thể yêu cầu cô ấy chạy ứng dụng này ở chế độ theo dõi đầy đủ và gửi cho chúng tôi tệp nhật ký. Ngoài ra, một số ứng dụng có thể tự động gửi báo cáo sự cố cho chúng tôi (và ngay cả khi có cảnh báo về dữ liệu nhạy cảm, trong hầu hết các trường hợp khách hàng không đọc chúng).
- Tôi đang nói về các lĩnh vực cụ thể?
Không. Tôi chỉ làm việc trên các ứng dụng kinh doanh nói chung, vì vậy dữ liệu nhạy cảm duy nhất là dữ liệu kinh doanh. Không có gì liên quan đến sức khỏe hoặc các lĩnh vực khác được bảo vệ bởi các quy định cụ thể. Nhưng cảm ơn bạn đã nói về điều đó, có lẽ tôi nên xem qua các lĩnh vực đó để biết một số manh mối về những gì tôi có thể đưa vào hướng dẫn.
- Không dễ dàng hơn để mã hóa dữ liệu?
Không. Nó sẽ làm cho mọi ứng dụng trở nên khó khăn hơn nhiều, đặc biệt nếu chúng ta muốn sử dụng chẩn đoán C # và TraceSource
. Nó cũng sẽ yêu cầu quản lý ủy quyền, đó không phải là suy nghĩ dễ làm nhất. Cuối cùng, nếu chúng ta đang nói về nhật ký được gửi cho chúng tôi từ một khách hàng, chúng ta phải có thể đọc nhật ký, nhưng không có quyền truy cập vào dữ liệu nhạy cảm. Vì vậy, về mặt kỹ thuật, sẽ không bao giờ dễ dàng bao gồm thông tin nhạy cảm trong nhật ký và không bao giờ quan tâm đến cách thức và nơi lưu trữ các nhật ký đó.
debug
tên tệp có thể ổn , nhưng không phảiinfo
tên tệp.