Autor Thema: Ansicht abhängig von Userrole  (Gelesen 3540 mal)

Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Ansicht abhängig von Userrole
« am: 21.02.04 - 18:14:21 »
Hallo,

ich habe eine einfache Datenbank erstellt, in der alle Nutzer Dokumente anlegen, bearbeiten und löschen können. Diese Dokumente enthalten Daten, u.a. ein Richtextfeld mit eingebetteten Dateien, die von einer anderen Datenbank ausgewertet werden.
In jedem Dokument befindet sich ein Autorenfeld, in das der Autor eingetragen ist, der das Dokument erstellt hat.

Derzeit sehen aber alle Nutzer alle Dokumente, ich möchte aber, dass nur die Dokumente zu sehen sind, die für eine bestimmte Userrole vorgesehen sind.

Beispiel: Wenn der User xy mit der Role "ABT_3" die Datenbank öffnet, dann sollen für ihn nur die Dokumente sichtbar sein, die Nutzer angelegt haben, die ebenfalls die Rolle "ABT_3" haben. das können durchaus mehr als einer sein.


Frage 1: Wie kann ich eine Ansicht so modifizieren, dass nur die Dokumente der entsprechenden Rolle angezeigt werden ?. Es gibt derzeit eine Ansicht, in der alle Dokumente aufgeführt sind. Diese müsste ja wohl modifiziert werden.

Bin ich mit meinem Autorenfeld auf dem richtigen Weg oder hätte ich was anderes machen sollen ?. Wäre es besser, die Rolle dort einzutragen ?

Vielen Dank im Voraus

Thomas
 


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Ansicht abhängig von Userrole
« Antwort #1 am: 21.02.04 - 18:30:58 »
Mit dem Autorenfeld regelst Du Erstellen-/Bearbeiten-Rechte. Was Du brauchst, ist ein LESER-Feld.
Siehe DesignerHelp: Leserfeld oder readers field.

Das ganze passiert übrigens auf Dokument- und nicht auf Ansichtsebene.

HTH,
Bernhard

Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #2 am: 21.02.04 - 18:38:34 »
Sorry, da kann ich nicht ganz folgen:

Du sagst, ein Leserfeld würde das Problem lösen. Das bedeutet aber doch nicht, dass automatisch dann die Dokumente nicht sichtbar sind oder :-[

Nach meiner, zugegeben laienhafter Vorstellung nach, müsste in der Ansicht irgendwo eine Auswahl stattfinden etwa wie:

Zeige alle Dokumente, die ein Nutzer, der die Rolle "ABT_3" hat erstellt hat..

Oder hat diese Denkweise einen Fehler ?

Gruss

Thomas

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Ansicht abhängig von Userrole
« Antwort #3 am: 21.02.04 - 18:52:10 »
Man kann das eine tun, ohne das andere zu lassen.
Was Dein Problem aber angeht, nur folgende kurze Antwort: Wenn in einem Dokument ein leserfeld enthalten ist und eine Person dort nicht über Name, Gruppe oder Rolle aufgeführt ist, sieht diese Person das Dokument nicht.
Wie gesagt: In der DesignerHelp istz das sauber erklärt.

Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Ansicht abhängig von Userrole
« Antwort #4 am: 21.02.04 - 18:54:32 »
Und dazu gibt es in den Best Practices von Matthias eine gute Uebersicht über Zugriffsrechte und was für Dokumente man da sehen oder bearbeiten kann:


Zugriffssteuerung
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #5 am: 21.02.04 - 19:12:38 »
Danke für die Hinweise bisher: Soweit ich Eure Ausführungen verstanden habe, insbesondere das Thema Zugriffsteuerung, sollte ich ein Autoren und ein Leserfeld haben. Alle User sollten Autoren sein.

Dann sehen diese nur die Dokumente der entsprechenden Userrole und bearbeiten können sie diese dann auch.

Das ich diese Felder "Berechnet zur Anzeige" mittels der Funktion @Author vorbelege, ist auch richtig oder ?

Danke für Eure Geduld.. :)

