2013-08-26 1 views
0

클라이언트는 웹 이외의 앱을 통해 웹 사이트를 열어 쿼리 문자열을 통해 ID와 고유 한 보안 코드를 제공합니다. 따라서 URL은 다음과 같이 부드럽게 보입니다. .../Default.aspx?uI=21&sc=b2r#67!kl이 특별한 경우에 세션 사용에 요점이 있습니까?

다른 클라이언트의 경우 웹 사이트마다 다른 콘텐츠가 있습니다. 사용자는 10 명을 넘지 않습니다 (1 명의 클라이언트는 많은 직원 (사용자)을 가진 1 개의 회사이고 하나의 회사의 모든 사용자는 보안 코드가 동일 함을 고려). 따라서 동일한 회사의 10 명의 사용자는 서로 다른 ID (uI)를 갖지만 다른 회사의 경우 동일한 보안 코드 (sc) 등이 있습니다.

세션을 사용할 때 중요한 점이 있습니까? 아니면 사용자를 구분하기 위해 쿼리 문자열 값을 사용하는 것으로 충분합니까? 왜 안돼?

기타 구현 방법에 대한 제안을 환영합니다.

답변

0

IMO, QueryString 사용자는 위치 표시 줄을 사용하여 SC 또는 UI를 변경하여 결과 출력을 조작 할 수 있습니다. 양식 하나의 페이지를 다른 페이지로 이동하는 동안 원하지 않는 결과가 발생할 수 있습니다.

0

사용자의 고유 한 식별자를 전달하려는 경우 URL에 보안 토큰 (아마도 사용자/보안 코드의 고유 한 조합 인 GUID)을 전달하여 보길 원할 수 있습니다. . 그런 다음 백엔드에서이 토큰의 유효성을 검사 한 다음 ASP.NET Membership을 사용하여 사용자의 자격 증명을 저장합니다.

는 회원에 대한 자세한 내용은 아래를 참조

http://msdn.microsoft.com/en-us/library/yh26yfzy.aspx

1

내가 URL이 사용자 ID의와 보안 코드와 같은 정보를 보유 가지는 것은 좋은 생각이 아니다 것에 동의합니다.

아마도 쿼리 문자열에서이 정보를 전달하는 '방문 페이지'를 만들 수 있습니다.이 페이지에서 2 개의 세션 변수 중 하나는 UserID와 다른 보안 코드로 설정됩니다. 쿼리 문자열없이 기본 페이지로 리디렉션하십시오. 그런 다음 언제든지 세션을 통해 변수를 확인할 필요가 있으며 쿼리 스트링을 표시하지 않아도됩니다. 그냥 생각.

관련 문제