2012-08-01 3 views
0

file.download (urlRequest);를 사용하는 AS3 스크립트를 만들 수있었습니다. - 이것은 웹에 액세스 할 수있는 위치를 참조 할 때 잘 작동합니다. 플래시가 서버에있는 위치를 참조하도록 할 수 있습니까? 가능한 한 안전하게 다운로드 할 수있는 파일을 만들고 싶습니다.AS3을 사용하여 웹에 액세스 할 수없는 서버에서 파일 다운로드

다운로드를 시작하기 위해 AS3에서 PHP 파일을 참조 할 수 있지만 Silverlight 응용 프로그램 내에서 브라우저 창을 사용할 때는 작동하지 않으므로 가능한 경우 다운로드를 수행해야합니다.

도움이 매우 감사합니다.

+0

플래시 FTP API가 있습니다. Google을 사용해야합니다. –

답변

0

아마도 서버에서 htaccess 규칙을 사용하고 계십니까? 요청이 다른 호스트/서버에서 시작된 경우 403 오류로 응답하십시오. 동일한 호스트/서버의 요청 인 경우 파일을 다운로드 하시겠습니까? 예를 들어

:

이 리퍼러 헤더가 위조 또는 브라우저에서 비활성화 할 수있는 액세스를 방지하는 가장 안전한 방법은 아닙니다
RewriteEngine on 
RewriteCond %{HTTP_REFERER} !^www.your-site.com [NC] 
RewriteRule .* - [F] 

.

또 다른 아이디어는 :

파일에 대한 URL은 PHP 스크립트를 통해 푸시됩니다. 요청의 IP 주소가 데이터베이스에 없으면 파일을 다운로드하지 마십시오. 플래시를 사용하여 IP 주소가있는 서버에 요청을 게시 한 다음 (서버가 데이터베이스의 화이트리스트에 ip를 추가 한 후) file.download(urlRequest)을 수행합니까?

다시하지 않는 것보다는 여전히

, 더 나은 ... 누군가가 파일을 가져 THEN, 자신의 IP를 게시 리퍼러 헤더를 스푸핑 수 있기 때문에 가장 안전한.

+0

도움을 주셔서 감사합니다. 나는 그것이 발견 될 수 있다고해도 어떤 보안이라도 나를 위해 조금 더 안전하다고 생각한다. 나는 오늘/as3 웹 서버에 직면하지 않는 디렉토리를 참조 할 수있는 PHP 스크립트처럼 서버에 액세스 할 수 없습니다 하루의 끝 부분에 가져 가라. – GrantPeck83

+0

불행히도 아닙니다. Flash는 클라이언트 측에서 직접 서버와 통신 할 수 없습니다. –

+0

내가 생각하기에 ... 나는 당신의 방법 중 하나를 구현하려고 노력할 것이다. – GrantPeck83

관련 문제