Seite 1 von 1

Direkter Aufruf verhindern

Verfasst: 26.11.2004, 14:59
von Promo
Hallo,

ich hab da mal eine kleine Frage, und da ich noch recht neu auf dem Gebiet bin, bitte nicht gleich erschlagen, hab hier schon rumgesucht aber leider nicht die richtigen Ansätze gefunden.

Also folgendes Problem:
ich binde in einer .php datei flash ein die z.B. hier liegen./games/game1/game.swf. Nun möchte ich erreichen das die .swf nur über die datei aufzurufen ist (also wenn die URL zur swf direkt aufgerufen wird eine Fehlermeldung o.ä. kommt).

Ich habe das mit .htacces versucht, klappt aber nicht. Nun dachte ich das es evtl. möglich ist per mod_rewrite eine andere URL vorzugaukeln (irgendwas mit Alias habe ich hier gelesen), das falls das .swf direkt aufgerufen wird wieder auf die php datei verwiesen wird.

Das direkte verlinken von anderen Seiten kriege ich (bedingt hin), nur leider klappt es nicht wenn die URL direkt aufgerufen wird.

Hat da irgendjemand einen Ansatz/Lösung das ich den direkten Aufruf verhindern kann (man brauch ja nur in den Ouelltext schauen, schon hat man den Pfad zur .swf) Die .swf selber kann ich nicht bearbeiten, und das geht da glaube ich auch nicht. Irgendwie muss das doch zu machen sein wenn ich in dem Verzeichnis wo die swf liegt eine .htaccess reinlege oder?

Oder gibt es eine andere Möglichkeit den direkten Aufruf zu verhindern?

Grüße und danke schon mal

Edit:
Nachtrag. Mit cookie habe ich auch schon probiert, also bei dem Aufruf der Datei das cookie gesetzt und im verzeichnis wo die .swf liegen in der htaccess nach dem cookie gefragt, hat aber irgendwie auch nicht geklappt, und funzt ja auch nur wenn cookies akzeptiert werden.

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 26.11.2004, 15:18
von chio
Hallo!
Ich nehme an, du willst das Klauen verhindern.

Mit Flash habe ich null Erfahrung, aber mit Shockwave. Hier würde ich den Ansatz eher über Flash selbst suchen, wenn das möglich ist.
Sprich: das swf sollte sich selbst abchecken, ob es aus dem richtigen Verzeichnis und in der richtigen Seite startet.

Meine Shockwave-dcr kann man zwar hotlinken, aber nicht aus einem anderen Verzeichnis starten. Theoretisch könnte ich auch das Hotlinken verhindern, aber mit einem deutlichen Quellenhinweis sehe ich es als Werbefläche...

lg
chio

Verfasst: 26.11.2004, 15:27
von Promo
Hallo,

erstmal danke für die schnelle Antwort, das ist es ja leider ich googel jetzt schon seit 2 Tg. rum aber habe leider nicht das richtige gefunden. An die flash komme ich ja selber nicht ran, sonst würde ich einfach einen string übergeben, und den dann abfragen... Aber bei shockwave ist es doch das selbe oder ? Wenn ich da die direkte URL angebe startet der auch ganz normal, oder hast du da einen Ansatz, vielleicht kann man daraus etwas ableiten?

Grüße

Verfasst: 26.11.2004, 15:34
von chio
An die flash komme ich ja selber nicht ran..
Naja, dann geht es so nicht.

Gibt aber was, wie das Hot-Linking (von Bildern) verhindert wird, serverseitig: Wird der Referrer auf das jpg, gif oder auch swf ausgelesen. Vielleicht suchst du da mal.

lg
chio

Verfasst: 26.11.2004, 15:42
von Nikochan
Ich würde das auch mal via .htaccess ausprobieren

Code: Alles auswählen

RewriteEngine On 
RewriteCond %{HTTP_REFERER} !^http://.*deinedomain\.de/.*$ [NC] 
RewriteCond %{HTTP_REFERER} !^http://.*deinedomain\.de*$ [NC] 
RewriteCond %{HTTP_REFERER} !^$ 
RewriteRule ^(.*)swf$ http://www.deinedomain.de/nohotlinking.gif [L,R]
Ohne Gewähr...

Verfasst: 26.11.2004, 15:43
von Promo
Hallo,

@chio:
ja das hatte ich schon, aber scheinbar hatte ich die .htaccess irgendwie falsch:

[code]
<FilesMatch "\.(swf)$">
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain.de/.* [NC]
RewriteRule .*\.(swf)$ - [F]
</FilesMatch>
[/code]

Irgendwie habe ich die ins falsche Verzeichnis gelegt, und ich bekomme das auch nicht hin, nur das betroffene Verzeichnis anzusprechen...

Und das funktioniert glaube ich nur von von anderen Domains verlinkt wird (ging bei mir auch), nur wenn jemand direkt die URL eingibt die er wie gesagt ja leicht über den Quelltext bekommt funktioniert das nicht, und gerade das möchte ich verhindern...

@Nikochan:
Auch das hatte ich schon... selbe Problem wie oben.

Grüße

Verfasst: 26.11.2004, 16:55
von shapeshifter
Vergiss es - sämtliche Versuche ein .swf oder ein .dcr file zu verstecken oder mit no-cache-optionen aus dem browsercache rauszuhalten schlagen fehl. Mann bekommts IMMER, wenn man will. Das einzige was du tun könntest wär den kompletten Actionscript-Code auszulagern und ihn nur vom swf aus verfügbar zu machen, wenn z.B. durch PHP die Datei allein von der IP deines Servers aufgerufen wird. Somit schützt du zumindest deinen Code und der Dieb bekommt nur ein leeres SWF, welches jenseits deines Servers nicht funktioniert.

gruss,

shapeshifter

Verfasst: 26.11.2004, 17:13
von chio
Kommt man bei Flash an den Actionscript-Code??

Meine Shockwave-Sachen fragen einfach ab, von welcher URL sie gestartet worden sind und verweigern eventuell den Dienst.
Aber klar, dazu muss man in den Code.
lg
chio

Verfasst: 26.11.2004, 17:18
von shapeshifter
Klar kommt man an den Code - gibt doch dutzende Tools, die dir alle Grafiken und Soundfiles aus nem SWF oder DCR rausholen und dir den Code fein säuberlich anzeigen....

Dagegen hilft nur besagte Auslagerung oder der swf-scrambler.......der verstümmelt den Code bis zur Unkenntlichkeit.

gruss,

shapeshifter

Verfasst: 26.11.2004, 17:27
von chio
Von Flash habe ich wenig Ahnung, aber dass man aus DCR auch den Code herausholen kann? (Bilder und Text, ja)
Und dann noch ändern und wieder speichern können? - glaub ich nicht...
Außerdem glaube ich nicht, dass sich viele Leute die Mühe machen.

@Promo: Das Klauen - wenns dir darum geht - wirst du wohl nie ganz verhindern können. Ich sehe das aber nicht so dramatisch, solange du sichtbar und klickbar in jedem swf einen Link auf die Quelle hast.
lg
chio

Verfasst: 26.11.2004, 18:57
von Promo
Hallo,

erst mal danke für die Tipps. Und na ja ums klauen ging es mir zwar nicht so direkt, mit dem cache usw. ist mir schon bewußt...

Ich wollte halt nur irgendwie verhindern, das jemand die URL zum .swf direkt aufruft, aber das scheint wohl nicht möglich zu sein, oder ich habe da jetzt irgendwo einen denkfehler. Mit downloads z.B. habe ich das auch, wenn die angefordert werden, geht das erst über ein script, so das der downloadpfad nicht ersichtlich ist. Ich dachte halt das wäre mit den .swf auch irgendwie möglich, so das es halt nicht ganz so leicht ist, und ich die Aufrufe dabei gleichzeitig mitloggen kann.

Aber wie gesagt, so die große Ahnung habe ich davon leider nicht. Falls jemand trotzdem eine Lösung parat hat, wär schon toll.

@shapeshifter: Das sind dann aber alles so böse Programme oder? Und genau das will man ja selber nicht.

Grüße