Beiträge von knaepp

    hi,
    das artet jetzt ein wenig in - im fußball würde man sagen - kleinklein aus.


    Das von Notes verfolgte Konzept ist im Vergleich zu Exchange ein gänzlich anderes. Es ist DOKUMENT basiert. Das bedeutet, der Benutzer erzeugt Dokumente (in denen zum Beispiel Dateianhänge enthalten sein können) etc. Diese Dokumente können dann, wenn die entsprechenden Dokument-berechtigungen gesetzt worden sind, von den gewünschten BenutzerInnen gelesen bzw. bearbeitet werden. Dies setzt voraus, das die user in der Datenbank, in der sich die Dokumente befinden, die entsprechenden Berechtigungen haben.


    Die Strukturierung die Du genannt hast erinnert sehr stark an die Berechtigungsstrukturen innerhalb von Dateisystemen. Notes ist ein Datenbank-System, dessen Zugriffsmechanismen ANDERS gemanaged werden.


    Probleme sehe ich hier nicht bei der reinen Umsetzung der Sicherheitsmechanismen sondern lediglich bei der Migration der bestehenden Sicherheitsfunktion von Exchange. Um sowas zu automatisieren müßte eine Möglichkeit bestehen, diese Sicherheitsinformationen automatisiert auszulesen.


    Gibt's das?

    hi,
    Zugriffsberechtigungen lassen sich auf zwei Wegen nachbilden:


    1.Entweder man erstellt Datenbanken, die auf Dokumentebene die Zugriffsberechtigungen regeln, oder
    2.man erzeugt mehrere Datenbanken, über die dann per ACL der Datenbank die Zugriffsmöglichkeit geregelt wird.


    Zwischen beiden Extremen sind natürlich auch Mischformen denkbar, also mehrere Datenbanken (z.B. für je eine für ein Projektteam), in denen dann alle Dokumente abgelegt sind, die ein Team betreffen, wobei dann auf Dokumentebene die Schreib/Leseberechtigung der einzelnen Teammitglieder gesetzt wird.


    Sowas in Notes zu realisieren ist eigentlich kein großer Aufwand. Nur bei der Exchange-Seite hapert es bei mir ein wenig.

    Hi,
    versuch es doch mal mit der ExtractFile Methode der Klasse NotesEmbeddedObject.


    Hier ein Beispiel (aus der Notes-Hilfe):
    Dim doc As NotesDocument
    Dim rtitem As Variant
    Dim fileCount As Integer
    Const MAX = 100000
    fileCount = 0
    '...set value of doc...
    Set rtitem = doc.GetFirstItem( "Body" )
    If ( rtitem.Type = RICHTEXT ) Then
    Forall o In rtitem.EmbeddedObjects
    If ( o.Type = EMBED_ATTACHMENT ) _
    And ( o.FileSize > MAX ) Then
    fileCount = fileCount + 1
    Call o.ExtractFile _
    ( "c:\reports\newfile" & Cstr(fileCount) )
    Call o.Remove
    Call doc.Save( True, True )
    End If
    End Forall
    End If

    Hi,


    ich glaube auch das bei dieser Frage zunächst mal die Terminologien zu klären sind.


    Vermute ich richtig, dass ein öffentlicher Ordner vergleichbar ist einer Freigabe auf Betriebssystem-Ebene mit der Option festzulegen, wer was sehen und bearbeiten dar?

    Hi,
    da ist wohl was falsch verstanden worden. In manchen Distributionen gibt es eine zentrale Datei mit dem Namen bash_profile, mit der man die Umgebungsvariablen in einer bash shell definieren kann. Bei einer SuSe-Distribution heißt diese Datei meist /etc/profile. Standardmäßig sollte man aber diese zentralen Config-Dateien nicht für solche Spezialanwendungen wie Notes anfassen, sondern dies in den Usereinstellungen des einzelnen Benutzers machen, oder eine entsprechende local-Datei erzeugen: z.B. bei SuSe /etc/profile.local.


    Lange Rede, kurze Sinn:
    Dein useraccount, unter dem Domino läuft (nennen wir ihn mal 'notes') hat idR ein eigenes Home-Verzeichnis. Dort gibt es eine Datei namens .bashrc also explizieter Pfad:


    /home/notes/.bashrc


    Diese Datei lädst Du in den Editor.


    su notes
    vi /home/notes/.bashrc


    und hängst ganz am Ende die export-Zeile an.


    Von jetzt an wird jedes mal wenn der notes-user angemeldet wird dieser export (hier: nur setzen des korrekten Pfades für die domino-binaries und das data-Verzeichnis) ausgeführt und steht damit für den Start des SErvers zur Verfügung.


    So, damit sollte alles funktionieren.

    Hi,
    der Vorschlag von Ronka ist doch ganz gut! Ich würde aber eine Ansicht persönlich bei erster Verwendung vorziehen und in der ACL eintragen, dass die User keine eigenen Ansichten erzeugen dürfen. Damit liegt dann die Ansicht beim User auf dem Arbeitsplatz und befüllt nicht die Datenbank?


    Ist das vielleicht eine Lösung??

    Hi,
    du mußt die Benutzerzuordnung der einzelnen Dateien im notesdata-Verzeichnis auf den richtigen Nutzer-Account umbiegen. Ich gehe von folgender Verzeichnisstruktur aus:


    Notesdataverzeichnis: /usr/local/notesdata


    Du richtest die richtigen Eigentumsrechte ein als root-user.
    Wechsel in das Verzeichnis: cd /usr/local


    chown -R notes notesdata
    chgrp -R notes notesdata


    mit diesen beiden Befehlen werden die Besitzverhältnisse geklärt: alle Dateien gehören dem user notes und der Gruppe notes.


    Kontrollieren kannst Du den Erfolg mit:


    cd /usr/local/notesdata
    ll bzw. ls -l


    Gruß


    Matthias