2009-09-30 3 views

답변

12

SSL을 사용하여 데이터를 게시하십시오.

여기는 good resource on setting up SSL with IIS and ASP.NET입니다.

+0

에서 그것에 대해 블로그 게시물입니다 : // URL에 POST (SSL 인증서가 IIS에 설치되었다고 가정) – BigOmega

+0

@ Ryan https에서도 양식을로드하고 동일한 프로토콜에 게시해야합니다. –

+0

@ Ryan-H TTP는 일반 텍스트 프로토콜입니다. 인터넷을 통해 전달되는 모든 노드에서 가로 채기가 가능합니다. HTTPS만이 유일한 보안 솔루션입니다. – womp

0

ASP.net-MVC의 구현에 대해 읽지 않았습니다. 그러나, 나는 당신이 용어를 섞 었다고 생각한다.

MVC 패턴은 서버 측에서 평가됩니다. [구성 요소간에 보안 검사를 할 필요가 거의 없습니다. (프로그램 외부에 노출되지 않은 경우)]

많은 사람들이 양식 제출 후 HTTP POSTS에 대해 이야기하고 있다는 인상을받습니다. HTTP GET)

1

Rex M과 같은 SSL 게시는 확실히 첫 번째 단계입니다. 당신은 아마 그들이 신용 카드 번호 SSL을 입력하는 곳의 페이지를 만들어야합니다. 이렇게하면 사용자에게 편안한 녹색 URL이 제공됩니다.

CSRF 공격에 대한 보호 기능도 포함해야합니다. 위조 토큰을 사용하십시오.

또한 PRG (Post, Redirect, Get) pattern을 사용하여 신용 카드 번호가 두 번 제출되지 않도록해야합니다. 게시물을 보낸 다음 다른보기를 렌더링하지 말고 리디렉션을 보내 브라우저가 다른 URL (아마도 확인 페이지 일 가능성)에 대해 GET을 수행하도록하십시오.

당신은 몇 ASP.NET MVC 특정 일에 실행됩니다 : 당신이 어떤 HTTP 페이지 및 일부 HTTPS 페이지가있는 경우

  1. , 어떻게 당신이 HTTP 페이지에서 HTTPS 페이지에 대한 링크를 코딩합니다 . 하드 코드 할 수 있지만 도메인과 프로토콜을 하드 코딩해야합니다. 당신은 단지 자세한 내용은이 SO question를 참조 (<퍼센트 = Html.ActionLink 사용할 수 없습니다.

  2. 당신은 SSL을 사용하지 않을 때 당신은 당신의 컨트롤러를 공격 할 수 있는지 확인하는 것이 좋습니다

    .이 .. 당신이 오류를 잡아, 아무도 https 대신 HTTP를 사용하지 않도록 도움이 될 것입니다 조립 선물의 [가 requireSSL] 속성을 참조하십시오 여기에 단지 HTTPS를 지정하는 의미 않습니다 Adam Salvo