flash player 7 dan akses file diluar domain

Di project ruby on rails yang sedang saya kerjakan, dia mempunyai sebuah fitur untuk membuat design produk menggunakan flash.
Sangat kreatif. Jadi singkatnya gini, aplikasi web ini adalah sebuah online store yang menjual produk yang dibungkus dengan desain tertentu. Desain-desain tersebut berasal dari si pemilik online store tersebut, dari member yang membuat desain kemudian menguploadnya, atau dari user yang mem-personalize desain-desain yang sudah ada menggunakan fitur desainer menggunakan flash.

Setiap desain produk bisa di personalize semau kita, caranya mudah dengan memilih menu untuk personalize dan si user yang ingin mempersonalize tersebut akan dibawa ke halaman yang berisi product desainer menggunakan flash.
Nah ini dia, masalahnya timbul disini. Karena saya belum tahu tentang tata cara me-load file gambar dari luar flash, si gambar (desain produk) yang ingin dipersonalize tersebut tidak muncul di canvas flash tersebut. Saya pikir karena kesalahan path/url saja, dan sudah saya cek tidak ada masalah. Tapi kenapa si gambar tidak juga muncul di canvas..??

Mulailah saya googling, dan saya terkejut, bahwa saya menemukan sesuatu yang tidak saya duga sebelumnya. Saya menemukan artikel dari Technote Adobe yang notabene adalah pemilik dan pengembang dari flash. Artikel itu saya temukan disini:

http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14213

Langsung saja..
Ternyata, untuk Macromedia Flash Player 7 (browser saya firefox 3 for linux dan menggunakan flash player 7) terdapat sedikit perubahan dalam hal pengaksesan file diluar flash(untuk aplikasi flash yang di-host di internet, maksudnya adalah diluar domain) dengan alasan security.

Sebagai peningkatan untuk Flash Player 7, domain yang data/file-nya ingin diload oleh sebuah aplikasi flash, harus menyediakan pengidentifikasian bahwa data dia bisa dibaca dari luar domain tertentu. Dengan perubahan ini, subdomain juga tidak bisa membaca data dari domain utama bila tidak diberikan hak untuk mengaksesnya, hal ini juga berlaku sebaliknya, domain utama tidak bisa membaca data subdomain jika tidak diberikan hak akses.

Trus, bagaimana cara memberikan hak akses tersebut?
Sesuai dengan ketentuan yang diberlakukan untuk Flash Player 7, kita dapat mengatur hak akses tersebut dengan menggunakan cross-domain policy files. Sebuah file policy adalah file dengan format XML yang berisi ketentuan mengenai pengaturan hak akses kepada domain yang diijinkan. nama file yang digunakan adalah crossdomain.xml dan diletakkan di direktory root server. Untuk beberapa server tertentu, yang dimaksud direktory root adalah public_html.

Contoh secara sederhana adalah seperti ini:

<?xml version="1.0"?>

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>

<allow-access-from domain="www.namadomain.com" />

</cross-domain-policy>


Contoh untuk penggunaan yang lebih lanjut:

Memberikan hak akses untuk seluruh subdomain.

<?xml version="1.0"?>

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>

<allow-access-from domain="*.namadomain.com" />

</cross-domain-policy>


Memberikan hak akses untuk subdomain tertentu atau local server.

<?xml version="1.0"?>

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>

<allow-access-from domain="hr.namadomain.com" />

<allow-access-from domain="it.namadomain.com" />

<allow-access-from domain="hr" /><allow-access-from domain="it" />

</cross-domain-policy>


Memberikan hak akses untuk semua domain (public)

<?xml version="1.0"?>

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>

<allow-access-from domain="*" />

</cross-domain-policy>


Untuk secure server yang ingin memberikan hak akses dengan menggunakan protokol non-secure.

<?xml version="1.0"?>

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>

<allow-access-from domain="www.namadomain.com" secure="false" />

</cross-domain-policy>


Untuk informasi menyeluruh tentang policy baru yang berlaku silakan lihat di Security Changes in Macromedia Flash Player 7.

Tags: ,

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>