Beitrag von Anita (23 Beiträge) am Sonntag, 13.März.2005, 20:32.
Übergabe von Logindaten an nächste Seite
Hallo, ich bin so happy, dass ich es mit Claus' neuem Passwortschutz für einzelne Einträge nun geschafft habe, mein Projekt aufzusetzen.
Nun habe ich bekanntlichermassen das Problem, dass ein User gleich in mehreren Tabellen Einträge hat. Ich möchte jedoch dem User ersparen, 4-5 mal seinen Login durchführen zu müssen.
Da die Tabellen in 1:n Beziehung stehen, kann ich sie nicht in einer Tabelle zusammenfassen.
Wie kann ich nach Abschluss der Arbeiten in der ersten DB die Logindaten gleich an die nächste Seite übergeben?
Gibt es die Möglichkeit, einen Link, der die Daten "mitnimmt" zu generieren? Ich glaube sowas schon mal gesehen zu haben.
Ist das dann noch zugriffssicher?
Für Beispiele wär ich dankbar.
Vielen Dank
Anita
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Montag, 14.März.2005, 14:50.
Re: Übergabe von Logindaten an nächste Seite
Ja, Übergabe geschieht mittels Parametern in Links oder (versteckt) in Formularen... Damit das (einigermassen) sicher ist, generiert man eine "session id", die nur für diese ein Anmeldung gilt - Lösungen gibts in der Bibliothek ,-)
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.März.2005, 16:10. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite
Hallo Anita, Hallo Christoph,
Muss da leider wiedersprechen, aber vielleicht sehe ich das jetzt auch falsch. Lasse mich da gerne korrigieren;-))
Wenn ich das jetzt richtig verstanden habe, möchte Anita von einer passwortgeschützen Seite auf die nächste passwortgeschütze Seite über einen Link kommen.
Das geht zwar grundsätzlich, aber dann ist es vorbei mit der Sicherheit, da jede Seite sowohl Name, sessionid und!! Passwort bei der Anmeldung verlangt. Um also eine Verlinkung herzustellen würde auch das Passwort mit übermittelt werden müssen!!, um überhaupt in den sid-geschützen Bereich zu gelangen.
Also entweder das Risiko auf sich nehmen, oder aber in den anderen Templates den Passwortschutz "aufweichen".
Sehe da so spontan, außer das ganze über Relation zu den restlichen Dateien (dann ohne bzw. geringen Schutz)zu verbinden, keine Möglichkeit.
Vielleicht hat ja ein Anderer eine Idee??
Gruß
Claus
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.März.2005, 16:14.
Re: Übergabe von Logindaten../falsch ausgedrückt;-)
Sorry,
>>>>Das geht zwar grundsätzlich, aber dann ist es vorbei mit der Sicherheit, da jede Seite sowohl Name, sessionid und!! Passwort bei der Anmeldung verlangt.
Meinte damit, das erst durch die Kombination von Namen und Passwortschutz die sid generiert wird. Also ist beim Verlinken sowohl Name als auch Passwort notwendig.
Claus
Antworten
Beitrag von richard (1187 Beiträge) am Montag, 14.März.2005, 17:14. WWW: posaunenchor-rhoden.de
Re: Übergabe von Logindaten../falsch ausgedrückt;-)
Na ja, die Übergabe von Name, Pw bei Aufruf einer neuen Seite ist so sicher bzw. unsicher wie die Übersendung der Daten schon bei der Anmeldung. Ohne https gibts da halt Möglichkleiten das abzufangen und auszuwerten, das gilt schon bei der Anmeldung.
Aber wenn man schon mal eine session id hat braucht man Name und Pw nicht mehr zu übergeben. Man muß dann allerdings bei der Anmeldung eine session anlegen, die sessionid (eventuell mit weiteren Angaben) also irgendwo speichern. Dann wird nur die session id übergeben und auf der neuen Seite wird nur geprüft ob eine gültige Session mit der übergebenen id vorhanden ist, also
Ausgabe des Seiteninhaltes
} ELSE {
loginformular
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.März.2005, 18:24. WWW: automobilhai.de
Re: Übergabe von Logindaten../gute Idee/gerade umgesetzt;-)
Hallo Richard,
Habe Deine Idee gleich mal umgesetzt und getestet;-))
Sollte funktionieren;-))
Hier der Test-Link:
out"<a href=http://baseportal.de/cgi-bin/baseportal.pl?htx=/Juergens/adressen2&namerein=$namerein&usid=$usid>nächste Datei</a>";
War einfacher einzubauen, als ich gedacht hatte.
Alles was innerhalb von 2 Minuten passiert(voreingestellte Zeit für den Verfall der Id ohne Erneuerung bei Passivität) Klappt und die Id wird erneuert.
Danke für die Anregung.
Gruß
Claus
PS:
Wenn es Euren Anforderungen gerecht wird, könnt Ihr den Link wie folgt vor das do_all einbauen.
out"<a href=http://baseportal.de/cgi-bin/baseportal.pl?htx=/Juergens/adressen2&namerein=$namerein&usid=$usid>nächste Datei</a>";
Müsst Ihr natürlich mit Euren eigenen Parametern versehen;-))
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.März.2005, 18:27.
Re: Übergabe von Logindaten../mal wieder der falsche Link;-)
Antworten
Beitrag von Thomas Fedder (333 Beiträge) am Montag, 14.März.2005, 17:09.
Re: Übergabe von Logindaten an nächste Seite
Hi,
ich habe genau das Problem mit einem (leider) kostenpflichtigen Produkt der Firma bei123.de gelöst.
Die Produkte dieser Firma basieren auf Baseportal.
Die Lösung für dein Problem ist der "LoginCheck"
http://www.bei123.de/baseportal?htx=/bei123.de/home&show=28,63,136
Ich bin damit mehr als zufrieden.
Der Support der Firma ist in Ordnung.
ciao
TF
Antworten
Beitrag von Claus (4645 Beiträge) am Montag, 14.März.2005, 19:07. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite
Antworten
Beitrag von richard (1187 Beiträge) am Montag, 14.März.2005, 22:12. WWW: posaunenchor-rhoden.de
Re: Übergabe von Logindaten an nächste Seite
-------------
Es sind keine!! zusätzlichen Änderungen in der Struktur notwendig, ...
-------------
War ein bißchen überrascht, daß das so einfach gehen soll und habe mir den Paßwortschutz mal angesehen.
Das geht so natürlich nur, weil Deine session id nicht wirklich zufällig generiert wird und Du auf der neuen Seite gar nicht überprüfst ob die übergebene id überhaupt jemals vergeben worden ist.
Unter Sicherheitsaspekten wäre es besser diese id anders zu generieren. Zur Berechnung der Gültigkeitsdauer müßte man dann einen Zeitstempel getrennt mitführen.
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.März.2005, 09:08. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite
Hallo Richard,
Das mit der "zufälligen" session-id stimmt schon. Das werde ich nochmal nacharbeiten (spontan denke ich da an sowas mit "int" und "rnd"). Habe im Augenblick allerdings wenig Zeit;-)
Die Überprüfung, ob eine Id besteht und diese noch gültig ist,findet eigentlich in der Schleife ständig statt. Werde das aber über ein "get" für übergebene Ids noch mal verbessern und einbauen.
Ich denke aber, das ganze ist schon etwas sicherer als die alte Passwortvariante von Christoph, wo der Name und das Passwort mit "durchgeschleift" und in der URL für jeden zu sehen war;-)
Auf jeden Fall danke ich Dir schon mal für die Anregungen.
Werde mich in nächster Zeit mal drum kümmern, das noch sicherer zu machen.
Gruß
Claus
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.März.2005, 12:57. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite/Nachtrag!!
Hallo Richard,
hier übrigens nochmal der Link zu dem Thread für den Test:
http://baseportal.de/baseportal/baseportal/forum&wcheck=1&range=300,150&Pos=11249
Hatte damals dazu aufgefordert, eventuelle Lücken herauszufinden.
Kannst ja mal probieren, 3 Minuten nach dem "Login" noch irgendeine Aktion zu starten. Manipuliere auch gerne noch in der URL, um ans Ziel zu kommen.
Christoph hatte 2 Lücken gefunden und ich habe sie postwendend "dichtgemacht"!!!
Wenn Du eine neue findest, bin gerne bereit auch diese zu schließen;-)
Gruß
Claus
Antworten
Beitrag von richard (1187 Beiträge) am Dienstag, 15.März.2005, 16:24. WWW: posaunenchor-rhoden.de
Re: Übergabe von Logindaten an nächste Seite/Nachtrag!!
Antworten
Beitrag von Claus (4645 Beiträge) am Donnerstag, 17.März.2005, 09:55. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite/Nachtrag!!
Hallo Richard,
war doch kein "Gemecker" von Dir sondern nur eine berechtigte Frage;-)
Das "$" kannst Du da glaube ich mit einbauen, ist aber nicht erforderlich, da in der if-Abfrag nach $passwort abgefragt wird.
Gruß
Claus
Antworten
Beitrag von Anita (23 Beiträge) am Montag, 14.März.2005, 22:17.
Re: Übergabe von Logindaten an nächste Seite
Vielen Dank für die Anregungen!
Ich habe mir schon gedacht, dass es so ähnlich mit dem Link funktionieren muss. Aber wie war das? So wirklich sicher ist es nicht?
Kann die Link-Übergabe der Daten abgefangen werden?
Ich muss mich mal mit https befassen.
Vielen Dank nochmal.
Gruss von Anita
Antworten
Beitrag von Claus (4645 Beiträge) am Dienstag, 15.März.2005, 09:42. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite
Hallo Anita,
Nichts im Leben ist sicher, außer der Tatsache das Alles was mal geboren wird früher oder später das "Zeitliche" segnet;-)
So ziemlich Alles was im Internet veröffentlicht oder übergeben wird, kann ausspioniert werden, wobei https eine Möglichkeit ist, Zugriffe zumindest zu erschweren und momentan nach meinem Kenntnisstand als ziemlich sicher gilt.
Hatte eben gerade auf Richards Beitrag geantwort.
http://baseportal.de/baseportal/baseportal/forum&wcheck=1&Pos=11306.007
Zu Deinen beiden anderen Fragen:
>>>>>>>>1. Ich habe verantwortlich=Access-ID gewählt, um die Tabellen miteinander zu verknüpfen. Leider jedoch wird der mit dem Nutzer verknüpfte Datensatz erst dann gefunden, wenn ich ihn in Baseportal Datenbankbereich einmal offen hatte, das heisst auf ändern und abschicken war.
Kann die Frage im Augenblick nicht ganz nachvollziehen. Meldest Du dich mit Namen und Passwort an, dann besteht dadurch eine direkte Verbindung und nur die entsprechenden Datensätze werden ausgegeben. Wenn bei allen anderen Datenbanken der gleiche "Inhalt" in dem Feld "verantwortlich" ist und Du immer auf dieselbe "Nutzer"-DB zugreifst, sollte das eigentlich über den jeweiligen Link bzw. die Links gehen.
Bin mir aber nicht sicher, ob ich das jetzt richtig verstanden habe??
>>>>>>>>>>>>2. Wozu gibt es in Deinem bib-Beispiel eigentlich die Seite adressenausgabe? Sie scheint nicht verknüpft und keinen Einfluss zu haben, oder?
Diese Seite ist für die Veröffentlichung auf der Website gedacht und im Gegensatz zur "Bearbeitungs-Seite mit Passwortschutz" wird hier nicht "do_all" sondern "<do action=all......>" verwendet, wo nur die eingestellten Rechte an der DB unter Verwaltung(Lesen, Hinzufügen usw.) Anwendung finden. Daher ja auch der Hinweis für die Rechte-Vergabe:
Nur lesen gestatten!!
Ich hoffe, ich habe das jetzt einigermaßen verständlich rübergebracht;-)
Sonst melde Dich einfach nochmal.
Gruß
Claus
Antworten
Beitrag von Anita (23 Beiträge) am Dienstag, 15.März.2005, 21:21.
Re: Übergabe von Logindaten an nächste Seite
Hallo Claus,
zu 1. ja, es geht auch reibungslos, wenn ich einmal in bp-internen Tabelle den Datensatz angeklickt habe und auf ändern war.
Frisch importierte Datensätze werden trotz Verknüpfung über das Feld "verantwortlich" auch wenn alle Parameter stimmen, scheinbar nicht geöffnet. Es erscheint in der geschützten Liste "Keine Einträge voehanden", obwohl welche da sind und freigegeben.
Ich habe in allen Tabellen das Feld verantwortlich als Text sortiert.
zu 2. also die Übergabe der sid und des benutzernamens "verantwortlich" an die nächste Seite funktioniert bei mir gut. Sofern das o.g. Problem nicht auftritt. Worin besteht die Unsicherheit? die sid verfällt ja doch bald.
Danke für Tipps.
Gruss Anita
Antworten
Beitrag von Anita (23 Beiträge) am Dienstag, 15.März.2005, 21:23.
Re: Übergabe von Logindaten an nächste Seite
zu 2. ich meinte, Übergabe mit dem Link, wie beschrieben.
nochmal zu 1. könnte eine Sortierung nach Zahl im Feld "verantwortlich" etwas bringen?, ich habe dort nämlich eine Nutzernummer.
Danke
Antworten
Beitrag von Claus (4645 Beiträge) am Donnerstag, 17.März.2005, 10:09. WWW: automobilhai.de
Re: Übergabe von Logindaten an nächste Seite
Hallo Anita,
komme leider erst heute zu einer Antwort. Bin momentan im privaten Umfeld durch gesundheitliche Probs ziemlich ausgelastet.
Das war schon recht "tricky" was Du da veranstaltet hast, aber ohne richtige Hintergrundinformationen über das zusammenwirken Deiner DB's kann man halt nur raten. Wenn Du mehrere Datenbanken hast und diese ALLE passwortgeschützt sind, passiert bei einem neuen Eintrag folgendes.
Eingabe erfolgt in Datenbank A mit Feld "verantwortlich",
Dort wird dann natürlich auch das Feld gefüllt.
In Datenbank B wird das Feld "verantwortlich" dadurch allerdings nicht automatisch gefüllt, also kann es beim "rüberklicken" auch nicht mit ausgegeben werden.
Das mußt Du schon über put oder mode bei der Eingabe steuern.
Hier mal auf die Schnelle ein möglicher Ansatz.
if ($cmd eq "add")
{
put ["Feld1", "$Name", "verantwortlich", "$verantwortlich"], "Datenbank B";
}
Ich hoffe, das hilft Dir weiter. Sonst frage gerne nochmal nach, etwas mehr Info wäre aber schon hilfreich;-))
Gruß
Claus
Antworten