2011-08-03 3 views
1

- 유료 아이폰 애플리케이션을 구축 중입니다. 일부 프리미엄 콘텐츠 비디오를 보여줍니다. - 앱이 UIWebView 에서 내 웹 서버의 페이지를로드하지만 동영상은 다른 동영상 호스팅 사이트에서 호스팅됩니다.내 아이폰 앱을위한 비밀번호로 보호 된 비디오를 호스팅합니다.

나는이 앱을 계속 사용하기 위해 비디오 링크를 보호/보안 상태로 유지해야한다는 것을 알고 있습니다. (URL 유출이 없으면 누구도 비용을 지불하고 싶어하지 않습니다.)

웹 페이지 (실제 비디오를 가리키는)를 쉽게 암호로 보호 할 수 있으며 iphone 앱에서이 웹 페이지에 액세스 할 수있는 사용자 이름과 암호를 사용할 수 있습니다. 그러나 사용자가 동영상 링크를 선택하면 앱에서 해당 URL을로드합니다. 사용자가 현재 아이폰에서 패킷을 스니핑하면 URL에 액세스하여 바로 거기에서 실행할 수 있습니다.

비디오 링크가 외부이므로 mod_sec_download 또는 mod_xsendfile이이 시나리오에서 작동 할 수 있다고 생각하지 않습니다. 권리?

Amazon S3가 가능한 솔루션입니까?

통찰력/솔루션을 고맙게 생각합니다.

감사합니다.

답변

0

비디오 파일을 직접 가리 키지 마십시오. 그것은 훔치는 것이 사소한 일입니다. 대신 요청 소스를 확인하고 등록 된 구매자가 제공 한 것인지 확인하는 프록시 스크립트를 지정하십시오.

적절한 일회성 토큰을 사용하면 사용법 등을 추적하여 대부분의 사람들이 사이트를 빠는 것을 막을 수 있습니다. 그리고 가장 좋은 방법은 워터 마크가 재생되는 동안 동영상에 워터 마크를 삽입하는 것입니다. 따라서 도난 당해도 첫 번째 사람에게 다시 워터 마크를 공개하여 공개 할 수 있습니다.

+0

안녕하세요, 대단히 감사합니다. mod_xsendfile (내부 리다이렉트)과 같은 것을 사용하여 PHP auth 스크립트 뒤에 숨김으로써 의미가 있습니까? 한 토큰을 생성하는 데 사용할 메커니즘은 무엇입니까? (죄송합니다. 저는 웹 개발자가 아닙니다.) – stackoverflowfan

0

OWASP Top 10과 특히 숫자 8 인 failure to restrict URL access을 살펴볼 수 있습니다. 이는 효과적으로 시나리오입니다. 서버 수준에서 보안이 필요한 리소스가 있습니다. 장치 끝에서이 작업을 수행 할 수 없으며 장치에서 요청한 리소스의 위치를 ​​쉽게 찾을 수 있습니다.

그래서 리소스 (이 경우 동영상)에 대한 제어 권한을 얻습니다. 이 작업을 수행하는 방법은 서버 스택에 부분적으로 의존합니다. 예를 들어 IIS7에는 PDF, 이미지 및 비디오와 같은 모든 유형의 리소스에 대한 액세스 제어를 적용 할 수있는 통합 파이프 라인이 있습니다 (자세한 내용은 OWASP Top 10 for .NET developers part 8: Failure to Restrict URL Access 참조). 또는 인증을 위해 책임을 질 수있는 응용 프로그램 프록시 형식이 필요하고 비디오 내용을 전달해야합니다.

이것은 iPhone 문제보다는 웹 서버 문제에 더 가깝습니다. 서버에서 액세스 제어 권한을 얻는 데 중점을두면 iPhone 끝은 훨씬 간단한 과정이 될 것입니다.

관련 문제