1 Câu hỏi: Quá nhiều thông tin trong đối tượng request.META của Django

câu hỏi được tạo ra tại Wed, May 8, 2019 12:00 AM

Gần đây tôi đã kiểm tra request.META cho một chế độ xem cụ thể và theo tôi, tất cả các biến môi trường như DJANGO_SECRET_KEY, DJANGO_DATABASE_NAME và DJANGO_SUPERUSER_PASSWORD ... v.v đều được chứa trong đối tượng này Dữ liệu Django request.META. Làm thế nào tôi có thể loại bỏ các biến đã nói khỏi META? Đây có phải là cách tiếp cận từ phía khách hàng không?

Tôi đoán rằng tôi có thể sử dụng một số phần mềm trung gian để loại bỏ những thứ này, nhưng có ai khác thấy hành vi này không? Đây có phải là bình thường /an toàn?

N.B . Tôi chỉ định các biến ở trên là ENVIRONMENT trong tệp docker-compose.yml của tôi cho dịch vụ django web.

    
0
  1. Tại sao bạn quan tâm nó chứa cái gì?
    2019-05-08 16: 32: 00Z
  2. @ DanielRoseman Xin chào Daniel, tôi chỉ nghĩ nếu ai đó có thể kiểm tra META vì mục đích xấu ... (Tôi cần tiêu đề HTTP_AUTHORIZATION, nhưng về mặt kỹ thuật tôi không thể loại bỏ điều này vì vậy tôi có thể không cần phải lo lắng.)
    2019-05-09 08: 32: 52Z
  3. Ai có thể kiểm tra nó? Đó là một biến nội bộ. Nếu ai đó có quyền truy cập vào các quy trình Python đang chạy của bạn, bạn có vấn đề lớn hơn chỉ là những gì trong một biến.
    2019-05-09 08: 52: 29Z
  4. @ DanielRoseman Điểm công bằng.
    2019-05-09 09: 52: 40Z
1 Câu trả lời                              1                         

Nghe có vẻ như vì bạn đang đặt chúng làm biến môi trường, chúng được bao gồm trong request.META. Vì vậy, bạn sẽ phải xem xét không thực sự lưu trữ chúng dưới dạng biến env hoặc xử lý riêng để tùy chỉnh và xóa chúng. Tuy nhiên, lưu ý rằng khách hàng không thể truy cập vào số request.META, vì vậy nó không tệ từ quan điểm bảo mật.

    
1
2019-05-08 16: 33: 15Z
  1. @ NSO Tôi sẽ xem liệu tôi có thể chấp nhận điều này không, một vài người khác ở đây có thể xác minh rằng đó không phải là vấn đề bảo mật.
    2019-05-09 08: 33: 29Z
nguồn đặt đây