Hallo,
ich suche nach einer Lösung um Usern lesende, schreibende Rechte auf einer DB zu geben und dazu sollen die Nutzer ihre eigenen Dokumente löschen dürfen und alle anderen Dok. nicht...
lesen und schreiben ist nicht das Problem...
Hallo,
ich suche nach einer Lösung um Usern lesende, schreibende Rechte auf einer DB zu geben und dazu sollen die Nutzer ihre eigenen Dokumente löschen dürfen und alle anderen Dok. nicht...
lesen und schreiben ist nicht das Problem...
Das klingt nach Einsatz von Autoren-Feldern!
dafür muss ins Datenbank-Script "QueryDocumentDelete" ein Script rein welches den aktuellen UserNamen mit dem Ersteller (z.B. verstecktes Feld) vergleicht und dann die Dokumente löscht oder eben nicht. Verwende noch ein Continue = False in dem Script.
Gruß
Dirk
mit Autorenfeldern kann dann der User aber nur noch seine eigenen Dokumente bearbeiten. Ich habe es so gelesen, dass alle User alle Dokumente bearbeiten sollen aber nur eigen löschen.
Gruß
Dirk
Also alle sollen neue Dok anlegen können und nur diese auch löschen dürfen!
Bearbeiten müssen die User nur ihre eigenen...
hm... wenn ich evtl eine etwas genauere beschreibung bekommen könnte... ;o)
wo bzw wie soll diese anlegen!?!?
Dann sind wir doch wieder bei Autoren-Feldern
inkl. ACL-Einstellungen Autor mit "Doks erstellen" & "Doks löschen" für die User.
erstelle in der Maske ein "berechnet beim Anlegen" Feld (z.B. Name "Autor") mit dem Typ Autor. Als Formel schreibst Du @UserName rein.
Die User bekommen dann auf die DB das Recht Autor mit der Option Dokumente erstellen und Dokumente löschen.
Fertig.
Gruß
Dirk
und das dann auch nur für seine selbst verfassten doks!?!?
Ja, da er nur in diesen im Autorenfeld steht, kann der User auch nur diese bearbeiten und löschen.
Wichtig ist, dass der User nur Autorenrechte auf die DB bekommt.
ich habe das jetzt mal versucht und ich kann die erstellten dok. nicht löschen...
keine rechte...
steht im Autoren-Feld Dein UserName in der Form "CN= .../OU=.../O=../C=.."?
Laut ACL darf der User auch Dokumente löschen?
Gruß
Dirk
ok... jetzt habe ich dem user löschen und schreiben gegeben und konnte löschen....
werde das jetzt mal testen ob das wirklich so reicht....
vielen dank schon mal für die schnelle hilfe... ;o)
Wenn in der Datenbank bereits Dokumente vorhanden sind, dann müssen diese von einem Editor (oder höher) mit einem Agenten einmal durchgerechnet werden, der in das Autorenfeld den Namen des Erstellers in der kanonischen Namensform schreibt.
Rechne um Himmelswillen nicht alle Dokumente mit dem jetzt neu eingefügten Feld durch. Dann steht nämlich der Agentenstarter in dem Feld und nicht der Ersteller.
Die Formel in dem neuen Autorenfeld muß auf jeden Fall lauten:
@If(@IsNewDoc;@Username;Feldname)
Gruß
Norbert
ZitatDie Formel in dem neuen Autorenfeld muß auf jeden Fall lauten:
@If(@IsNewDoc;@Username;Feldname)
Wieso?
Feld berechnet beim Anlegen ist viel besser, weil wird nur bei einem neuen Dokument berechnet und dann wird die @IF-Abfrage nicht benötigt.
Gruß
Dirk
achso die Formel galt für den Agenten :wuet:
Gruß
Dirk
also ich habe es jetzt getestet und es klapp auch soweit...
nun habe ich nur noch ein problem und zwar kopiere ich zb auch mail in die db... und das per aktion... dort ist dann der verfasser = absender! und so soll es auch zu erkennen sein.... wie kann ich mich denn jetzt in meinem feld "autor" eintragen !?! soll ich im anschluss einen agenten starten!?! müsste ja dann so gehen wie ich es nicht machen soll oder!?!