AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firebird mit Spaltenrechte klappt nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird mit Spaltenrechte klappt nicht

Ein Thema von Steffen0917 · begonnen am 25. Mär 2010 · letzter Beitrag vom 27. Mär 2010
Antwort Antwort
Steffen0917

Registriert seit: 20. Jun 2005
64 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Firebird mit Spaltenrechte klappt nicht

  Alt 25. Mär 2010, 19:56
Datenbank: firebird • Version: 2.1 • Zugriff über: IB Komponenten
Hallo zusammen,

ich möchte einem Benutzer mit nur Leserechte an einer tabelle zusätzlich Schreibrecht an einer Spalte geben.
Auf den FAQ-Seiten von firebird finde ich: GRANT UPDATE ON table1(field1) TO USER1 welches aber zu einer Fehlermeldung "token ( unknown" führt.
In einem Interbase Buch finde ich GRANT UPDATE (field1) ON table1 to USER1. Damit kommt es zu keiner Fehlermeldung - aber ich kann trotzdem in field 1 nicht schreiben.

Weiss jemand Rat ?

Gruss, Steffen
Steffen
  Mit Zitat antworten Zitat
Steffen0917

Registriert seit: 20. Jun 2005
64 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 09:38
Hallo - hatte denn sonst niemand dieses Problem ?

Lg, Steffen
Steffen
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 12:59
Hallo,

nö, aber wir haben Internet ...

Grant


GRANT UPDATE ON table1(field1) TO USER1;


Heiko
Heiko
  Mit Zitat antworten Zitat
Steffen0917

Registriert seit: 20. Jun 2005
64 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 13:45
Hallo Heiko,

genau das hab ich ja probiert, aber da gibt es sofort eine Fehlermeldung an der Stelle (

Gruß, Steffen
Steffen
  Mit Zitat antworten Zitat
Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: In der Lüneburger Heide
165 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 14:09
Zitat von hoika:
GRANT UPDATE ON table1(field1) TO USER1;
Hier scheint das Internet eine ein wenig falsche Syntax auszuspucken, vielleicht ist dies erst für Folgeversionen gedacht. Mit der V1.5 geht es mit folgender Syntax (entnommen aus dem Syntax-Guide von IBExpert):

grant update(field1, field2) on table1 To USER1; Ah, wer lesen kann ist klar im Vorteil... die Rechte greifen nicht, trotz korrekter Syntax. Schande über mein Haupt! Werde das auch nochmal probieren
Carsten
  Mit Zitat antworten Zitat
Steffen0917

Registriert seit: 20. Jun 2005
64 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 14:26
Wenn ich das sooo probiere, gibt es keine Fehlermeldung - und sieht auf den ersten Blick gut aus.
Wenn ich die Rechte der Tabelle mit IBOConsole kontrolliere, hat dann user1 auch Rechte für UPDATE.

Aber leider kann der User1 auch in dem field1 dann nichts ändern beim Zugriff mit IBDataSet
Steffen
  Mit Zitat antworten Zitat
Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: In der Lüneburger Heide
165 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 26. Mär 2010, 14:37
Zitat von Steffen0917:
Wenn ich das sooo probiere, gibt es keine Fehlermeldung - und sieht auf den ersten Blick gut aus.
Wenn ich die Rechte der Tabelle mit IBOConsole kontrolliere, hat dann user1 auch Rechte für UPDATE.

Aber leider kann der User1 auch in dem field1 dann nichts ändern beim Zugriff mit IBDataSet
Jupp, habs dann auch gelesen Ich habe das eben mit einem User-Login ausprobiert. Solange ich dem User keine SELECT-Rechte auf die gesamte Tabelle gebe, klappt gar nichts. GRANT(e) ich ihm oder dem User PUBLIC diese Select-Rechte, dann kann ich mit dem User1-Login an meinen beiden Testfeldern herumändern. Der Versuch andere Felder zu ändern wird mit einer Fehlermeldung quittiert ("This user does not have privilege to perform this operation on this object"). Sollte genau das sein, was Du möchtest - hab es allerdings nicht mit Komponenten getestet, sondern nur in der SQL-Console vom IBExpert.
Carsten
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Firebird mit Spaltenrechte klappt nicht

  Alt 27. Mär 2010, 08:08
Hallo,

Zitat:
Aber leider kann der User1 auch in dem field1 dann nichts ändern beim Zugriff mit IBDataSet
IBDataSet macht nat. ein Select über die Felder, die du dort angibst.

Vielleicht hilft ja auch ein StringGrid.


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz