Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi firebird SYSDBA und Sicherheit (https://www.delphipraxis.net/101252-firebird-sysdba-und-sicherheit.html)

hanspeter 10. Okt 2007 13:04

Datenbank: Fb 2.01 • Zugriff über: Fibplus

firebird SYSDBA und Sicherheit
 
SYSDBA, Masterkey sind Standard auf einem FB Server.
Ich lege eine neue Datenbank mit einem anderen User/Passwort an.
Die Struktur der Datenbank würde ich gerne schützen.
Bis jetzt bekomme ich das nur in den Griff, wenn ich für SYSDBA das Passwort ändere.
Das führt aber spätestens dann zu Problemen, wenn auf dem gleichen Server die Datenbank eines anderen Herstellers liegt.
Hat dieser z.B.SYSDBA/masterkey als Standarduser belassen, dann funktioniert ja die ganze Anwendung nicht mehr.
Gibt es noch eine andere Möglichkeit das Öffnen von Tabellen (z.B. mit IBExpert) ohne User/Password zu verhindern?

Für einen Tip dankbar.

Gruß
Peter

mkinzler 10. Okt 2007 13:10

Re: firebird SYSDBA und Sicherheit
 
Arbeite mit Rollen und nimm SYSDBA die Rechte weg.

hanspeter 10. Okt 2007 14:14

Re: firebird SYSDBA und Sicherheit
 
Genau das habe ich probiert.
Aber ich kann SYSDBA nicht die Rechte wegnehmen.

Die Situation ist: auf einem server läuft FB von den Client wird auf mehre Datenbanken zugegriffen.
Eiunes dieser Fremdprogramme greift über SYSDBA/masterkey auf den Server zu.
Ändere ich irgend etwas an den Rechten von SYSDBA, dann hat dieses Programm Probleme.
Ich glaube langsam ein wirksamer Schutz ist auf dem Server selbst nicht möglich.

Gruß
Peter

mkinzler 10. Okt 2007 14:23

Re: firebird SYSDBA und Sicherheit
 
Erzeuge eine Rolle SYSDBA in der Datenbank. der kannst du dann die Rechte wegnehmen. Vorher natürlich Besitzer der objekte ändern.

hanspeter 10. Okt 2007 14:44

Re: firebird SYSDBA und Sicherheit
 
Zitat:

Zitat von mkinzler
Erzeuge eine Rolle SYSDBA in der Datenbank. der kannst du dann die Rechte wegnehmen. Vorher natürlich Besitzer der objekte ändern.

wens man so einfach wäre. Habe ich auch schon probiert.

Ergebnis:
Zumindest mit IBExpert läßt sich eine Role SYSDBA nicht anlegen.

This operation is not defined for system tables.
unsuccessful metadata update.
user name SYSDBA could not be used for SQL role.

Gruß
Peter

IBExpert 10. Okt 2007 21:06

Re: firebird SYSDBA und Sicherheit
 
Zitat:

Zitat von hanspeter
Zitat:

Zitat von mkinzler
Erzeuge eine Rolle SYSDBA in der Datenbank. der kannst du dann die Rechte wegnehmen. Vorher natürlich Besitzer der objekte ändern.

wens man so einfach wäre. Habe ich auch schon probiert.

Ergebnis:
Zumindest mit IBExpert läßt sich eine Role SYSDBA nicht anlegen.

This operation is not defined for system tables.
unsuccessful metadata update.
user name SYSDBA could not be used for SQL role.

Gruß
Peter

liegt nicht an ibexpert, sondern an firebird. geht aber trotzdem im sql editor

INSERT INTO RDB$ROLES (RDB$ROLE_NAME, RDB$OWNER_NAME, RDB$DESCRIPTION, RDB$SYSTEM_FLAG) VALUES ('SYSDBA', 'SYSDBA', NULL, 0);

nun sollte das gehen

Gruß
Holger
www.firebird-conference.com

IBExpert 10. Okt 2007 21:12

Re: firebird SYSDBA und Sicherheit
 
ach ja, und noch was:

wenn du dir das leben vereinfachen willst kannst du einen eigene firebird instanz
auf dem server benutzen. Auf http://www.ibexpert.com/download/fir...nstancemanager
findest du ein kleines tool (ist aber nicht von uns), mit dem du nachträglich
eine firebird Instanz umbenennen kannst und dann mit anderer conf datei und anderem
port noch mal installieren kannst.

Gruß
Holger
www.firebird-conference.com

hanspeter 11. Okt 2007 07:38

Re: firebird SYSDBA und Sicherheit
 
Zitat:

Zitat von IBExpert
ach ja, und noch was:

wenn du dir das leben vereinfachen willst kannst du einen eigene firebird instanz
auf dem server benutzen. Auf http://www.ibexpert.com/download/fir...nstancemanager
findest du ein kleines tool (ist aber nicht von uns), mit dem du nachträglich
eine firebird Instanz umbenennen kannst und dann mit anderer conf datei und anderem
port noch mal installieren kannst.

Danke für den Tip, das probiere ich heute aus.

Mit Gruß
Peter

Tanis64 12. Okt 2007 07:55

Re: firebird SYSDBA und Sicherheit
 
Hallo

Da das irgendwie zum Thread hier passt, habe ich da auch noch eine Frage bezüglich des Schützens der Datenbankstruktur:
Gibt es irgendeine Möglichkeit die Struktur der Datenbank bei der Weitergabe einer Firebird-Datenbankdatei an Dritte (Kunden) sinnvoll zu schützen?
So wie ich das bisher verstanden habe, kann man eine Firebird-Datenbankdatei nur dann schützen, wenn man den administrativen Zugriff auf die installierte Instanz schützt.
Wird jedoch z.B. von einem Dritten auf einem Rechner eine Version des Firebird DBS neu installiert, so sind in dieser Instanz wieder SYSDBA / masterkey als Standarduser gesetzt, was wiederum einen vollen Zugriff auf die weitergegebene Firebird-Datenabankdatei ermöglicht. Hat jemand diesbezüglich schon Erfahrungen gesammelt oder vielleicht sogar eine Lösung parat wie man Firebird-Datenbankdateien für die Weitergabe sinnvoll schützen kann?

Gruß
Christopher

mkinzler 12. Okt 2007 08:01

Re: firebird SYSDBA und Sicherheit
 
Entweder wie oben Beschrieben Rechte an Datenbankobjekten anderem Benutzer schenken und rechtefreie Rolle SYSDBA anlegen, Vulcan verwenden oder auf FB3 warten (Verschmelzung von FB2 mit Vulcan)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz