사용자가 의견을 입력 할 수있는 텍스트 상자를 만들었습니다. 따라서 때로는 응용 프로그램에서 발생한 오류를 복사하여 설명과 함께 텍스트 상자에 붙여 넣습니다. 불법 문자 (예 : </11>
)가 포함될 수 있지만 저장해야하지만 .aspx는 허용되지 않습니다. 이 문제를 어떻게 처리해야할지 모르겠다. 감사!텍스트 상자에 잘못된 문자 허용
답변
다음 중 한 가지 방법으로이 검사를 비활성화 할 수 있습니다 사용자가 TextBox를 편집하고 html 태그를 입력하려는 경우
를 통해 이것을 사용 중지 할 수 있습니다.<%@ Page validateRequest="false" ...>
또는 전체 응용 프로그램의 Web.config에서이하여 validateRequest 속성이 이유없이 존재하지 않는 것을
<system.web>
<page validateRequest="false" />
</system.web>
참고. 기본값을 변경하면 안전하지 않은 입력이 수락됩니다. 그 때문에, 당신은 다른 스마트 솔루션 에 자바 스크립트를 통해
교체되는 악성 자바 스크립트, 액티브 X, 플래시의 삽입 또는 HTML과 같은 피할 크로스 사이트 스크립팅 공격에 모든 사용자의 입력을 검증 할 필요가 사용자가 작성한 텍스트를 사용하여 유효성을 검사하는 것이 안전합니다.
< anyword>
대신 <anyword>
이 안전한 것으로 간주됩니다!
function validateTxt() {
$("textarea, input[type='text']").change(function() {
html = $(this).val(); //get the value
//.replace("a" , "b") works only on first occurrence of "a"
html = html.replace(/< /g, "<"); //before: if there's space after < remove
html = html.replace(/</g, "< "); // add space after <
$(this).val(html); //set new value
});
}
$(document).ready(function() {
validateTxt();
});
우리는이 문제를 불법적 인 성격의 전후에 공백으로 해결할 수 있다는 것을 의미합니까? 그렇다면 모든 불법 문자에 대해해야합니까? – dotnetrocks
내 솔루션은 "<"문자 문제를 해결합니다. 사용자가 HTML 태그를 생성 할 수 있기 때문에 불법입니다. "
콘텐츠를 전송하기 전에 Base64로 인코딩 할 수 있습니다. 그러나 나는 내 솔루션이 정말로 좋은 것인지 잘 모르겠습니다. 행동에서 asp.net의 요청 유효성 검사입니다 난 당신이 같은 예외 메시지에 대해 얘기하는 가정
http://nolovelust.com/post/classic-asp-base64-encoder-decoder.aspx
"잠재적 위험으로 Request.Form 값은 클라이언트에서 검색되었습니다 ..."
. 이 기능은 페이지 또는 사이트 수준에서 비활성화 할 수 있지만 이와 관련된 위험이 있습니다.
페이지 지시어 또는 web.config에서 ValidateRequest = "false"를 지정하면됩니다. 여기
자세한 내용은 : http://www.asp.net/learn/whitepapers/request-validation
답장을 보내 주셔서 감사합니다 !!ValidateRequest = "false"...를 사용하면 유효성이 검사 될 다른 컨트롤이 페이지에 있습니다. – dotnetrocks
ValidateRequest는 스크립트 공격을 방지하는 방법입니다. 사용을 중지하면 안전하지 않은 입력을받습니다. 유효성 검사기 (ASP : RequiredFieldValidator, ASP : CompareValidator 등)가 작동합니다. 어쨌든 내 대답 좀 봐. –
페이지 수준에서이 작업을 수행하면 전체 페이지 및 모든 컨트롤에 대한 유효성 검사가 비활성화되므로주의해야합니다. web.config에서이 작업을 수행하면 전체 사이트 및 모든 페이지의 모든 컨트롤이 비활성화되므로주의하십시오. 유효성 검사가 여전히 실행됩니다. emanuele greco는 좋은 점을 제시하고 좋은 대안을 제시하므로, 나는 그 대답을 너무 높이 평가하고있다. 답장을 보내 주셔서 감사합니다. –
그것은 될 수 인해 HTML로는 보안 조치로, 서버 측을 거부된다. 페이지 헤더 <%@ Page validateRequest="false" %>
에 다음 속성을 추가 또는 있는 Web.Config에 다양한 변화 응용 프로그램을 만드는
:
<configuration>
<system.web>
<pages validateRequest="false" />
</system.web>
</configuration>
- 1. 텍스트 상자에 영어 이외의 문자 입력 허용
- 2. 텍스트 상자에 숫자 문자 만 허용 하시겠습니까?
- 3. 멀티 라인 텍스트 상자에 최대 문자 (가시성 허용) 설정
- 4. 텍스트 상자에 외국 문자 입력
- 5. Javascript 정규식 - 허용 목록을 사용하는 잘못된 문자
- 6. GWT의 텍스트 상자에 숫자 만 허용 하시겠습니까?
- 7. validateRequest = false를 사용하여 ASP 텍스트 상자에 HTML 텍스트 허용 여부
- 8. 브라우저가 쿠키를 잘못된 텍스트 상자에 저장합니다.
- 9. 체크 마스크 된 텍스트 상자에 문자 개수
- 10. TTimer를 사용하여 텍스트 상자에 문자 추가
- 11. Windows Forms 텍스트 상자에 입력 할 수있는 문자 수 제한
- 12. Zend_Validate_Regex - 문자, 숫자 및 문자 만 허용 -_
- 13. CSS 허용/허용되지 않는 문자
- 14. 허용 비 라틴 문자
- 15. 특정 문자 만 허용
- 16. URL에 임의의 문자 허용
- 17. null이 허용되지 않는 int가있는 int 텍스트 상자에 null 허용
- 18. 아이폰, 잘못된 문자
- 19. 텍스트 상자에 텍스트
- 20. 잘못된 문자 입력에 대한 사용자 정의 처리
- 21. IIS 요청 URL에 특수 문자 허용
- 22. 플래시 - 텍스트 상자에 텍스트가 겹칩니다.
- 23. HTML에서 공백 허용 텍스트 상자
- 24. XML 스키마 - 잘못된 날짜 허용
- 25. 잘못된 캐스팅 예외, 텍스트 상자에 colordialog 값 저장
- 26. split 문자열 일부 문자 허용
- 27. .htaccess에서 외부 문자 허용 mod_rewrite
- 28. IE의 웹 양식 텍스트 상자에 중복 된 문자 입력이 발생합니다.
- 29. MFC에서 텍스트 상자에 입력 한 문자 수를 제한하는 방법은 무엇입니까?
- 30. 텍스트 상자에 남아있는 문자 수에 대한 생생한 피드백
_ "my .aspx는 허용되지 않습니다."_ 어떤 코드를 사용하여 저장합니까? 어떤 오류가 발생합니까? – CodeCaster
내 대답을 고려하십시오 : 자바 스크립트로 사용자가 삽입 한 텍스트를 조작하지만 RequestValidation을 유지하십시오. –