| |

VB.NET - FortgeschritteneZugriffsrechte einrichten | |  | Autor: escheuch | Datum: 28.02.08 12:37 |
| Und ich habe ein weiteres Problem. (siehe Benutzer aus Gruppen hinzufügen und entfernen)
Ich versuche in der gleichen Umgebung mit dem gleichen Tool ein Zugriffsrecht einzurichten. Sobald er folgende Anweisung durchführen soll
dSecurity_Hauptverzeichnis.SetAccessRule(New FileSystemAccessRule(New NTAccount( _
"kopper.lan\" & gruppe), Rechte, (InheritanceFlags.ContainerInherit And _
InheritanceFlags.ObjectInherit), PropagationFlags.None, _
AccessControlType.Allow)) kommt die Fehlermeldung:
System.Security.Principal.IdentityNotMappedException
Manche oder alle Identittsverweise konnten nicht bersetzt werden.
In der Onlinehilfe steht dann noch
Diese Ausnahme wird ausgelöst, wenn ein Principal keine zugeordnete Identitt besitzt und keiner bekannten Identitt zugeordnet werden kann.
Stellt eine Ausnahme für einen Principal dar, dessen Identitt keiner bekannten Identitt zugeordnet werden konnte.
Dann bin ich hingegangen und habe versucht diese Anweisung mehrmals hintereinander nochmals durchzuführen und dann hat es irgendwann funktioniert.
Deswegen ist im den folgenden Code diese "for i" Schleife drin.
Denn es ist nicht so, das es nicht funktioniert. Es braucht nur eine gewisse Zeit (oder mehrere Versuche und kurz hintereinander) um diese Anweisung korrekt auszuführen.
Anschließend werden weitere Anweisungen von Zugriffsberechtigungen ohne Probleme und sofort beim ersten mal durchgeführt.
Sub Rechte_anlegen(ByVal Hauptverzeichnis As String, ByVal gruppe As String, _
ByVal Rechte As String)
Dim dInfo_Hauptverzeichnis As New DirectoryInfo(Hauptverzeichnis)
Dim dSecurity_Hauptverzeichnis As DirectorySecurity = _
dInfo_Hauptverzeichnis.GetAccessControl()
Projektgruppen_anzeigen()
For i = 1 To 10000
Try
Rechte = FileSystemRights.ReadAndExecute
dSecurity_Hauptverzeichnis.SetAccessRule(New _
FileSystemAccessRule(New NTAccount("kopper.lan\" & gruppe), _
Rechte, (InheritanceFlags.ContainerInherit And _
InheritanceFlags.ObjectInherit), PropagationFlags.None, _
AccessControlType.Allow))
dInfo_Hauptverzeichnis.SetAccessControl( _
dSecurity_Hauptverzeichnis)
Continue For
Catch ex As Exception
'dient nur zum Abfangen des Fehlers und zum weiterführen
' der Schleife
End Try
Next i
End Sub Das Tool habe ich vorher in einer Testumgebung (VMware, und nur 1 Domänencontroller, aber identische Benutzer, Gruppen und Verzeichnisstruktur) ausgeführt. Und da gab es keine Probleme. Alles lief sofort einwandfrei.
Und wie gesagt, wenn ich Rechte oder Benutzerverwaltung über die Windows eigenen Tools durchführe, dann gibt es da auch keine Probleme. |  |
 Zugriffsrechte einrichten | 1.115 | escheuch | 28.02.08 12:37 |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|