HTTP 응답 헤더에서 컨텐츠 처리 사용
데이터베이스에서 파일을 제공 할 때 다음 asp.net 코드가 매우 유용하다는 것을 알았습니다.
Response.AppendHeader("content-disposition", "attachment; filename=" + fileName);
이를 통해 사용자는 파일을 컴퓨터에 저장 한 다음 파일을 사용하려는 브라우저 대신 파일 사용 방법을 결정할 수 있습니다.
콘텐츠 처리 응답 헤더로 다른 작업을 수행 할 수 있습니까?
참고 RFC 6266 대체합니다 RFC는 아래 참조. 섹션 7 에는 관련 보안 문제 중 일부가 요약되어 있습니다.
콘텐츠 처리 헤더에 대한 권한은 RFC 1806 및 RFC 2183입니다. 사람들도 콘텐츠 처리 해킹을 고안했습니다 . 콘텐츠 처리 헤더는 HTTP 1.1 표준의 일부가 아니라는 점에 유의해야합니다.
HTTP 1.1 표준 ( RFC 2616 )에는 다음과 같은 컨텐츠 처리로 인한 보안 부작용이 언급되어 있습니다.
15.5 콘텐츠 처리 문제
HTTP 에서 자주 구현되는 Content-Disposition (섹션 19.5.1 참조)이 파생 된 RFC 1806 [35] 에는 여러 가지
심각한 보안 고려 사항이 있습니다. Content-Disposition은
HTTP 표준의 일부가 아니지만 광범위하게 구현되므로 구현 자의
사용 및 위험을 문서화하고 있습니다. 자세한 내용은 RFC 2183 [49]
(RFC 1806 업데이트)를 참조하십시오.
글쎄, Content-Disposition 헤더는 원래 웹이 아니라 전자 메일 용으로 만들어진 것 같습니다. ( 관련 RFC에 링크하십시오 .)
웹 브라우저가 응답 할 수 있다고 생각합니다
Response.AppendHeader("content-disposition", "inline; filename=" + fileName);
저장할 때, 확실하지 않습니다.
RFC 6266 (HTTP (Hypertext Transfer Protocol)에서 컨텐츠 처리 헤더 필드 사용)을 참조하십시오. http://tools.ietf.org/html/rfc6266
asp.net 사용자를 위해 .NET 프레임 워크는 콘텐츠 처리 헤더를 만드는 클래스를 제공합니다. System.Net.Mime.ContentDisposition
기본 사용법 :
var cd = new System.Net.Mime.ContentDisposition();
cd.FileName = "myFile.txt";
cd.ModificationDate = DateTime.UtcNow;
cd.Size = 100;
Response.AppendHeader("content-disposition", cd.ToString());
이 헤더는 RFC 2183에 정의되어 있으므로 읽기 시작하기 가장 좋은 장소입니다.
허용되는 값은 IANA (Internet Assigned Numbers Authority)에 등록 된 값입니다. 그들의 가치 의 레지스트리 는 결정적인 근원으로 보여 져야한다.
Microsoft 지원 섹션에 대한이 KB 문서 는 알려진 MIME 유형에 대한 파일 다운로드 대화 상자를 올리는 방법에 대한 토론과 관련이 있다고 생각했습니다.
참고 URL : https://stackoverflow.com/questions/1012437/uses-of-content-disposition-in-an-http-response-header
'Programing' 카테고리의 다른 글
| Java 웹 애플리케이션에 대한 Javascript 축소를 어떻게 자동화합니까? (0) | 2020.07.13 |
|---|---|
| 필드 정렬이 기본 유형인지 사용자 정의인지에 따라 구조체 정렬이 왜 달라 집니까? (0) | 2020.07.13 |
| const-reference로 std :: function을 전달해야합니까? (0) | 2020.07.13 |
| 그리드 / 타일 뷰를 만드는 방법? (0) | 2020.07.13 |
| componentWillReceiveProps와 달리 라이프 사이클 메소드 getDerivedStateFromProps를 사용하는 방법 (0) | 2020.07.13 |