Knowledge/Internet·Story

Flash 매개변수 allowNetworking로 네트워킹 API 및 외부링크 제한

서 태평 2009. 2. 27. 22:06

아래와 같이 HTML 페이지의 <object> 및 <embed> 태그에서 allowNetwork 매개변수를 설정하여 네트워크 기능에 대한 SWF 파일의 엑세스를 제어할 수 있습니다.

  • all - 모든 네트워크 API 허용 ( 기본 )
  • internal - 브라우저 내비게이션이나 브라우저 상호 작용 API 사용 제한
  • none - 모든 네트워크 API 제한

특별히 외부 링크를 제한하거나 Flash 내부적으로 타 사이트와의 통신을 제한하고자 할때 사용하면 좋습니다.

<object width="425" height="344">
<param name="x-x-allowscriptaccess" value="never" />
<param name="allowNetworking" value="internal" />
<param name="movie" value="http://www.youtube.com/v/Hnr72gZlTzs&color1=0xb1b1b1&color2=0xcfcfcf&hl=ko&fs=1"></param>
<param name="allowFullScreen" value="true"></param>
<embed src="http://www.youtube.com/v/Hnr72gZlTzs&color1=0xb1b1b1&color2=0xcfcfcf&hl=ko&fs=1"
invokeURLs="false" autostart="false"
x-x-allowscriptaccess="never"
allowNetworking="internal"

type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed>
</object>

 

internal 시 제한 API

  • navigateToURL()
  • fscommand()
  • ExternalInterface.call()

none 시 제한 API ( internal 포함 )

  • sendToURL()
  • FileReference.download()
  • FileReference.upload()
  • Loader.load()
  • LocalConnection.connect()
  • LocalConnection.send()
  • NetConnection.connect()
  • NetStream.play()
  • Security.loadPolicyFile()
  • SharedObject.getLocal()
  • SharedObject.getRemote()
  • Socket.connect()
  • Sound.load()
  • URLLoader.load()
  • URLStream.load()
  • XMLSocket.connect()

* 네이버의 경우는 허가되지 않은 주소인 경우는 아래와 같이 자동으로 해당 매개변수를 추가합니다. 아마도 외부링크를 제한하고 하는 것 같습니다.

<EMBED invokeURLs="false" autostart="false"  x-x-allowscriptaccess="never" allowNetworking="internal" src="http://www.youtube.com/v/Hnr72gZlTzs&color1=0xb1b1b1&color2=0xcfcfcf&hl=ko&fs=1" width="54" height="96" type="application/x-shockwave-flash" allowfullscreen="true"></EMBED>

참고