Thomas

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Ansicht abhängig von Userrole
« Antwort #6 am: 21.02.04 - 19:18:55 »
Das ich diese Felder "Berechnet zur Anzeige" mittels der Funktion @Author vorbelege, ist auch richtig oder ?

Entweder so oder eben ein hardcodiertes Reinsetzen der Rolle.

"Berechnet zur Anzeige" weiß ich jetzt gar nicht ob das geht, ein "Berechnet" sollte auf jeden Fall funktionieren und ist imho hier besser.

Matthias
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #7 am: 21.02.04 - 19:23:34 »
Danke für alle Hinweise, ich werde es ausprobieren.. :)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Ansicht abhängig von Userrole
« Antwort #8 am: 21.02.04 - 19:30:33 »
Berechnet zur Anzeige geht definitiv nicht, um ein Autorfeld zu belegen. Genau dann wird der berechnete Wert ha nicht gespeichert, kann also auch nicht für die Zugriffssteuerung dienen.

Und bevor Du Auoren- und/oder Leserfelder implementierst, lies Dich unbedingt in das Thema sorgfältig ein. Wenn Du beispielsweise Deine Server nicht in das bzw. ein Leserfeld aufnimmst, sehen die auch nix. Die Folgen kannst Du Dir sicherlich ausmalen ;-)

Bernhard

Offline MartinG

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.802
  • Geschlecht: Männlich
Re:Ansicht abhängig von Userrole
« Antwort #9 am: 21.02.04 - 20:09:03 »
Kann Bernhard nur zustimmen - bin selber auch nur "Hobbyprogrammierer" und die Leserfelder haben es schon ein wenig in sich wenn man noch nie damit gearbeitet hat.

Mein Vorschlag: lese Dich mal in einem guten Buch ein in die Materie ein und mach Dir eine kleine Testdatenbank wo Du das ganze ausprobierst und ein wenig rumspielst.

Ich mache es immer folgendermassen (wobei ich als Laienprogrammier nicht weiss ob das so optimal ist - habe ich mir mal irgendwo abgeschaut):

Ich erstelle in meiner Maske immer drei versteckte Leserfelder diese haben den Inhalt:  "[Server]"  "[Admin]"  "[User]"  - also Rollen und über die Rollenzuordnung in der ACL regle ich dann den Zugriff auf die Dokumente. Ich habe allerdings auch erst zwei Datenbank erstellt mit Leserfeldern - bei meiner ersten habe ich das halt alles fest reingeschrieben und habe dann als der MarketingChef gewechselt ein kleines Problem bekommen...

Gruss
Martin





Martin
Wir leben zwar alle unter dem gleichen Himmel, aber wir haben nicht den gleichen Horizont.
KONRAD ADENAUER

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Ansicht abhängig von Userrole
« Antwort #10 am: 21.02.04 - 20:23:02 »
Meine "Strategie" bei Dokumentzugriff etc., wenn es eine DB ist, in der viele lesen, manche schreiben etc. sollen.

- Alle bekommen in der ACL Editorrechte
- Alle bekommen Löschrechte (dies sperre ich aber wieder übers DB-Script)
- Mein Admin, der die DB auf den Server stellt, bekommt von mir schriftlich eine Vorlage, wie die ACL einzustellen ist. Dies nehme ich auch in der DB mit auf ("Benutzen dieser DB", Abschnitt Admins)
- Leser- und Autoren - Zugriff regle ich über Rollen. Diese Rollen werden hardcodiert in der Maske verankert.

Damit umgehe ich zwar manche Notes (ACL) Standards, aber halte es persönlich für flexibler und einfacher, das ganze zu administrieren. Gerade, wenn User Dokument mit Maske "A" sehen aber nicht bearbeiten darf, Dok mit Maske "B" gar nicht sehen darf, etc. ist das simpel über die ACL anhand der Rollen zu konfigurieren ([A Edit], [A Read] [B Edit], [B Read]etc).

