base
portal
Suche:
Forum
Start
Neue Seite erstellen
Titel:
<h2>Allgemeine Zugriffsrechte</h2> In vielen Fällen reicht es völlig aus, die Rechte für unangemeldete Nutzer zu bestimmen. Sie selbst, als Eigner haben immer alle Rechte an der Datenbank, ebenso der Programmcode, den Sie in Ihren Templates verwenden: Die dort verwendeten Funktionen können beliebig auf Ihre Datenbanken zugreifen. Es gibt 4 Zugriffsarten, die beliebig kombiniert werden können: <ul type=square> <li>Lesen <li>Schreiben <li>Ändern <li>Löschen </ul> Beispiele: <ul type=square> <li>Sie können Aussenstehenden keinerlei Rechte geben: Niemand kann dann ohne Zugangsberechtigung auf diese Datenbank zugreifen. Sie dient also z.b. für ihre persönlichen Adressdaten. <li>In den meisten Fällen geben sie Aussenstehenden das Recht, ihre Datenbank zu lesen. Sie sind dann derjenige der neue Daten hinzufügt oder bestehende Daten pflegt. Sie sind also der Redakteur. Anwendungsbeispiele sind ein News-system, eine Linkliste oder eine Produktdatenbank <li>Sie können ihren Nutzern auch erlauben, selbständig Daten hinzuzufügen. Ein Forum wäre dafür die klassische Anwendung. Unliebsame Einträge können Sie, nachdem Sie sich angemeldet haben, einfach löschen. <li>Möglich wäre auch, ihren Nutzern NUR schreibende Rechte zu geben. Z.B. eine Umfrage, in der sie nur Rückmeldungen ihrer Nutzer abfragen wollen, bräuchte diese Einstellung. </ul> <h2>Nutzer-Datenbanken</h2> Um einen ausgefeilteren Schutz zu realisieren, bietet baseportal Nutzerdatenbanken an. Sie können für jede Datenbank eine eigene Nutzer-Datenbank erstellen oder auch eine Nutzer-Datenbank für mehrere Datenbanken einsetzen. Eine einfache Nutzerdatenbank könnte so aussehen: <tab> Name|Passwort|EMail|Lesen|Schreiben|Ändern|Löschen|Ausführen *|||*|||| sepp|Sjm72H|sepp@web.de|*|*||| liese|edhi6xd|liese@yahoo.de|*|*||| gregor|ysdfhuie3|gregor@gregor.de|*|*|*|*| </tab> <ul><do action=list db=rights/einfach.users dataface=arial,helvetica datasize=2 keyfield=- convert_html=* listfields=-Id rights_get=*></ul> Die Nutzer <c>sepp</c> und <c>liese</c> können lesend und schreibend auf die Datenbank zugreifen; der Nutzer <c>gregor</c> kann zusätzlich ändern und löschen. <c>*</c> ist ein spezieller Nutzername - hier werden die Rechte für unangemeldete Nutzer gesetzt, wie oben beschrieben. Ein "Passwort" und ein Eintrag beim "EMail"-Feld erübrigt sich damit natürlich. Hier die einzelnen Felder und ihre Funktionen: <tab> Feld|Beschreibung Name|Der Name den der Nutzer zur Anmeldung verwenden muss. Pro Nutzerdatenbank darf ein Name nur einmal vergeben werden. Gross/Kleinschreibung wird unterschieden. Passwort|Das Passwort das der Nutzer zu Anmeldung verwenden muss. Gross/Kleinschreibung wird unterschieden. EMail|Die Email des Nutzers. Immer gut zu wissen, falls Probleme auftreten. Wird von baseportal verwendet um einem Nutzer, der sein Passwort vergessen hat, dieses automatisch an seine EMail-Adresse zu schicken. Da das sehr häufig vorkommt ist dies eine grosse Arbeitserleichertung für den Administrator. Lesen, Schreiben, Ändern, Löschen|Diese 4 Felder bestimmen die Rechte für eine Datenbank. </tab> Natürlich ist auch eine Nutzerdatenbank eine ganz normale baseportal-Datenbank. Das bedeutet, sie können deren Aufbau völlig frei selbst bestimmen und beliebige eigene Felder hinzufügen oder nicht benötigte Felder löschen. Es werden einfach die angegebenen Feldnamen vom Anmelde-Modul verwendet und nur wenn diese vorhanden sind, wird deren Funktion ausgeführt. Als zusätzliche Felder bieten sich ein "Kommentar"-Feld oder ein "Geburtstag"-Feld an. Sie können auch eine komplette Adress- und Kundenverwaltung darauf aufbauen! <h3>Rechte der Nutzer-Datenbank</h3> Da eine Nutzer-Datenbank selbst eine normale baseportal-Datenbank ist, können Sie den Zugriff darauf wieder mit einer eigenen Nutzer-Datenbank regeln. Dadurch können Sie verschiedene Zugriffslevel definieren: <center><table width=80%><tr><td bgcolor=f0f0f0 align=center> <table cellpadding=10><tr><td>Eigner</td><td>>></td><td bgcolor=e0e0e0>Administratoren</td><td> >> </td><td bgcolor=e0e0e0>Nutzer</td><td> >> </td><td>Datenbank</td></tr></table> </table></center> Der Eigner des baseportal-Zugangs hat dabei immer alle Rechte (vielleicht vergleichbar mit dem Nutzer "root" bei UNIX-Systemen). Die Nutzer-Datenbank einer Nutzer-Datenbank bestimmt die "Administratoren": Sie können neue Nutzer einragen, deren Rechte festlegen und diese auch wieder löschen. Die "Nutzer" können mit diesen Rechten auf die Datenbank zugreifen. Ach ja, und die Nutzer-Datenbank einer Nutzer-Datenbank kann selbst natürlich wiederum auch eine Nutzer-Datenbank haben und... ;-) <h2>Anmeldung</h2> Wird der Zugriff auf eine Datenbank über eine Nutzer-Datenbank geregelt, so gibt das <c><do action=all...></c> automatisch einen "Anmelden"-Button aus: <ul><table border=1 cellspacing=0 cellpadding=10><tr><td><font face=arial size=2><perl>undef @_sel;</perl><do action=all db=rights/anmelden dataface=arial,helvetica datasize=2 keyfield=- convert_html=* listfields="-Id,Erstellt am,Gesperrt" rights_get=*></td></tr></table></ul> Die restliche Ausgabe hängt von den Rechten ab, die unangemeldete Nutzer (<c>ALLE</c>) haben, in dieser Beispielausgabe nur Leserechte und sonst keine. Kann man als unangemeldeter Nutzer garnicht auf die Datenbank zugreifen, so erscheint gleich das Anmeldeformular: <ul><table border=1 cellspacing=0 cellpadding=10><tr><td><font face=arial size=2><perl>undef @_sel;</perl><do action=all db=rights/anmelden dataface=arial,helvetica datasize=2 keyfield=- convert_html=* listfields="-Id,Erstellt am,Gesperrt"></td></tr></table></ul> Wie üblich können Sie die Anmeldung durch einen Parameter beeinflussen: <h3>Art der Anmeldung (Neuer Parameter: <c>login</c>)</h3> Durch den neuen Parameter <c>login</c> beim "do action=all" kann die Art der Anmeldung für einen Nutzer gesteuert werden: <tab> Wert Bedeutung yes Ein entsprechender Anmeldungs-Link wird ausgegeben - auch wenn gar keine Nutzer-Datenbank existiert (Der Nutzen ist allerdings eher zweifelhaft). no Keine (sichtbare) Anmeldung. Eine Anmeldung z.B. über eine eigene Anmeldeseite oder per URL-Angaben ist aber trotzdem möglich. closed Keine Anmeldung möglich, egal wie. Dies kann z.B. für Testzwecke nützlich sein, um zeitweise jegliche Anmeldung auszuschliessen. lostpw Bei falscher Anmeldung kann der Nutzer das Passwort auf Wunsch an die verzeichnete EMail-Adresse schicken lassen. top Die Anmeldung wird ohne Link sofort über der restlichen Ausgabe platziert. bottom Die Anmeldung wird ohne Link sofort unter der restlichen Ausgabe platziert. </tab> <!--(trackguest auch unangemeldete besucher per session verfolgen)--> <achtung> Dieser Parameter kann (aus Sicherheitsgründen natürlich) NICHT von aussen per "get/post" eingestellt werden, sondern ausschliesslich innerhalb eines Templates. </achtung> Beispiel: <code> <do action=all login=top,lostpw> </code> Die Anmeldung wird sofort über der Ausgabe platziert. Hat ein Nutzer sein Passwort vergessen und meldet sich falsch an, so kann er sich das Passwort an die in der Nutzer-Datenbank verzeichnete EMail-Adresse schicken lassen. Da dies häufiger geschieht, als man glauben mag, ist dies eine grosse Erleichterung für den/die Seiten-Betreiber. Sie können diese Anfrage zum Zusenden des Passworts auch direkt als Link auf Ihre Seite einbauen, dieser sähe dann ungefähr so aus: <code> <a href="http://...?htx=/name/seite&cmd=lostpw">Passwort vergessen?</a> </code> <h3>Nutzer beim Anmelden zulassen/ausschliessen (Neuer Parameter: login_users)</h3> Durch den Parameter <c>login_users</c> können nur bestimmte Nutzer zur Anmeldung in einem Template erlaubt werden: <code> <do action=all login_users=KONTROLLEUR,fongi,gabi> </code> Hier werden nur die Nutzer <c>KONTROLLEUR</c> (in diesem Fall eine Rolle), <c>fongi</c> und <c>gabi</c> zur Anmeldung zugelassen. Durch ein Minuszeichens <c>-</c> zu Beginn der Nutzerliste, werden die angegebenen Nutzer/Rollen ausgeschlossen. Alle anderen sind zugelassen: <code> <do action=all login_users=-ALLE,berger> </code> Schliesst unangemeldete Nutzer (<c>ALLE</c>) und den Nutzer <c>berger</c> vom Zugriff aus. <knowhow> Bei Vererbung von Rechten werden alle Rollen unterhalb des zugelassenen Nutzers nur vererbt, wenn diese auch explizit zugelassen sind. Hier einige Beispiele anhand obiger <a href="#rollendb">Rollen-Datenbank</a>: Durch ein <c>login_users=berger</c> erhält der Nutzer <c>berger</c> keinerlei Rechte, da die Rolle <c>MITARBEITER</c> nicht freigegeben ist. Umgekehrt gilt bei <c>login_users=-MITARBEITER</c>, dass <c>berger</c> ebenfalls keine Rechte hätte. Der Nutzer <c>krumpawesch</c> allerdings bekommt die Rechte von <c>EINGEBER</c>. Die Sperre von <c>login_users=-KONTROLLEUR2</c> führt dazu, dass der Nutzer <c>Schlumpf</c> keine Rechte bekommt, auch nicht die von <c>KONTROLLEUR</c>, da dies ja eine Rolle vom (gesperrten) <c>KONTROLLEUR2</c> ist. Sperrt man durch <c>login_users=-KONTROLLEUR</c> die Rolle <c>KONTROLLEUR</c>, haben <c>gabi</c> und <c>fongi</c> keine Rechte, während <c>Schlumpf</c> das Recht zum Ändern der Felder "Strasse" und "Ort" durch <c>KONTROLLEUR2</c> erhält. </knowhow> <h3>Eigene Anmeldungsformen (do action=login)</h3> Sie sind nicht auf die Standard-Anmeldung von <c><do action=all></c> angewiesen. Sie können die Anmeldung an anderer Stelle der Seite platzieren oder selbst eine Anmeldeseite erstellen und diese URL den Bearbeitern ihrer Datenbank zur Verfügung stellen. Wenn Sie "do action=all" verwenden und dort den Parameter <c>login=no</c> hinzufügen, so erscheint die normale Seitenausgabe ohne "Anmelden"-Button. Um eine Anmeldung bei baseportal vorzunehmen müssen die Parameter "uid" für den Nutzer-Namen und "upw" für das Passwort übermittelt werden. Wenn Sie wollen, können Sie auch gleich eine URL mit diesen Parametern erstellen, z.B. so: <code> http://baseportal.de/cgi-bin/baseportal.pl?htx=**/meinname/meineseite**&uid=name&upw=passwort </code> Natürlich ist dies nicht für jeden Fall das Bequemste. Um ein Anmeldeformular in einem Template zu integrieren, können Sie die neue "action"-Angabe <c>login_form</c> verwenden: <code> <do action=login_form> </code> Gibt an dieser Stelle ein Anmeldeformular aus.<p> Um eine Anmeldung direkt von Ihrer Homepage aus zu ermöglichen benötigen Sie ein eigenes Anmelde-Formular: <code> Bitte melden Sie sich an:<p> <form action="http://baseportal.de/cgi-bin/bbeta.pl?htx=**/meinname/ausgabeseite**" method="post" enctype="multipart/form-data"> <input type=hidden name="htx=" value="**/meinname/ausgabeseite**"> <table> <tr><td>Name:</td><td><input type=text name="uid="></td></tr> <tr><td>Passwort:</td><td><input type=password name="upw="></td></tr> </table> </form> </code> Das wars auch schon. Bauen Sie diesen Code in Ihre eigene Seite ein und rufen Sie sie dann auf. Das rot markierte "/meinname/ausgabeseite" müssen Sie dabei natürlich auf Ihre eigenen Werte ändern.
Name:
Passwort:
Stichworte:
Version:
1
2
3 Angebot:
Alle
Nur Miete / Lizenz
Nur Miete / Lizenz professional
Nur Miete
Nur Miete smart + pro
Nur Miete smart + pro / Lizenz
Nur Miete pro
Nur Miete ab pure2, smart2, pro1
Nur Lizenz
Nur Lizenz professional
Nur Kostenlos
Ohne Änderungen zurück zur Seite
©
baseportal
GmbH. Alle Rechte vorbehalten.
powered in 0.01s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!