Micha: Wie verhindern, daß User selber Variablen per URL füllt?

Hi,

ich übergebe in  meinem Script viele Variablen per URL. Gibt es eine Möglichkeit, daß das Script diese Variablen mit Inhalt nur dann akzeptiert, wenn sie von meinem Script an die URL angehängt werden und nicht, wenn der User das per Hand macht?

Grüße
Micha

  1. Hello,

    ich übergebe in  meinem Script viele Variablen per URL. Gibt es eine Möglichkeit, daß das Script diese Variablen mit Inhalt nur dann akzeptiert, wenn sie von meinem Script an die URL angehängt werden und nicht, wenn der User das per Hand macht?

    statische Variablenliste: einfach auf nix anderes reagieren, dynamische Variablenliste: Sessions, generelle: auf Post umsteigen, oder soll das Script mit den Parametern in Suchmaschinen erscheinen?

    Gibt es irgend einen Grund, mit GET zu arbeiten?

    Bei Post kann man auch ein hidden-Feld mit allen Werten und Typen mit übergeben: Datenarray -> serialize() -> base64_encode -> Client -> base64_encode -> unserialize() -> Datenarray

    Das gibt zumindest schon eine gewisse Sicherheit

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    1. Moin!

      statische Variablenliste: einfach auf nix anderes reagieren, dynamische Variablenliste: Sessions, generelle: auf Post umsteigen, oder soll das Script mit den Parametern in Suchmaschinen erscheinen?

      Der Umstieg auf POST ändert absolut nichts am grundsätzlichen Problem.

      Gibt es irgend einen Grund, mit GET zu arbeiten?

      Ja, den gibt es. Anders kriegt man Werte nicht mit einem gewöhnlichen Link übermittelt. Und das will man vielleicht. Suchmaschinen drücken keine Submit-Buttons.

      - Sven Rautenberg

      --
      "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
      (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
      1. Falsch.
        Wenns unbedingt ein Link sein soll, gibts immer noch Session-Cookies.
        Zugegeben ist das allerdings das Ende für die Suchmaschine.

        Andi

        1. Huhu Andi

          Falsch.

          Nö, wieso denn?

          Wenns unbedingt ein Link sein soll, gibts immer noch Session-Cookies.

          In der Session stehen aber nur die Parameter/ Daten die in der Session stehen.

          Wenn Du also per Link neue bzw. andere Parameter/ Daten übergeben möchtest/ musst bleibt Dir nur GET oder POST.

          (Oder man kodiert die Parameter-Werte in die URL und wertet das z.B. per rewrite-rules aus.)

          Mehr als diese drei Möglichkeiten sehe ich (zumindest um diese Uhrzeit) nicht.

          Viele Grüße

          lulu

          --
          bythewaythewebsuxgoofflineandenjoytheday
      2. Hello,

        statische Variablenliste: einfach auf nix anderes reagieren, dynamische Variablenliste: Sessions, generelle: auf Post umsteigen, oder soll das Script mit den Parametern in Suchmaschinen erscheinen?

        Der Umstieg auf POST ändert absolut nichts am grundsätzlichen Problem.

        Gibt es irgend einen Grund, mit GET zu arbeiten?

        Ja, den gibt es. Anders kriegt man Werte nicht mit einem gewöhnlichen Link übermittelt. Und das will man vielleicht. Suchmaschinen drücken keine Submit-Buttons.

        Genau das hatte ich doch gefragt. Was hast Du daran zu meckern?

        Bei Post kann man auch ohne Weiteres mal 5kbyte Hidden-Werte mitliefern. Das GET angeblich nicht beschränkt ist, wurde hier schon oft genug behauptet. Aber hast Du schon mal eine URL mit 5kbyte GET-Parametern versucht, zu bookmarken oder diese Datei mittels Datei/Speichern auf einem Netzwerklaufwerk abgelegt?

        Liebe Grüße aus http://www.braunschweig.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        1. Moin!

          Gibt es irgend einen Grund, mit GET zu arbeiten?

          Ja, den gibt es. Anders kriegt man Werte nicht mit einem gewöhnlichen Link übermittelt. Und das will man vielleicht. Suchmaschinen drücken keine Submit-Buttons.

          Genau das hatte ich doch gefragt. Was hast Du daran zu meckern?

          Wenn ich meckern würde, würde sich das anders anhören. Du hast eine Frage gestellt, ich habe eine Antwort gegeben.

          - Sven Rautenberg

          --
          "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
          (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
          1. Hello,

            Genau das hatte ich doch gefragt. Was hast Du daran zu meckern?

            Wenn ich meckern würde, würde sich das anders anhören. Du hast eine Frage gestellt, ich habe eine Antwort gegeben.

            Na gut, hol Dir ein Bier aus meinem Kühlschrank, und lass uns darauf anstoßen ;-P

            Liebe Grüße aus http://www.braunschweig.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
  2. Halte ich für schwierig.
    Das einzige wäre, wenn du eine Prüfziffer mit einbaust und dir z.B. eine kleine Funktion zum Berechnen schreibst.
    Meine Frage: Warum nicht per "POST" oder Session-Cookie? Funktioniert eigentlich immer.

    1. Halte ich für schwierig.
      Das einzige wäre, wenn du eine Prüfziffer mit einbaust und dir z.B. eine kleine Funktion zum Berechnen schreibst.
      Meine Frage: Warum nicht per "POST" oder Session-Cookie? Funktioniert eigentlich immer.

      Hi,

      danke an Euch beide für die Antworten.

      Per Session-Cookie: Wieviele Variablen kann ich da mitschleppen, ohne das die Geschwindigkeit leidet? Wie lange sind die Variablen gültig? Weil, oft ist ja nur ein begrenzter Gültigkeitszeitraum gewünscht.

      Per Post: Da bräuchte ich genauere Angaben, wie ich per "post" eine Variable per Link übergebe, weiß ich nicht :-(

      @Tom: "statische Variablenliste: einfach auf nix anderes reagieren"

      Was meinst Du damit?

      Grüße
      Micha

      1. Eine Variable als Link zu übergeben klingt schon sehr statisch :-)

        POST geht nur von einem Formular aus:
        <form action="neueseite.php" action="post">

        dann die Variablen:
        <input type="hidden" name="variable1" value="$variable1">

        und jetzt noch ein Knopf:
        <input type="submit" value"Abschicken">

        und wieder zu:
        </form>

        Das ganze wirst du wohl in ein echo packen, deshalb die "

        Zu Cookies:
        wie der Name schon sagt, gültig für eine Session, d.h. bis der Server verlassen wird (vereinfacht).
        Eine Session öffnen wirst du mit session_open();
        Das zu Beschreiben würde länger dauern, meine aber nicht, das es zu schwer ist. Du findest eine gute Beschreibung bei selfphp.teamone.de

        Gruß,
        Andi

        1. Moin!

          Zu Cookies:
          wie der Name schon sagt, gültig für eine Session, d.h. bis der Server verlassen wird (vereinfacht).

          Solange gültig, bis der Browser geschlossen wird.

          Eine Session öffnen wirst du mit session_open();

          Nein, session_start() ist richtig.

          Das zu Beschreiben würde länger dauern, meine aber nicht, das es zu schwer ist. Du findest eine gute Beschreibung bei selfphp.teamone.de

          Ähm... DIE Domain ist noch nicht registriert.

          Hm, schönes Beispiel zum "Was passiert da im Kopf?"-Posting von Erwin (http://forum.de.selfhtml.org/my/?t=66161&m=377089&aaf=1).

          - Sven Rautenberg

          --
          "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
          (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
          1. Hi,

            Hm, schönes Beispiel zum "Was passiert da im Kopf?"-Posting von Erwin (http://forum.de.selfhtml.org/my/?t=66161&m=377089&aaf=1).

            auch so ein Fehler?!   ;-)

            Gruss,
            Lude

            1. Moin!

              Hi,

              Hm, schönes Beispiel zum "Was passiert da im Kopf?"-Posting von Erwin (http://forum.de.selfhtml.org/my/?t=66161&m=377089&aaf=1).

              auch so ein Fehler?!   ;-)

              Ups... Das ist aber ein C&P-Fehler.

              [pref:t=66161&m=377089]

              Besser.

              - Sven Rautenberg

              --
              "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
              (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
            2. Ja helft Euch doch selber!!!
              Wer hat denn da noch Lust, echte Hilfen zu verfassen, wenn so ein Zipfelklatscher jedes Wort von dir auf die Goldwaage legt.

              session_destroy(); !!!

              1. Hello,

                Ja helft Euch doch selber!!!
                Wer hat denn da noch Lust, echte Hilfen zu verfassen, wenn so ein Zipfelklatscher jedes Wort von dir auf die Goldwaage legt.

                session_destroy(); !!!

                ätsch, ich hab man noch den "Session-Cookie" auf meinem Client und den schick ich Dir jetzt. Da klappt doch glatt die Session wieder auf unter derselben Nummer. Gute Nummern sollte man sich sowieso merken *ggg*

                Liebe Grüße aus http://www.braunschweig.de

                Tom

                --
                Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
  3. vielleicht irgedwas aus $server abfragen?
    keine ahnung, ob das sicher ist aber einfach ist es ;-)

    grüsse,
    andreas

  4. Hi,

    ich übergebe in  meinem Script viele Variablen per URL. Gibt es eine Möglichkeit, daß das Script diese Variablen mit Inhalt nur dann akzeptiert, wenn sie von meinem Script an die URL angehängt werden und nicht, wenn der User das per Hand macht?

    wenn ich Dich richtig verstanden habe, nein.

    Gruss,
    Lude

  5. Hallo,

    ich würde das Problem anders angehen. Was vom User kommt ist immer unsicher. Mehr oder weniger einfach kannst Du alles fälschen was von aussen reinkommt.
    Daraus folgt, dass Variablen die der User nicht sehen/ändern soll nur serverseitig in der Session verwaltet werden.
    Wenn der User an der URL rumpfuscht soll er damit nur Variablen manipulieren können, die er eh selber über Formulare... eingegeben hat. Falls die Folge der Manipulation ist, dass die Seite falsch dargetellt wird, ist das im allgemeinen kein wirkliches Problem, es dürfen nur keine Informationen abrufbar sein, auf die der User keinen Zugriff haben soll. Dafür musst Du dann aber eine Authentifizierung bemühen, und Session ID's vergeben, die nicht erratbar sind.

    Gruss

    Marko