2013-06-06 2 views
0

나는 특이한 문제가 있습니다. 내 애플리케이션의 인증 수준이 다르며 특정 수준 (sup 사용자)이 낮은 권한을 가진 다른 사용자 (하위 사용자)로 애플리케이션을 사용할 수 있어야합니다.많은 탭이있는 쿠키 제어

sup 사용자가 하위 사용자를 선택하면 브라우저의 다른 탭이 열리고 하위 사용자 권한과 해당 쿠키가로드됩니다. 문제는 다음과 같습니다.이 새 탭에서 새 쿠키에 대한 참조를 얻으려면 어떻게해야합니까?

또한 sup 사용자는 너무 많은 탭을 열 수 있으며 각 탭은 자신의 쿠키를 참조해야합니다.

+0

다른 방법으로이 컨트롤이나 비슷한 것을 할 수 있습니까? –

+0

당신의 sup 사용자는 쿠키를 보지 않고 하위 사용자의 데이터를 볼 수 있도록 설정해야한다고 생각합니다. 즉, sup로 로그인하면 sup 인증 쿠키는 모든 하위에 대해 작동합니다. –

답변

1

나는 당신의 sup 사용자가 쿠키를 보지 않고 하위 사용자의 데이터를 볼 수 있도록 설정되어야한다고 생각합니다. 즉, sup로 로그인하면 sup 인증 쿠키는 모든 하위에 대해 작동합니다. 이게 너에게 의미가 있니?

sub에 대한 데이터를 검색 할 때 하위의 자격 증명/쿠키를 요청하거나 sup에 대한 쿠키가 있는지 확인하십시오. sup에 대한 쿠키가 있거나 사용자가 sup에 대한 자격 증명을 제공하면 좋은 결과를 얻을 수 있습니다.

+0

ID가 있어야합니다. 컨텍스트, 어떤 하위 사용자가 시스템을 변경하고 있는지 어떻게 알 수 있습니까? 어떻게 제어 할 수 있습니까? –

+0

변경하려는 계정의 ID가 있기 때문에 알 수 있습니다. –

+0

이해하지만 이제는 슈퍼 유저가 액세스 할 수있는 페이지를 통해이 ID 트로프를 유지하는 방법에 대해 많은 문제가 있습니다. 어떤 생각? –

1

그런 방식으로 쿠키의 범위를 직접 제한 할 수있는 방법은 없습니다. 그러나 문제의 한 가지 해결책은 웹 사이트에 미러 URL을 만들고 미러 경로를 쿠키로 제한하는 것입니다. 예를 들어 일반 쿠키의 경로를 www.example.com으로 제한하고 미러 URL mirror.example.com (symlink 또는 다른 기능을 사용하여 내부적으로 www.example.com을 가리킴)을 만듭니다. 그러나 이는 사용자가하고 싶은 일에 대한 많은 작업 일뿐만 아니라 주 사용자와 대체 사용자 한 명만 허용하는 것으로 제한됩니다.

쿠키에 의존하지 않는 또 다른 해결책은 웹 사이트의 URL에 추가 할 때 충분히 소유 한 사용자가 다른 사용자로 가장 할 수있는 GET 변수를 만드는 것입니다 (예 : &altUser=subUser). 그런 다음 탭 내에서이를 지속시키기 위해 생성 된 페이지의 모든 링크 끝에 해당 변수를 자동으로 추가합니다.

+0

답변 해 주셔서 감사합니다. 앞에서 말한 것처럼 두 번째 솔루션을 이미 시도했지만 url 매개 변수를 전체 응용 프로그램에 유지하는 것은 매우 어렵습니다. –

+0

그렇게 열심히해서는 안됩니다. 경로에는 계정의 ID가 다음과 같이 필요합니다 :/Account/Edit/89 그런 다음 페이지의 각 링크에는/Account/AddAddress/89 또는/Account/RemoveCreditCard/89 –