2009-10-06 2 views
0

사용자가 HTML 및 ASP 코드 스 니펫을 데이터베이스에 저장할 수있는 응용 프로그램이 있습니다. 문제는 텍스트 영역 컨트롤을 동적으로 채울 때 HTML 코드 조각에 포함될 수있는 모든 문자가 페이지를 제대로 렌더링하지 못하게하는 것입니다.ASP.NET의 텍스트 영역에 HTML 및 기타 코드 표시

브라우저로 출력하기 전에 다양한 문자를 제거/바꾸는 방법에 대한 지침이나 방법을 알려줄 수 있습니까?

꺽쇠 괄호를 벗기고 독립 캐릭터로 교체합니까? 사용자가 꺾쇠 괄호 대신 <과 >을 입력하도록합니까? 아니면이 작업을 수행하는 훨씬 쉬운 방법이 있습니까?

답변

1

좋은 습관은 Server.httpUtility 클래스에서 HTMLEncode 및 HTMLDecode를 사용하는 것입니다.

간단히 <을 바꾸거나 html을 수동으로 구문 분석하면 문제가 발생할 수 있으며 "모두 얻지 못할 수도 있습니다".

사용자 입력 또는 화면에 쓰여진 텍스트에 대해 항상 HTMLEncode 및 HTMLDecode를 호출하면 교차 사이트 스크립팅 및 기타 일반적인 웹 취약점 (SQL 삽입과 같은)의 위험을 크게 줄일 수 있습니다. 으로만 사용해서는 안되며 구현하기가 쉽고 효과적입니다. 보안/위생 메커니즘.

1

HttpUtility을 사용하여 HTML을 화면에 출력하기 전에 쉽게 인코딩 할 수 있습니다.

관련 문제