PrincipalObjectAccess-Speicher verwalten

Benutzer in einer Umgebung mit der Microsoft Dataverse-Datenbank können mit anderen Benutzern zusammenarbeiten, indem sie Zugriff auf einen benutzereigenen Datensatz gewährt. Der Benutzer kann einen Datensatz mit einem anderen Benutzer oder Team teilen oder einen Datensatz einem anderen Benutzer oder Team neu zuweisen.

Um diese Zusammenarbeit auf Datensatzebene zu verwalten und Benutzerzugriff auf freigegebene Datensätze bereitzustellen, werden alle Freigaben von Datensätzen und ihre Berechtigungen in der Tabelle „PrincipalObjectAccess“ (POA) gespeichert. Immer wenn Benutzer versuchen, auf einen Datensatz zuzugreifen, den sie nicht besitzen, oder nicht über die entsprechenden Berechtigungen in ihrer Sicherheitsrolle verfügen, überprüft das System die POA-Tabelle, um den Zugriff des Benutzers zu autorisieren.

POA-Quellen

In den folgenden Themen werden die Einstellungen oder die Verwendung beschrieben, mit denen POA-Datensätze erstellt werden, da sie die gemeinsame Nutzung von Datensätzen ermöglichen. Die Einstellungen sollten überprüft und entsprechend aktualisiert werden, um eine übermäßige gemeinsame Nutzung und eine Erhöhung des POA-Speichers zu vermeiden.

Neu zugewiesene Datensätze mit ursprünglichem Besitzer gemeinsam verwenden

Standardmäßig wird die Einstellung Legen Sie fest, ob neu zugewiesene Datensätze mit dem ursprünglichen Besitzer gemeinsam verwendet werden auf Nein eingestellt. Dies ist der Fall, wenn der ursprüngliche Besitzende des Datensatzes keinen Zugriff mehr auf den Datensatz hat, wenn der Datensatzbesitzende einem anderen Benutzenden zugewiesen wird. Wenn diese Einstellung auf Ja eingestellt ist, dann wird ein Datensatz in der POA-Tabelle erstellt, wenn ein Benutzender einen Datensatz einem anderen Benutzenden oder Team zuweist. Der ursprüngliche Besitzer wird automatisch als Teilen hinzugefügt.

PrincipalObjectAccess-Speicher verwalten.

Zugriffsteams

Wenn ein Zugriffsteam für die Datensatzzusammenarbeit verwendet wird, werden Datensätze in der POA-Tabelle erstellt, sobald ein Benutzer zum Zugriffsteam hinzugefügt wird. Es gibt zwei Arten von Zugriffsteams.

  • Systemverwaltet: Diese werden über Vorlagen erstellt und in ein Formular eingebettet, damit der Benutzer die Mitgliederliste einfach verwalten kann. Das System erstellt automatisch ein Zugriffsteam für einen freigegebenen Datensatz. Beispiel: Konto Nr. 1 hat ein anderes Zugriffsteam als Konto Nr. 2.

  • Manuell hinzugefügt: Dies sind Teams mit individuellem Zugriff, bei denen ein Administrator/Besitzer des Teams die Liste der Teammitglieder verwaltet.

Direktes Teilen

  • Wenn ein Benutzer explizit einen Datensatz für einen anderen Benutzer freigibt, wird ein Datensatz in der POA-Tabelle erstellt.

Indirektes Teilen

  • Wenn ein Benutzer einen Datensatz für ein Team freigibt, wird er für alle Mitglieder des Teams indirekt freigegeben.

  • Die indirekte Freigabe erfolgt auch bei einem Datensatz, der eine kaskadierte Freigabebeziehung hat, oder bei einer Tabelle mit einer Ober-/Untergeordneten-Beziehung. Wenn ein übergeordneter Datensatz für einen Benutzer oder ein Team freigegeben wird, hat der freigegebene Benutzer oder das Team Zugriff auf alle kaskadierten oder untergeordneten Datensätze. Alle diese Berechtigungen für den Zugriff auf die untergeordneten Datensätze werden in der POA-Tabelle erstellt.

    Beispiel einer Tabellenbeziehung

    Eine Tabelle kann so eingestellt werden, dass sie Beziehungen mit anderen Tabellen hat (z. B. Konto zu Fall). Standardmäßig ist die Beziehung der Erneut überordnen-Option eingestellt auf Alles kaskadieren. Alle verknüpften Unterdatensätze werden für den Besitzer des übergeordneten Datensatzes freigegeben.

    Beispiel: Benutzer Nr. 1 besitzt Konto Nr. 1. Benutzer Nr. 1 teilt Konto Nr. 1 mit Benutzer Nr. 2. Benutzer Nr. 2 erstellt einen Fall Nr. 1 unter Konto Nr. 1. Mit den sofort einsatzbereiten Optionen zum erneuten Überordnen hat Benutzer Nr. 1 Zugriff auf Fall Nr. 1. Alle diese Benutzerberechtigungen werden in der POA-Tabelle erfasst.

