2017-03-01 4 views
0

이것은 간단한 질문처럼 보일 수 있지만 답변을 찾을 수 없습니다.ASP.NET의 서버에서 사용자 권한을 확인해야합니까?

ASP.NET 응용 프로그램에서 나는 연결된 사용자에 따라 채워진 선택 항목을 포함하는 목록 상자가있는 사용자 인터페이스를 가지고 있습니다. 사용자 A가 C1, C2 및 C3 중에서 선택할 수 있으며 사용자 B는 C1과 C2 중에서 선택할 수 있다고 가정 해 봅시다. 목록 상자를 채우는 동안 연결된 사용자 권한을 확인하고 사용자에 따라 목록 상자에 값을 채 웁니다.

양식을 제출할 때 사용자 B가 (제출 된 양식을 위조하여) C3를 목록 상자 선택 사항으로 보내려고하지 않는다고 서버 측에서 점검해야합니까, 그렇지 않습니까?

+0

클라이언트로부터 제출 된 데이터를 절대 신뢰해서는 안됩니다. 항상 확인하십시오. 특히 공개 웹 사이트에서. 보안 네트워크에 내부 호스팅 사이트가 있다면 좀 더 신뢰 할 수 있습니다. 그러나 이것은 매우 특정한 시나리오이며 대부분 검증해야합니다. – mason

+0

클라이언트 쪽 유효성 검사는 일반적으로 Javascript/jQuery로 수행됩니다. 그러나 유효성 검사를 건너 뛰는 사용자는 브라우저에서 쉽게 비활성화 할 수 있습니다. – VDWWD

답변

0

일반적으로 양측 (사용자에게 표시된 클라이언트 측 값과 서버에 게시 된 서버 측 값)을 확인해야한다고 가정하는 것이 안전합니다.

데이터베이스를 업데이트하기 전에 값이 유효한지 확인하는 것이 매우 간단하며, 값을 확인하기 위해 서버에 도달해야하는 경우에도 잘못된 데이터 나 사용 권한이 설정되는 위험이 있습니다.

귀하의 시나리오에 따라 다를 수 있지만주의가 잘못되어 있으며 확실하지 않은 경우 어쨌든 유효성을 검사하십시오.