facebook iframe 앱을 만들 때 Facebook은 GET 매개 변수로 애플리케이션에 매개 변수를 전달합니다. 쿼리 문자열에는 fb_sig라는 필드가 있습니다.이 필드는 페이스 북에서만 만들 수있는 고유 한 서명입니다.Facebook Iframe 앱의 사용자 로그인 상태 얻기
내가 겪고있는 문제는 쿼리 문자열을 내 응용 프로그램 URL에 추가하고 페이스 북 외부 어느 곳에서든 응용 프로그램에 액세스 할 수 있다는 것입니다. 페이 스북 API가 제공하는 메소드는 특정 값에 대해 GET 매개 변수/COOKIE 만 확인합니다. 사실 페이스 북 사용자의 로그인 상태를 반환 할 수있는 API 메소드가 있습니까 (GET 매개 변수 또는 COOKIE를 기반으로하지는 않음).
제 의견으로는 이것은 누구나 브라우저 요청을 추적하고 다른 사용자의 계정에 액세스하기 위해 쿼리 문자열을 얻을 수 있기 때문에 주요 보안 결함입니다. 또한 페이스 북에서 제공하는 fb_sig 매개 변수는 만료되지 않으므로 항상 유효성 검사를 통과하는 데 사용할 수 있습니다.
HTTP_REFERER 플래그를 확인하여 페이스 북에서만 요청을 받았는지 확인했지만 많은 사람들이 리퍼러를 SPOOF로 만들 수 있습니다. 어떤 제안이나 해결책?
문제는 사용자가 내 응용 프로그램 offline_access를 허용하여 세션 키가 무한하므로 getLoggedInUser()를 사용하더라도 사용자가 로그 아웃 되어도 여전히 uid를 반환한다는 것입니다. –