Domino 9 und frühere Versionen > ND6: Entwicklung

ACL mit LS auslesen

(1/3) > >>

Hedwig14:
Hallo zusammen,

ich versuche gerade per LS alle DB-ACL auf dem Server nach einer bestimmten Gruppe abzufragen.
Möchte wissen, ob diese Gruppe in der ACL vorhanden ist. Auf den Catalog kann ich mich leider nicht 100%tig verlassen. Bekomme aber immer den Fehler

Fehler #4063 — Database Server!!admin4.nsf has not been opened yet

Wie kann ich das umgehen ?

#########################################


Dim s As New NotesSession   
   On Error Goto errHandler
   
   Dim dbdir As New NotesDbDirectory("hier ist der Server")
   Dim db As NotesDatabase
   Set db = dbdir.GetFirstDatabase(DATABASE)
   
   While Not (db Is Nothing)
      
'ACL auslesen
      Dim protokoll As New NotesLog("GruppenCheck : ")
      protokolldatei="d:\temp\GruppenCheck.txt"
      Call protokoll.OpenFileLog(protokolldatei)
      
      Dim acl As NotesACL
      Dim entry As NotesACLEntry
      Set acl = db.ACL
      Set entry = acl.GetEntry( "#MA-HO" )
      If Not ( entry Is Nothing ) Then
         Call protokoll.LogAction(db.Title)
         Call protokoll.LogAction(entry.Level)
         Call protokoll.LogAction("##############################")
      End If
weiter:
      Call protokoll.close
      Set db = dbdir.GetNextDatabase
   Wend
   
   'vorbereitung der  Mail
   Set mdoc = New NotesDocument(db)   
   mdoc.Form = "Memo"   
   mdoc.Subject = "Agent ACL Check"
   
   Dim object As NotesEmbeddedObject
   Dim rtitem As NotesRichTextItem
   Set rtitem = New NotesRichTextItem( mdoc, "Body" )
   
   Call rtitem.AppendText (" Hallo, anbei der aktuelle Auswertung : ")
   Call rtitem.AddNewline (4)   
   
   Set object = rtitem.EmbedObject ( EMBED_ATTACHMENT, "", protokolldatei)
   
   Call mdoc.Send( True, "xy")
   
   
errHandler:
   Call protokoll.LogAction("Fehler #" & Err & " — " & Error$ & " (Zeile: " & Erl & ")")
   Call protokoll.close
   Resume  weiter

MadMetzger:
Warum kannst du dich auf den Katalog nicht verlassen? Weil nicht alle Datenbanken gezeigt werden? Wenn es der Grund ist, dann kann man die Ansichten so anpassen, dass alle Datenbanken angezeigt werden. Enthalten sind nämlich immer alle Datenbanken, es werden nur die ausgeblendet, die einen bestimmten Haken in den DB-Eigenschaften gesetzt haben. Wenn es das ist, bemüh mal die Forumssuche, dann findest du hierfür eine Lösung...

koehlerbv:
Ändere folgende Zeile:
Dim db as NotesDatabase
in
Dim db as New NotesDatabase ("", "")

Bernhard

Hedwig14:


@Mad:
Im zweiten Schritt wollte ich bei den DB´s in denen die ACL gesetzt wurde eine
weitere Gruppe hinzufügen. Anspnsten hats Du Recht mit der Ansicht, gute Idee.

@Bernhard: Die Änderung hat leider keine Besserung gebracht !

Darf die die ACL im laufenden Betrieb nich abfragen ??? Kann ich mir nicht vorstellen !!

m3:

--- Code: ---Set db = dbdir.GetFirstDatabase(DATABASE)
Call db.Open( "", "" )
--- Ende Code ---

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln