Autor Thema: ReplaceItemValue und Masken-/Abschnittsberechtigung  (Gelesen 4575 mal)

Offline Troubleshooter

  • Junior Mitglied
  • **
  • Beiträge: 69
  • Geschlecht: Männlich
Hi,

folgendes Szenario:

Eine Datenbank, in deren ACL -Default- auf "Autoren" + Docs erstellen steht. Zusätzlich ein paar User, die Editoren sind (+ Rolle "Editor")

Auf einer Maske sind einige bearbeitbare Felder und 1 berechnetes (beim Anlegen) Feld.
Die Editoren sollen die bearbeitbaren Felder bearbeiten dürfen, die -Default-User nur das berechnete Feld (überschreiben) und zwar per LotusScript.
Dh die -Default-User klicken beispielsweise auf einen Button in einer Ansicht, welcher LotusScript ausführt und das berechnete Feld des ausgewählten Dokuments ändert.

Ich steh aber völlig auf der Leitung, denn ich schaff es nicht, die Zugriffsrechte so zu setzen, dass es dem obigen Szenario entspricht.

Folgendes hab ich ua. versucht:
* das berechnete Feld in einen kontrollierten Abschnitt setzen und alle User auf diesen Abschnitt berechtigen -> Feld kann nicht geändert werden
* zusätzlich ein Autorenfeld in die Maske setzen und für * berechtigen -> -Default- hat auch auf die bearbeitbaren Felder Zugriff
* den für Editoren bearbeitbaren Teil ebenso in einen kontrollierten Abschnitt setzen und nur auf die Rolle "Editor" zu berechtigen -> -Default- hat auch auf die bearbeitbaren Felder Zugriff

Wäre sehr erfreut, wenn man mir wieder von der Leitung hilft ;)

Lg
Florian
« Letzte Änderung: 04.01.12 - 15:24:03 von Troubleshooter »
Domino: Notes 9.0.1

klaussal

  • Gast
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #1 am: 03.01.12 - 15:31:50 »
Jedes Feld zweimal in die Maske: einmal als bearbeitbar und als berechnet.
Je nachdem, wer mit welcher Rolle das Doc bearbeitet, wird entweder das eine oder andere versteckt.

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #2 am: 03.01.12 - 15:36:39 »
Hallo,

wenn die Autoren nicht in einem Autorenfeld aufgeführt sind, dürfen sie das Dokument nicht bearbeiten.
Wenn sie die Aktion über einen Button auslösen, müsste im Hintergrund ein Agent mit den entsprechenden Rechten laufen und die Aktion durchführen.

Warum nicht:
- die Autoren in ein Autorenfeld aufnehmen
- die Felder für die Editoren in einen zugriffskontrollierten Abschnitt

- ein berechnetes Feld, das die  berechtigten Editoren angibt
- im Abschnitt Zugriff auf 'berechnet zur Anzeige' und das Feld als Formel


edith: Editier-Fehler wieder rausgenommen
« Letzte Änderung: 03.01.12 - 16:13:59 von DAU-in »
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #3 am: 03.01.12 - 15:38:58 »

* den für Editoren bearbeitbaren Teil ebenso in einen kontrollierten Abschnitt setzen und nur auf die Rolle "Editor" zu berechtigen -> -Default- hat auch auf die bearbeitbaren Felder Zugriff


Dann hast du was falsch eingestellt.
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline Troubleshooter

  • Junior Mitglied
  • **
  • Beiträge: 69
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #4 am: 03.01.12 - 16:04:22 »
Danke für eure Antworten!

Jedes Feld zweimal in die Maske: einmal als bearbeitbar und als berechnet.
Je nachdem, wer mit welcher Rolle das Doc bearbeitet, wird entweder das eine oder andere versteckt.
Diese Lösung hab ich ein bisschen hinausgeschoben, da sie natürlich mit deutlichem Mehraufwand verbunden und nicht so schön anzusehen ist ;)

Warum nicht:
- die Autoren in ein Autorenfeld aufnehmen
- die Felder für die Editoren in einen zugriffskontrollierten Abschnitt
- ein berechnetes Feld, das die  berechtigten Editoren angibt
- im Abschnitt Zugriff auf 'berechnet zur Anzeige' und das Feld als Formel

So hab ichs ja eh (fast):
- Autorenfeld mit "*"
- Editorenfelder in kontrolliertem Abschnitt
- berechnetes Feld habe ich nicht, denn ...
- den Formelwert habe ich auf "[Editor]" festgesetzt, eben die Rolle, welche die Editoren haben

Dann hast du was falsch eingestellt.
Ist nur die Frage was.. an der ACL kanns nicht liegen, denn mein Testuser hat (über -Default- und auch effektiv) nur Autorenrechte, ohne Rolle
Domino: Notes 9.0.1

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #5 am: 03.01.12 - 16:17:09 »
Hast du den Zugriff auf 'berechnet zur Anzeige' stehen?

Hast du mit neuen Dokumenten getestet?

Hat der Autor wirklich nicht die Rolle 'Editor'? (expliziten Zugriff prüfen auf die DB)

Ich würde in einem Autoren- oder Leserfeld nicht mit '*' arbeiten.
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline Troubleshooter

  • Junior Mitglied
  • **
  • Beiträge: 69
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #6 am: 03.01.12 - 16:21:47 »
Hast du den Zugriff auf 'berechnet zur Anzeige' stehen?
- ja

Hast du mit neuen Dokumenten getestet?
- ja

Hat der Autor wirklich nicht die Rolle 'Editor'? (expliziten Zugriff prüfen auf die DB)
- ja

Ich würde in einem Autoren- oder Leserfeld nicht mit '*' arbeiten.
- hm, im Prinzip kann aber nicht genau definiert werden, wer auf das Dokument zugreifen soll, denn das wird dynamisch in anderen Dokumenten festgelegt. Deshalb hab ich mir gedacht, nehm ich einfach mal alle in das Feld rein. Da es berechnet is, kann so eh niemand die Werte in der Maske ändern - über LotusScript muss das aber eben möglich sein.
Gäb da eine idealere Alternative dazu?
Domino: Notes 9.0.1

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #7 am: 03.01.12 - 16:23:50 »
Ich würde in einem Autoren- oder Leserfeld nicht mit '*' arbeiten.

Genau - dann kann man das Item auch entfernen (Autor) oder leeren (Leser).

Florian:
Code
Diese Lösung hab ich ein bisschen hinausgeschoben, da sie natürlich mit deutlichem Mehraufwand verbunden und nicht so schön anzusehen ist
Keine Ahnung, was Du da getrieben hast, aber bei dieser Lösung ist keinerlei Unterschied sichtbar!

A-Bär: Das ist keine wirkliche Sicherheit! Diese hat Anita schon in ihrem ersten Post angetönt.

Bernhard

Offline Troubleshooter

  • Junior Mitglied
  • **
  • Beiträge: 69
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #8 am: 04.01.12 - 08:57:28 »
Ok, ich werd wohl dem Agenten entsprechende (höhere) Rechte geben.
Das klappt aber nur, wenn ich den Agenten mit einem User signiere, der in der DB-ACL dann die entsprechenden Rechte hat, oder?

Lg
Florian
Domino: Notes 9.0.1

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #9 am: 04.01.12 - 14:22:25 »
entweder den Agent auf 'Run on behalf' stzen und dort den berechtigten Anwender entsprechend ausführen.
Oder aber ein Flag setzen im Dokument, und einen periodischen Agenten laufen lassen.
Wenn du nur den Agenten signierst mit einem berechtigten Anwender, werden bei manuellem Auslösen die Rechte des auslösenden Anwenders verwendet.

Ich hoffe, ich hab das jetzt auch für 8.5 korrekt aufgeführt.

Ok, ich werd wohl dem Agenten entsprechende (höhere) Rechte geben.
Das klappt aber nur, wenn ich den Agenten mit einem User signiere, der in der DB-ACL dann die entsprechenden Rechte hat, oder?

Lg
Florian
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #10 am: 04.01.12 - 14:29:13 »
Oder NotesAgent.RunOnServer.

Bernhard

Offline Troubleshooter

  • Junior Mitglied
  • **
  • Beiträge: 69
  • Geschlecht: Männlich
Re: ReplaceItemValue und Masken-/Abschnittsberechtigung
« Antwort #11 am: 04.01.12 - 15:23:44 »
Sodala, nach ewigem Herumprobieren sieht die Lösung (in meinem Fall) nun wie folgt aus:

Ich hab einen eigenen User kreiert, den ich für solche Anforderungen verwende
Dieser User hat Editor-Rechte in der Datenbank
Den User hab ich im Agent auch im Feld "Run on behalf " definiert
Desweiteren wird der Agent per RunOnServer ausgeführt.

In dieser Kombination funktionierts endlich :)

Vielen Dank für eure Hilfe!
Domino: Notes 9.0.1

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz