2010-08-23 12 views

답변

0

나는 쿼리 문자열을 사용하는 것이 완벽하다고 생각하지만 hackable URLs에 대한 사례가 더 많아서 고급 사용자가 더 이해할 수 있으며 검색 엔진 최적화에 도움이됩니다. 예를 들어 http://www.example.com/user/view/1234http://www.example.com/view.aspx?user=1234보다 직관적으로 보입니다.

그리고 IIS 7.0을 사용하는 경우 예쁜 URL을 사용하도록 응용 프로그램을 변경할 필요가 없습니다. URL Rewrite Module 및 몇 가지 재 작성 규칙으로 충분합니다.

+0

URL 다시 쓰기 모듈이 멋지게 보입니다. 전에 사용해 봤어? – Morgan

+0

예, 몇 번 사용해 보았습니다. Microsoft에서 완벽하게 지원하며 정규 표현식을 알아야하는 것 외에도 사용법에 대해 걱정할 필요가 없습니다. – Mhmmd

3

사용자가 볼 수있는 내용을 잠그는 것이 확실한 경우 쿼리 문자열은 완벽합니다. 유효한 값 (숫자, null이 아님 등)을 확인하고 응용 프로그램에 보안이 설정되어 있는지 확인해야합니다. 방문자가 User 1245의 프로필을 볼 수있는 권한을 가지고 있는지 여부.

& ViewState 세션을 살펴볼 수 있지만 QueryString은 사용자가 수행 한 것으로 보입니다.

6

귀하의 질문은. NET 질문이 아닙니다 ... 그것은 모든 웹 프레임 워크와 웹 개발자가 어떤 식 으로든 다루어야 할 문제입니다.

대부분의 경우 웹 사이트의 주 사용자가 직면하는 부분에 대해 긴 쿼리 문자열을 사용하지 않아야 웹 사이트 방문자에게 "이해"할 수있는 URL 구조가 필요하다는 데 동의합니다. 논리적 인 계층 구조를 사용하여 방문자가 사이트를 읽을 때 사이트에서 그들이 어디에 있는지 추론 할 수있는 기회를 얻으십시오. 몇 가지 영역에서 StackOverflow를 클릭하고 URL로 수행 한 작업을 확인하십시오. 당신은 보통 당신이보고있는 것과 당신이있는 곳을 꽤 잘 알고 있습니다.

몇 가지 다른 헤드 업 ... 기본 데이터베이스 키를 사용하여 많은 데이터베이스 조회를 수행하지만 기본 키 대신 URL에 사용자 친숙한 리소스 이름을 제공하는 것이 좋습니다. 당신은 기본 키 "3544483"뿐만 아니라 SEO/사용자 친화적 인 URL을 포함하여 조회를하고있는 현재 주소에서 StackOverflow를 수행하는 것을 보게됩니다. "- querystrings-in-net-good-practice." 누군가가 그 링크를 이메일로 보낸다면 당신이 열려고하는 것에 대해 꽤 좋은 생각을 가지고있을 것입니다.

WebForms가 URL 라우팅을 처리하는 방법에 대해서는 잘 모르겠지만 컨셉을 파악하는 데 어려움이 있다면 MVC NerdDinner 자습서를 살펴보십시오. 그들은 도움이 될 수있는 몇 가지 기본 URL 라우팅을 다루고 있습니다.

1

가능하면 자동 증분 ID를 일반 텍스트로 전달하는 경우이 방법을 피해야합니다. 필자는 사용자가 쿼리 스트링 값을 조작하고 다른 사람의 프로필에 액세스 할 수 있는지 확인하려고 애 쓰고 있습니다. 페이지를 렌더링하기 전에 서버 측에서 요청의 유효성을 검사하는 적절한 보안 조치를 취한 경우에도이 특별한 경우에 쿼리 문자열 매개 변수를 암호화하는 것이 좋습니다.

0

귀하의 질문에 명확하게 대답하려면 : 예. 그것은 좋은 질문입니다. 사실 그것은 웹 사이트의 예상 된 동작입니다.

전적으로 ShaderOp에 동의하고 멋진 loocking URL을 얻으려면 URL 재 작성자를 사용해야합니다. 사실 나는 누군가가 URL을 조작하지 않고 데이터를 액세스하지 못하도록 약간의 검증을 거치게된다고 가정하고 있습니다.

0

쿼리 문자열은 괜찮지 만 보안 문제는 발생하지 않습니다.

액세스중인 프로필이 현재 로그인 한 사용자 인 경우 uid를 보낼 필요가 없습니다./profile로 가서 현재 로그인 한 사용자 정보를로드하십시오.

다른 회원 프로필을보고있는 경우 'username', 암호화 된 ID 또는 GUID로 이동하는 것이 좋습니다.

사용자 ID를 클라이언트에 표시하는 것은 일반적으로 좋지 않습니다.

관련 문제