15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Validierung von XML-Signaturen in AIR<br />

Implementieren der IURIDereferencer-Schnittstelle<br />

Adobe AIR 1.5 und höher<br />

Für die Validierung einer XML-Signatur müssen Sie eine Implementierung der IURIDereferencer-Schnittstelle<br />

bereitstellen. Die Implementierung ist dafür zuständig, die URIs innerhalb der Reference-Elemente eines XML-<br />

Signaturdokuments aufzulösen und die Daten zurückzugeben, damit der Digest berechnet werden kann. Der<br />

berechnete Digest wird mit dem Digest in der Signatur verglichen, um festzustellen, ob die referenzierten Daten seit<br />

dem Erstellen der Signatur geändert wurden.<br />

Hinweis: HTML-basierte AIR-Anwendungen müssen eine SWF-Bibliothek importieren, die eine ActionScript-<br />

Implementierung enthält, um XML-Signaturen zu validieren. In JavaScript kann die IURIDereferencer-Schnittstelle<br />

nicht implementiert werden.<br />

Die IURIDerefencer-Schnittstelle verfügt über eine einzelne Methode, dereference(uri:String), die<br />

implementiert werden muss. Das XMLSignatureValidator-Objekt ruft diese Methode für jeden Verweis in der<br />

Signatur aus. Die Methode muss die Daten in einem ByteArray-Objekt zurückgeben.<br />

In den meisten Fällen müssen Sie auch Eigenschaften oder Methoden hinzufügen, mit denen das Dereferencer-Objekt<br />

die referenzierten Daten finden kann. Wenn sich die signierten Daten zum Beispiel in demselben Dokument wie die<br />

Signatur befinden, können Sie eine Mitgliedsvariable hinzufügen, die einen Verweis auf das XML-Dokument<br />

bereitstellt. Die dereference()-Methode kann diese Variable dann zusammen mit dem URI verwenden, um die<br />

referenzierten Daten zu suchen. Befinden sich die signierten Daten dagegen in einem Verzeichnis des lokalen<br />

Dateisystems, benötigt die dereference()-Methode möglicherweise eine Eigenschaft, die den Pfad zu diesem<br />

Verzeichnis angibt, damit die referenzierten Dateien gefunden werden.<br />

Die XMLSignatureValidator-Klasse verlässt sich bei der Interpretation von URI-Strings vollständig auf den<br />

Dereferenzierer. Die Standardregeln für die Dereferenzierung von URIs sind in Abschnitt 4.3.3 der W3C-Empfehlung<br />

für die Syntax und Verarbeitung von XML-Signaturen aufgeführt.<br />

Dereferenzieren von URIs in umhüllten Signaturen<br />

Adobe AIR 1.5 und höher<br />

Wenn eine umhüllte XML-Signatur generiert wird, werden die Signaturelemente in die signierten Daten eingefügt.<br />

Wenn Sie zum Beispiel die folgende Meldung mit einer umhüllten Signaturstruktur signieren:<br />

<br />

...<br />

<br />

Dann sieht das signierte Dokument folgendermaßen aus:<br />

Letzte Aktualisierung 27.6.2012<br />

915

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

Saved successfully!

Ooh no, something went wrong!