2011-01-14 2 views
0

내 요구 사항은 사용자가 한 시스템에서만 액세스 할 수 있도록 허용해야하는 사이트의 일부입니다. 그는 다른 IP를 사용할 수도 있고 시스템이 동일하다면 액세스 할 수 있어야합니다. 내 사이트는 PHP입니다. 일부를하고 있어요 R & D JS 방문자가 IE를 사용하는 경우 MAC 주소를 얻는 데 도움이 발견. 내 경우에는 IE를 사용하도록 사용자를 제한 할 수 없습니다. 그는 모든 브라우저를 사용할 수 있습니다. MAC 주소를 얻을 수있는 방법이 있습니까? 가능하지 않은 경우 동일한 사용자가 다른 컴퓨터의 콘텐츠에 액세스하는 것을 어떻게 제한해야합니까?웹 사이트 방문객 MAC 주소 활성 lancard를 얻으시겠습니까?

답변

2

아니요. MAC 주소는 로컬 네트워크보다 유용하지 않으므로 상위 레이어 (예 : 응용 프로그램 레이어)에서 사용할 수 없습니다. Javascript를 사용하여 주소를 알아내는 것도 누군가를 조작하기가 매우 쉽기 때문에 정확하지 않을 수 있습니다.

사용자가 사이트에 액세스 할 수있는 호스트를 제한하려면 브라우저 내에서 저장 영속 방식을 사용하여 키를 고유하게 식별하는 키를 저장해야합니다. 몇몇 공개 토론은 금지를 우회하는 것을 시도하는 사람들을 붙잡기 위하여이 방법을 이용한다.

임의의 종류의 키를 생성하거나 문자열을 암호화하여 식별하려는 사용자와 함께 서버 측에 저장 한 다음 사용자에게 cookie/localStorage에 저장할 키를 제공해야합니다.

비록 당신에게 머리 시작의 비트를 제공하는 ...

바라건대 자신의 쿠키를 삭제 한 사용자의 명백한 문제가있다.

1

다니엘은 정확합니다. MAC 주소를 사용하는 것은 실용적이지 않습니다.

목적에 따라 몇 개의 레이어를 사용하는 것이 좋습니다. 쿠키는 시작하기에 좋은 장소입니다. 명시된 바와 같이, 그들은 삭제 될 수 있습니다. 또한 사용자가 쿠키를 사용 중지했을 수 있습니다. 쿠키는 컴퓨터의 일반 텍스트 형식으로 저장되며 사용자가 쉽게 수정할 수 있습니다.

PHP로 세션을 구현할 수도 있습니다. 각 세션은 각 시스템 및 브라우저마다 고유합니다. 사용자가 브라우저를 전환하거나 현재 브라우저를 다시 시작하면 세션이 다시 작성됩니다.

사용자 에이전트 문자열을 확인할 수도 있습니다. 그것은 각 브라우저마다 다르며 "가장 가능성이 높은"각 시스템이지만 쉽게 스푸핑 될 수 있습니다.

공용/개인 키 교환을 사용할 수도 있지만 구현 및 관리하는 데 어려움이있을 수 있습니다.

정말 바보 같은 해결책이 없습니다. 최선의 방법은 가능한 한 완벽하게 "가까운"것으로 만들기 위해 기술의 조합을 사용하는 것입니다. 사용자에게 너무 불편하지 않도록 노력하십시오.