2012-09-23 2 views
4

내 애플 리케이션 내의 리소스에 대한 핫 링크 및/또는 무단 액세스를 중지하는 방법을 구현하려고합니다.스칼라 리프트 - 핫 링크에서 파일을 보호하는 강력한 방법

내가 추가하려고 시도하는 방법은 이전에 PHP 앱에서 사용한 적이 있습니다. 기본적으로 페이지가 처음 호출 될 때 세션이 설정됩니다. 이미지는 파라미터로서 세션 값을 갖는 이미지 태그를 통해 페이지에 추가된다 :

화상 스크립트를 요청할
<img src="/files/image/image1.jpg?session=12345" /> 

세션 설정 및 제공된 값과 일치하는지 확인하도록 검사한다. 조건이 충족되지 않으면 게재 페이지가 null을 반환합니다. 코드 끝 부분에서 바로 세션을 설정 해제하므로 페이지 범위 밖의 추가 요청은 null을 반환합니다.

리프트 프레임 워크 내에서이 방법을 가장 효과적으로 구현하는 방법은 무엇입니까? 사전에 어떤 도움

덕분에, 많은 감사 :) 당신이 목적을 위해 SessionVar을 사용할 수

답변

0

. SessionVarMap[SessionImageId, RealImageId]을 저장하고 세션을 초기화하면 (즉, 페이지가 처음로드 될 때) 실제 이미지 ID에 매핑 할 임의의 SessionImageId을 생성하게됩니다. 당신의 HTML에서 그림자가있는 SessionImageId 만 노출하므로 아무도이 ID의 이미지를 추적 할 수 없습니다. 이미지가 요청되면 Map에서 실제 ID를 조회하면됩니다. 정보

: ID를 그림자 것이 중요하지 않은 경우 Exploring Lift, Lift wiki

물론, 당신은 단순히 SessionVar[Boolean]를 사용할 수 있습니다.