In Flash Player können Sie
gemeinsame Objekte
verwenden, bei denen es sich um ActionScript-Objekte handelt, die sich außerhalb einer SWF-Datei befinden, entweder lokal auf dem Dateisystem eines Benutzers oder remote auf einem RTMP-Server. Gemeinsame Objekte sind, wie andere Medien in Flash Player, in Sicherheits-Sandboxen partitioniert. Das Sandbox-Modell für gemeinsame Objekte ist jedoch etwas anders, da gemeinsame Objekte keine Ressourcen darstellen, auf die domänenübergreifend zugegriffen wird. Stattdessen werden gemeinsame Objekte immer aus einem gemeinsamen Objektspeicher abgerufen, der nur für die Domäne einer SWF-Datei gilt, die Methoden der SharedObject-Klasse abruft. Ein Speicher für gemeinsame Objekte ist im Allgemeinen noch spezifischer als die Domäne einer SWF-Datei. Standardmäßig verwendet jede SWF-Datei einen Speicher für gemeinsame Objekte, der für die gesamte Ursprungs-URL spezifisch ist. Weitere Informationen zu gemeinsamen Objekten finden Sie unter
Gemeinsame Objekte
.
Eine SWF-Datei kann den Parameter
localPath
der Methoden
SharedObject.getLocal()
und
SharedObject.getRemote()
verwenden, um einem Speicher für gemeinsame Objekte nur einen Teil der URL zuzuweisen. Auf diese Weise kann die SWF-Datei das gemeinsame Nutzen mit anderen SWF-Dateien von anderen URLs zulassen. Auch wenn Sie
'/'
als
localPath
-Parameter übergeben, wird immer noch ein Speicherbereich für gemeinsame Objekte angegeben, der nur in der eigenen Domäne gültig ist.
Benutzer können den Zugriff auf gemeinsam genutzte Objekte über das Flash Player-Dialogfeld „Einstellungen“ oder über den Einstellungsmanager einschränken. Für gemeinsam genutzte Objekte gilt standardmäßig eine Obergrenze von 100 KB an Daten pro Domäne. Administratoren und Benutzer können auch Einschränkungen für Schreibberechtigungen auf das Dateisystem festlegen. Weitere Informationen finden Sie unter
Kontrolloptionen für Administratoren
und
Kontrolloptionen für Benutzer
.
Durch Einstellen von
true
für den Parameter
secure
der
SharedObject.getLocal()
- oder
SharedObject.getRemote()
-Methode können Sie angeben, dass ein gemeinsames Objekt sicher ist. Folgendes müssen Sie beim Parameter
secure
beachten:
-
Falls dieser Parameter auf
true
gesetzt wird, erstellt Flash Player ein neues sicheres gemeinsam genutztes Objekt oder ruft einen Verweis auf ein vorhandenes sicheres gemeinsam genutztes Objekt ab. Dieses sichere gemeinsam genutzte Objekt kann nur durch SWF-Dateien gelesen oder geschrieben werden, die über HTTPS bereitgestellt werden und
SharedObject.getLocal()
mit der Einstellung
true
für den
secure
-Parameter aufrufen.
-
Wenn dieser Parameter auf
false
gesetzt wird, erstellt Flash Player ein neues gemeinsames Objekt oder ruft den Verweis auf ein vorhandenes gemeinsames Objekt ab, das durch SWF-Dateien gelesen oder geschrieben werden kann, die über andere Verbindungen als HTTPS bereitgestellt werden.
Wenn die aufrufende SWF-Datei nicht von einer HTTPS-URL stammt, löst das Einstellen von
true
für den Parameter
secure
der
SharedObject.getLocal()
- oder
SharedObject.getRemote()
-Methode eine SecurityError-Ausnahme aus.
Die Auswahl eines Speichers für ein gemeinsames Objekt basiert auf der Ursprungs-URL der SWF-Datei. Dies gilt auch in den zwei Situationen, in denen eine SWF-Datei nicht von einer einfachen URL stammt. beim importierten Laden und beim dynamischen Laden. Importiertes Laden bezieht sich auf eine Situation, in der Sie eine SWF-Datei laden und in der die
LoaderContext.securityDomain
-Eigenschaft auf
SecurityDomain.currentDomain
eingestellt ist. In einer solchen Situation hat die geladene SWF-Datei eine Pseudo-URL, die mit der Domäne der ladenden SWF-Datei beginnt und dann die tatsächliche Ursprungs-URL angibt. Dynamisches Laden bezieht sich auf das Laden einer SWF-Datei mit der
Loader.loadBytes()
-Methode. In dieser Situation hat die geladene SWF-Datei eine Pseudo-URL, die mit der vollständigen URL der ladenden SWF-Datei beginnt, gefolgt von einer Integer-ID. In beiden Fällen, sowohl beim importiertem Laden als auch beim dynamischen Laden, kann die Pseudo-URL der SWF-Datei mit der Eigenschaft
LoaderInfo.url
ermittelt werden. Die Pseudo-URL wird bei der Auswahl eines Speichers für gemeinsame Objekte genau so wie eine reale URL behandelt. Sie können einen Parameter
localPath
für ein gemeinsames Objekt angeben, der die Pseudo-URL ganz oder teilweise verwendet.
Benutzer und Administratoren können die Verwendung von
gemeinsamen Objekte von Dritten
deaktivieren. Dies ist die Verwendung von gemeinsamen Objekten durch eine SWF-Datei, die in einem Webbrowser ausgeführt wird, wenn die Ursprungs-URL dieser SWF-Datei von einer anderen Domäne stammt als die URL, die in der Adressleiste des Browsers angezeigt wird. Benutzer und Administratoren können die Verwendung von gemeinsamen Objekten von Dritten aus Sicherheitsgründen deaktivieren, um auf diese Weise eine domänenübergreifende Verfolgung zu verhindern. Um diese Einschränkung zu vermeiden, können Sie sicherstellen, dass eine SWF-Datei, die gemeinsame Objekte verwendet, nur innerhalb der HTML-Seitenstrukturen geladen wird. Dies stellt sicher, dass die SWF-Datei aus der gleichen Domäne stammt, die in der Adressleiste des Browsers angezeigt wird. Wenn Sie versuchen, gemeinsame Objekte aus einer SWF-Datei von Dritten zu verwenden, und das Verwenden von gemeinsamen Objekten von Dritten deaktiviert ist, geben die
SharedObject.getLocal()
- und
SharedObject.getRemote()
-Methoden
null
zurück. Weitere Informationen finden Sie unter
www.adobe.com/de/products/flashplayer/articles/thirdpartylso
.