15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Sicherheit<br />

Wenn eine Anwendung installiert wird, werden alle Dateien, die im AIR-Paket enthalten sind, in einem<br />

Anwendungsverzeichnis auf dem Computer des Benutzers installiert. Entwickler können im Code über das app:/-<br />

URL-Schema (siehe „URI-Schemas“ auf Seite 863) auf dieses Verzeichnis verweisen. Alle Dateien in der<br />

Anwendungsverzeichnisstruktur werden der Anwendungs-Sandbox zugewiesen, wenn die Anwendung ausgeführt<br />

wird. Inhalt in der Anwendungs-Sandbox ist mit allen Berechtigungen versehen, die für eine AIR-Anwendung<br />

verfügbar sind, darunter auch für die Interaktion mit dem lokalen Dateisystem.<br />

Viele AIR-Anwendungen verwenden nur diese lokal installierten Dateien, um die Anwendung auszuführen. AIR-<br />

Anwendungen sind jedoch nicht auf die Dateien im Anwendungsverzeichnis beschränkt; sie können jeden Dateityp<br />

von jeder beliebigen Quelle laden. Dazu gehören lokale Dateien auf dem Computer des Benutzers sowie Dateien aus<br />

verfügbaren externen Quellen, zum Beispiel von einem lokalen Netzwerk oder aus dem Internet. Der Dateityp hat<br />

keinen Einfluss auf Sicherheitsbeschränkungen; geladene HTML-Dateien haben dieselben Sicherheitsberechtigungen<br />

wie geladene SWF-Dateien aus derselben Quelle.<br />

Inhalt in der Anwendungs-Sandbox hat Zugriff auf AIR-APIs, auf die Inhalt in anderen Sandboxen nicht zugreifen<br />

kann. Zum Beispiel ist die air.NativeApplication.nativeApplication.applicationDescriptor-Eigenschaft,<br />

die den Inhalt der Anwendungsdeskriptordatei für eine Anwendung zurückgibt, auf den Inhalt in der Sicherheits-<br />

Sandbox der Anwendung beschränkt. Ein weiteres Beispiel einer beschränkten API ist die FileStream-Klasse, die<br />

Methoden für das Lesen und Schreiben im lokalen Dateisystem enthält.<br />

ActionScript-APIs, die nur für Inhalt in der Sicherheits-Sandbox der Anwendung zur Verfügung stehen, sind im<br />

ActionScript 3.0-Referenzhandbuch für die Adobe Flash-Plattform mit dem AIR-Logo gekennzeichnet. Wenn Sie diese<br />

APIs in anderen Sandboxen verwenden, gibt die Laufzeitumgebung eine SecurityError-Ausnahme aus.<br />

Bei HTML-Inhalt (in einem HTMLLoader-Objekt) sind alle AIR-JavaScript-APIs (diejenigen, die über die<br />

window.runtime-Eigenschaft verfügbar sind, oder über das air-Objekt, wenn die Datei „AIRAliases.js“ verwendet<br />

wird) für Inhalt in der Anwendungs-Sandbox verfügbar. HTML-Inhalt in anderen Sandboxen hat keinen Zugriff auf<br />

die window.runtime-Eigenschaft, deshalb kann dieser Inhalt nicht auf die AIR- oder Flash Player-APIs zugreifen.<br />

Für Inhalt, der in der AIR-Anwendungs-Sandbox ausgeführt wird, gelten die folgenden zusätzlichen<br />

Einschränkungen:<br />

Für HTML-Inhalt in der Anwendungs-Sandbox gibt es Beschränkungen bezüglich der Verwendung von APIs, die<br />

Strings dynamisch in ausführbaren Code umwandeln, nachdem der Code geladen wurde. Auf diese Weise wird<br />

verhindert, dass die Anwendung ungewollt Code aus anderen Quellen als der Anwendung (zum Beispiel von<br />

potenziell unsicheren Netzwerkdomänen) einfügt und ausführt. Ein Beispiel ist die Verwendung der eval()-<br />

Funktion. Ausführliche Informationen finden Sie unter „Codebeschränkungen für Inhalt in unterschiedlichen<br />

Sandboxen“ auf Seite 1147.<br />

Um mögliche Phishing-Angriffe zu verhindern, werden img-Tags in HTML-Inhalten in ActionScript-TextField-<br />

Objekten in SWF-Inhalten in der Anwendungs-Sandbox ignoriert.<br />

Inhalt in der Anwendungs-Sandbox kann das asfunction-Protokoll in HTML-Inhalt in ActionScript 2.0-<br />

Textfeldern nicht verwenden.<br />

SWF-Inhalt in der Anwendungs-Sandbox kann den domänenübergreifenden Cache nicht nutzen. Diese Funktion<br />

wurden mit Flash Player 9 Update 3 eingeführt. Damit kann Flash Player Adobe-Plattformkomponenteninhalt<br />

zwischenspeichern und bei Bedarf in geladenen SWF-Inhalten wiederverwenden (sodass der Inhalt nicht<br />

mehrmals neu geladen werden muss).<br />

Letzte Aktualisierung 27.6.2012<br />

1105

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!