{% autoescape off %}{{ var.text }}{% endautoescape %}
을하고 난 그냥이게 얼마나 안전 궁금? SQL 인젝션과 크로스 사이트 스크립팅 및 기타 취약점을 방지 할 수 있습니까?
이 텍스트는 사용자로부터 올 것
=== 편집 =======, 그래서 안전하게 장고 템플릿에서 HTML을 표시하는 가장 좋은 방법은 무엇입니까?
{% autoescape off %}{{ var.text }}{% endautoescape %}
을하고 난 그냥이게 얼마나 안전 궁금? SQL 인젝션과 크로스 사이트 스크립팅 및 기타 취약점을 방지 할 수 있습니까?
이 텍스트는 사용자로부터 올 것
=== 편집 =======, 그래서 안전하게 장고 템플릿에서 HTML을 표시하는 가장 좋은 방법은 무엇입니까?
autoescape는 SQL 삽입이 아닌 교차 사이트 스크립팅으로부터 보호됩니다 (make sure your inputs are scrubbed 필요). autoescape를 끄면 악성이 아닌 "텍스트"에있는 내용을 신뢰할 수 있습니다 (즉, 사용자가 텍스트 내용을 작성하거나 수정할 수 없어야 함). 이 가정이 유효한 경우 교차 사이트 스크립팅에 안전합니다. 그렇지 않으면 보안 허점입니다.
아니요, HTML을 템플릿 엔진에서 안전하다고 표시하면 안전하게 렌더링해야합니다.
또한, 당신은 간단하게 할 수이 완전히 var.text 어디에서 왔는지에 따라 안전 여부
{{ var.text|safe }}
에
{% autoescape off %}
{{ var.text }}
{% endautoescape %}
을 변경하여 약간의 코드를 (물론, 단축) . 그것이 전적으로 귀하의 통제하에있는 판촉 메시지 (예를 들면)라면, 발에서 자신을 쏘지 않는 한 당신은 안전합니다. var.text가 어떻게 든 사용자로부터 온다면 위험합니다.
+1 - 좋은 답변입니다! –
위 질문에 대한 편집 : "이 텍스트는 사용자가 올 것입니다. 따라서 장고 템플릿에 html을 안전하게 표시하는 가장 좋은 방법은 무엇입니까?" – Joe