정책 파일에는 하나의
<cross-domain-policy>
태그가 있습니다. 그리고 이 태그에는 0개 이상의
<allow-access-from>
태그가 포함됩니다. 각
<allow-access-from>
태그에는
domain
이라는 속성이 있습니다. 이 속성은 정확한 IP 주소, 정확한 도메인 또는 와일드카드 도메인(임의의 도메인)을 지정합니다. 와일드카드 도메인은 다음 두 가지 방법 중 하나로 표시됩니다.
접미어는 점으로 시작해야 합니다. 그러나, 접미어를 가진 별표 문자는 앞의 점을 제외한 접미어만으로 구성되는 도메인과 일치할 수 있습니다. 예를 들어 xyz.com은 *.xyz.com에 속하는 것으로 간주됩니다. IP 도메인 형식에는 와일드카드를 사용할 수 없습니다.
다음 예제에서는 *.example.com, www.friendOfExample.com 및 192.0.34.166에서 시작되는 SWF 파일에 대한 액세스를 허용하는 URL 정책 파일을 보여 줍니다.
<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*.example.com" />
<allow-access-from domain="www.friendOfExample.com" />
<allow-access-from domain="192.0.34.166" />
</cross-domain-policy>
IP 주소를 지정하면 IP 구문(예: http://65.57.83.12/flashmovie.swf)을 사용하여 해당 IP 주소에서 로드된 SWF에만 액세스 권한이 부여됩니다. 도메인 이름 구문을 사용하여 로드된 SWF에는 액세스 권한이 부여되지 않습니다. Flash Player는 DNS 이름 확인을 수행하지 않습니다.
다음 예제와 같이 모든 도메인의 문서에 액세스할 수 있도록 허용할 수 있습니다.
<?xml version="1.0"?>
<!-- http://www.foo.com/crossdomain.xml -->
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
각
<allow-access-from>
태그에는 선택적인
secure
속성이 포함될 수 있으며 기본값은
true
입니다. 정책 파일이 HTTPS 서버에 있을 경우 HTTPS가 아닌 서버의 SWF 파일이 HTTPS 서버에서 데이터를 로드할 수 있도록 허용하려면 이 속성을
false
로 설정합니다.
secure
속성을
false
로 설정하면 HTTPS에서 제공하는 보안 기능이 손상될 수 있습니다. 특히 이 속성을
false
로 설정하면 보안 내용이 열려서 스누핑(snooping) 및 스푸핑(spoofing) 공격에 취약해집니다. 따라서
secure
속성을
false
로 설정하지 않아야 합니다.
로드할 데이터가 HTTPS 서버에 있고, 해당 데이터를 로드하는 SWF 파일이 HTTP 서버에 있는 경우에는 로드하는 SWF 파일을 HTTPS 서버로 이동하여 HTTPS의 보호를 받아 보안 데이터의 모든 복사본을 보관하는 것이 좋습니다. 그러나 로드하는 SWF 파일을 HTTP 서버에 두기로 결정한 경우에는 다음 코드에 표시된 대로
secure="false"
속성을
<allow-access-from>
태그에 추가합니다.
<allow-access-from domain="www.example.com" secure="false" />
액세스를 허용하는 데 사용할 수 있는 다른 요소는
allow-http-request-headers-from
태그입니다. 이 요소는 다른 권한 도메인의 내용을 호스팅하는 클라이언트가 사용자 정의 머리글을 사용자 도메인으로 보낼 수 있도록 허용합니다.
<allow-access-from>
태그는 사용자 도메인에서 데이터를 가져오는 권한을 다른 도메인에 부여하는 반면,
allow-http-request-headers-from
태그는 사용자 도메인에 머리글 형태로 데이터를 밀어넣는 권한을 다른 도메인에 부여합니다. 다음 예제에서는 모든 도메인이 현재 도메인에 SOAPAction 머리글을 보낼 수 있습니다.
<cross-domain-policy>
<allow-http-request-headers-from domain="*" headers="SOAPAction"/>
</cross-domain-policy>
allow-http-request-headers-from
문이 마스터 정책 파일에 있으면 호스트에 있는 모든 디렉토리에 적용됩니다. 그렇지 않으면 해당 문이 포함된 정책 파일의 디렉토리와 하위 디렉토리에만 적용됩니다.