Freigabequelle

Die RetrieveAccessOrigin-API kann verwendet werden, um zu bestimmen, woher der Zugriff eines Benutzers oder Teams auf eine bestimmte Tabelle stammt. Die API erfordert eine objectId, logicalName, and principalId in der Anforderung, und die Antwort ist eine Zeichenfolge, die beschreibt, wo der Zugriff auf die Tabelle erhalten wurde.

Verwaltung des POA-Tabellenwachstums

  • Bewerten Sie Ihre Geschäftsanforderungen und aktivieren Sie Legen Sie fest, ob neu zugewiesene Datensätze mit dem ursprünglichen Besitzer gemeinsam verwendet werden wo benötigt. Beachten Sie, dass dies eine systemweite Einstellung ist. Nach dem Einschalten wird die Einstellung auf alle Datensätze angewendet.
  • Geben Sie für die Zusammenarbeit mit Benutzern frei, wenn die Liste der Benutzer in den verschiedenen von Ihnen freigegebenen Datensätzen nicht identisch ist.
  • Verwenden Sie das Team als Datensatzbesitzer, wenn Sie häufig Datensätze für dieselbe Benutzerliste freigeben, oder geben Sie den Datensatz für das Team frei.
  • Wenn Sie eine komplexe Unternehmenseinheitsstruktur und häufige Nutzung von Freigaben haben:
    • Geben Sie nur bei Bedarf frei.
    • Die Anzahl der Konzernmandanten minimieren
    • Stellen Sie sicher, dass die Benutzer in der richtigen Unternehmenseinheit platziert sind.
    • Geben Sie für das Team frei, um Benutzern aus verschiedenen Unternehmenseinheiten den Zugriff auf Datensätze zu ermöglichen.
  • Wenn mehrere Zugriffsteams auf einen Datensatz zugreifen können (z. B. ein Vertriebsmitarbeiterteam, das den Datensatz nur lesen kann, und ein anderes Vertriebsmanagerteam, das über vollständigen Lese- und Schreibzugriff verfügt), sollten Sie die Verwendung unterschiedlicher rollenbasierter Formulare für Vertriebsmitarbeiter und Vertriebsmanager in Erwägung ziehen.
  • Verwalten Sie den Lebenszyklus Ihrer Zugriffsteammitglieder. Entfernen Sie Benutzer, die für die Zusammenarbeit nicht mehr benötigt werden.
  • Entfernen Sie alle Mitglieder des Zugriffsteams, wenn die Zusammenarbeit beendet ist.

Löschen von POA-Datensätzen

Die POA-Tabelle wird vom System verwaltet, um den ordnungsgemäßen Zugriff von Benutzern oder Teams auf die jeweiligen Datensätze sicherzustellen. Das direkte Löschen in dieser Tabelle wird nicht unterstützt, da es das für die Organisation definierte Sicherheitsmodell verletzen kann. Der richtige Weg, die POA-Tabelle zu bereinigen, besteht darin, das Sicherheitsmodell anzupassen und den zuvor gewährten Zugriff zu widerrufen.

Problembehandlungsanleitungen

Wenn die Kaskadenkonfiguration einer Tabellenbeziehung von Erneut überordnen oder Teilen in Nicht kaskadieren geändert wird, verwenden Sie diesen Artikel, um den geerbten Zugriff zu bereinigen. Dadurch werden unnötige POA-Datensätze entfernt. Weitere Informationen: Geerbten Zugriff bereinigen.

Die Bereinigung von geerbten Zugriffsrechten ist ein Systemauftrag, der die geerbten Legacy-Zugriffsrechte bereinigt, die nach dem Ändern des Kaskadenverhaltens in Nicht kaskadieren verbleiben. Weitere Informationen: Bereinigung der geerbten Zugriffsrechte

Um zu erfahren, ob der Benutzerzugriff aufgrund von POA gewährt wurde, lesen Sie Bestimmen, warum ein Benutzender Zugriff hat.

Siehe auch

Dataverse Speicherkapazität