MS Access-Berechtigungen mit Active Directory-Benutzer
Ist es möglich, um den Zugang und persmissions mit Active Directory-Benutzer?
Bearbeiten: Das übergeordnete Ziel ist es, einige Benutzer, um zu sehen, bestimmte Tabellen und verweigern diese Berechtigung auch für andere Benutzer. Ich Frage mich, ob es kann getan werden, mithilfe der active directory-Benutzer.
- Was ist Ihr Hauptziel? Welche Nutzer und welche Art von system Sie erstellen?
- Gleiche Frage für die Access 2007: stackoverflow.com/q/5833059/321973
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hängt davon ab, was du damit meinst Zugriffsberechtigungen. Access-Sicherheit auf Benutzerebene nicht die Interaktion mit Active Directory in keiner Weise. ACC: Microsoft Access Security FAQ im Download Center Verfügbar Es wird empfohlen, Sie Lesen Sie diese FAQ mehrmals. Ich muss zugeben, ich habe nie ganz verstanden. Siehe auch ACC2000: Übersicht über die Verfahren zum Sichern einer Microsoft Access-Datenbank
Nun, was Sie tun können, Lesen Sie die Active Directory-Daten für den angemeldeten Benutzer und Gruppen und so. Dann mit einigen lokalen Tabellen Zuordnung der verschiedenen AD-Gruppen zusammen mit den login-Benutzer-id die verschiedenen Objekte und Menüelemente Zugreifen, könnten Sie den Zugriff Steuern auf diese Weise. Beachten Sie jedoch, dass die lokalen Tabellen können eventuell den Pot mit einem versierten Benutzer, etc, etc.
Nützlich, die meisten URL, die ich gefunden habe, war die folgende newsgroup-Beiträgen Hilfe brauchen, erhalten Sie Liste der W2K-ad-Domäne (fqdn) durch die Verwendung von VB-Optionen hielt ich eine Seite von Notizen, wenn ich arbeiten war zu diesem Thema aber Sie können oder möglicherweise nicht nützlich sein. Kann ich posten, wenn gewünscht.
Ich bin einverstanden mit den Dingen, die die beiden Tony-und Philippe hat geschrieben. Ich möchte nur hinzufügen, ein bisschen:
Wenn Sie wirklich brauchen Sicherheit, dann die Jet/ACE-back-end ist das nicht tun den job auf deutliche definition des Wortes "Sicherheit". Jet ULS ist knacken, und ziemlich einfach, also für jedermann mit basic-Programmierung Koteletts. Also, wenn es die SICHERHEIT der DATEN, die Sie suchen zu bilden, Philippe ist richtig, dass Sie sollten wählen Sie eine andere Datenbank-engine.
Aber wenn Sie nur auf der Suche, um den ZUGRIFF in Ihre front-end-Anwendung, haben Sie drei Möglichkeiten:
pflegen ein paar Tabellen in Ihrer Datenbank, der Benutzer und der Berechtigungen auf die einzelnen Objekte.
implementieren Jet-user-level security.
AD Benutzer/Gruppen im Ort, Jet-ULS.
Keine dieser Entscheidungen ist nahtlos.
Sind und Sie alle bedeuten, dass Ihre front-end programmiert werden, um die Probleme.
Wenn Sie die Beschränkung des Zugangs aus Gründen der Sicherheit, dann macht es Sinn, eine Datenbank-engine, integriert mit der Windows-Sicherheit (z.B. SQL Server).
Wenn Sie es tun, nur um zu straffen Programmablauf und zur Anpassung der app zur Laufzeit an die Bedürfnisse bestimmter Benutzer, dann müssen Sie nicht unbedingt Sicherheit über die Daten zu speichern, so viel wie Sie brauchen einen Weg, um zu verfolgen, wer die Datenbank verwenden und zu welchen Gruppen Sie gehören, und dann, auf welche Teile der app, die Sie sollten Zugang zu (und, Sekundär, welche Ebene des Zugriffs, Lesen/schreiben, nur-Lesen, etc.).
Habe ich verwendet, Jet-ULS für diesen letzten Zweck seit Jahren, war aber nie ganz glücklich mit ihm, denn es ist nicht so einfach zu machen, user-überschaubar. Integration mit AD wäre eine gute Wahl sein, aber das bedeutet, dass wer verwaltet Ihre app muss über die Berechtigung zum verwalten von AD Benutzer. Dies kann nicht etwas sein, das Ihre freundliche Nachbarschaft sysadmin ist bereit zu erklären.
Auf der anderen Seite, wenn Sie am Ende brauchen beide back-end-security-und front-end-access-control, man kann nicht einfach eine SQL Server-back-end mithilfe der Windows-security für one-stop-shopping über AD.
Nach den wenigen Fragen, die Sie gebucht haben, die letzten Tage über den Zugang, es scheint mir offensichtlich, dass Sie berücksichtigen sollten, schalten Sie Ihre Tabellen (nicht die Formen) aus einer Access - /mdb-Datei auf einen SQLExpress-server, wo alle diese Sicherheitsprobleme können einfach verwaltet werden. Upsizing Ihrer Datenbank, fügen Sie Ihre Verbindungszeichenfolge als eine öffentliche variable in Ihrer client-app (oder in eine xml-Datei, die lokale Tabelle, oder irgendetwas anderes, dass kann hold der string auch noch eine extra-Eigenschaft Ihrer access-Datei kann den trick tun durch die currentDb.createProperty-Methode), und gehen Sie für eine echte client-server-Konfiguration.