Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Netzwerke><?php echo $xxxxx?> verstecken/maskieren?

<?php echo $xxxxx?> verstecken/maskieren?

wurzelmac25.04.1716:05
Ich hätte gerne die Variable (APIkey) innerhalb einer php-Seite für den Besucher unsichtbar bzw. "maskiert".

Hintergrund: "Bei der Einbindung ins System sollte darauf geachtet werden, dass der APIkey und die damit erzeugten URLs nicht für den Zwischen- und Endnutzer sichtbar sind."

Das <php echo> sollte also für den Browser ausführbar, aber für den Besucher unsichtbar sein... Geht das überhaupt?

Danke!
0

Kommentare

MetallSnake
MetallSnake25.04.1716:19
php ist nicht für den Browser ausführbar. Das läuft auf dem Server.

echo ist Ausgabe an den Benutzer.

Für eine Einbindung von irgendwas braucht man kein echo. Was versuchst du denn da überhaupt?
„Das Schöne an der KI ist, dass wir endlich einen Weg gefunden haben, wie die Wirtschaft weiter wachsen kann, nachdem sie jeden Einzelnen von uns getötet hat.“
+1
KarstenM
KarstenM25.04.1716:19
wurzelmac
Das <php echo> sollte also für den Browser ausführbar, aber für den Besucher unsichtbar sein... Geht das überhaupt?

Du kannst den APIkey mit diversen Encodings im SeitenQuelltext maskieren. Aber auch hier kann ein versierter Nutzer das ganze sicher zurückwandeln.
Hast du eine Benutzeranmeldung? Wenn ja kannst du vielleicht mit Sessions arbeiten. Oder du setzt ein permanentes Cookie. Deine Beschreibung macht es gerade nicht einfach dir einen konkreten Tip zu geben.

Gruß
0
wurzelmac25.04.1716:28
MetallSnake
php ist nicht für den Browser ausführbar. Das läuft auf dem Server.

echo ist Ausgabe an den Benutzer.

Für eine Einbindung von irgendwas braucht man kein echo. Was versuchst du denn da überhaupt?
Ich versuche, in einer Website den Aufruf eines Bildes ( ) innerhalb meiner Website zu ermöglichen und den apikey zu verstecken. Das Meteogramm von Basel wird von Meteoblue allgemein angeboten und ist NICHT der API, den ich zu maskieren versuche.
0
wurzelmac25.04.1716:33
KarstenM
Du kannst den APIkey mit diversen Encodings im SeitenQuelltext maskieren. Aber auch hier kann ein versierter Nutzer das ganze sicher zurückwandeln.
Ja, das wäre schon mal was - ich denke nicht, dass meine Seite ( wetter.unterwurzacher.at ) das ultimative Ziel von "versierten" Nutzern sein wird.
0
Olbi25.04.1717:43
Normalerweise löst man das so, dass Du sozsagen ein Proxy-Skript auf Deiner Seite einbaust. Das ist ein PHP-Skript und darin benutzt Du den API-Key um z.B. ein Bild von my.meteoblue.com herunterzuladen und auszugeben. Den Pfad zu diesem Skript setzt Du dann als img src. Somit ist der API-Key vor dem Benutzer verborgen und Du kannst sogar ggf. einen Cache für die heruntergeladenen Bildern anlegen - sofern das die Nutzungsbedingungen von meteoblue.com zulassen.

Es ist auch gut möglich, dass der API-Key eh nu auf Deiner Domain funktioniert. So läuft es z.B. mit den API-Keys von Google Maps ab. Da ist es auch egal, ob Du meinen Google Maps API-Key hast, weil er eben nur auf Domains funktioniert, die ich whiteliste.
0
Tobi105125.04.1717:51
Wenn ich das richtig verstanden haben, möchtest Du ein Bild über eine Ressource laden, die einen API-Key enthält. Dieser API-Key soll aber nicht nach Außen hin sichtbar sein. Du kannst also nicht das Bild über diese Resource direkt aufrufen.

Es gäbe da mehrere Möglichkeiten, um das zu erreichen. Das maskieren der Adresse geht zwar. Aber wer den API-Key haben möchte, kann das sehr einfach knacken.

Eine andere Möglichkeit wäre, das Bild temporär in einen lokalen Cache zu laden und auf der Webseite dann das Bild mit der Cache-Adresse anzuzeigen.

Oder man baut einen Rewrite der URL. Man ruft über eine interne URL die offizielle Adresse auf.

Beide Varianten hätte den Vorteil, dass der API-Key für den Webseitenbesucher nicht einsehbar wäre.
0
wurzelmac26.04.1712:43
Danke euch allen für die Hilfe - ich werde sehen, welche der Lösungen zum Umsetzen für mich geeignet sind.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.