Das Löschen regle ich ausschließlich über Buttons. Die Dokumente verschwinden dann nicht wirklich, sondern landen in einer View, die wiederum nur der [Admin] sieht.

Matthias
« Letzte Änderung: 21.02.04 - 20:25:15 von TMC »
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #11 am: 22.02.04 - 07:45:12 »
Für mich als Laien klingt die Variante von Bernhard gut und vorallem "einfach"  ;)

Es geht wie gesagt darum, viele können Dokumente erstellen, aber es sollen für die Leute nur die Dokumente sichtbar sein, die von ihnen und von Leuten mit der gleichen Rolle erstellt wurden.

Die Variante mit dem Löschen von TMC klingt gut, das werde ich mal probieren.

Alle haben natürlich Recht, ich muss mich da dringend einlesen. Problem ist nur, diese Datenbank gibt es im Prinzip schon, es werden auch schon Dokumente eingestellt, aber bisher ist halt alles offen wie ein Scheunentor. Jeder mit Zugriff sieht alles, kann demzufolge auch alles löschen  :P

@koehlerbv: Die Server haben Managerrechte, sollten also derzeit nicht das Problem sein. aber Du hast Recht, es könnte demnächst ein "lesender" Server hinzukommen.

Gruss

Thomas

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re:Ansicht abhängig von Userrole
« Antwort #12 am: 22.02.04 - 07:56:21 »
@koehlerbv: Die Server haben Managerrechte, sollten also derzeit nicht das Problem sein. aber Du hast Recht, es könnte demnächst ein "lesender" Server hinzukommen.

Das hat nix mit dem Zugriffslevel in der ACL zu tun (Manager, Auto, Leser, etc.).
Wenn dein Server nicht in einem Leserfeld eines Dokuments aufgeführt ist, dann ist das Dokument für ihn nicht sichtbar, auch wenn er Manager ist und sich auf den Kopf stellt. Eine Möglichkeit, ziemlich sicher zu stellen, dass dein Server immer leseberechtigt ist, wurde schon von Martin genannt:
Zitat
Ich erstelle in meiner Maske immer drei versteckte Leserfelder diese haben den Inhalt:  "[Server]"  "[Admin]"  "[User]"  - also Rollen und über die Rollenzuordnung in der ACL regle ich dann den Zugriff auf die Dokumente.
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #13 am: 05.03.04 - 16:46:05 »
Bin leider erst heute dazu gekommen, Eure Ratschläge in die Datenbank einzuarbeiten.

Ich habe mich für eine Kombination aus den Ratschlägen entscheiden: Es sind drei Leserfelder geworden, eines mit [Server] eines mit [Admin] und eines mit @Userroles.

Jede Gruppe bzw. jeder User in der ACL gehört mindestens einer Gruppe an  und ist  Editor. Alle Server haben die Rolle [Server] und alle Manager die Rolle [Admin].

Auf den ersten Blick scheint alles wie erwartet zu funktionieren.

Viele Dank an Alle..

Offline Dr. D

  • Frischling
  • *
  • Beiträge: 6
  • Geschlecht: Männlich
  • Es gibt viel zu tun, deligieren wir es.
Re:Ansicht abhängig von Userrole
« Antwort #14 am: 08.03.04 - 11:13:31 »
Wenn ich mit Lesefeldern arbeite, baue ich immer als erstes ein Hintertürchen ein.

Ein unsichtbares Leserfeld das die Rolle [readall] beinhaltet.
Diese Rolle vergebe ich aber nicht in der ACL.
Erst wenn alle Stricke reissen, wir die Rolle in die ACL eingetragen.

Happy Day
Michael

Offline tomtom62

  • Frischling
  • *
  • Beiträge: 20
  • Ich liebe dieses Forum!
Re:Ansicht abhängig von Userrole
« Antwort #15 am: 08.03.04 - 18:13:40 »
Das ist kein schlechter Gedanke, das werde ich noch einbauen..

Danke

Thomas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz