Zarządzanie magazynem PrincipalObjectAccess

Użytkownicy w środowisku z bazą danych Microsoft Dataverse mogą współpracować z innymi użytkownikami, udzielając dostępu do rekordu należącego do użytkownika. Użytkownik może udostępnić rekord innemu użytkownikowi lub zespołowi albo przydzielić rekord innemu użytkownikowi lub zespołowi.

Aby zarządzać współpracą na poziomie rekordów i zapewnić użytkownikom dostęp do współdzielonych rekordów, wszystkie współdzielone rekordy i ich uprawnienia są przechowywane w tabeli PrincipalObjectAccess (POA). Kiedy użytkownicy próbują uzyskać dostęp do rekordu, którego nie są właścicielami lub nie mają odpowiednich uprawnień w ramach swojej roli bezpieczeństwa, system sprawdza tabelę POA, aby autoryzować dostęp użytkownika.

Źródła POA

Poniższe tematy przedstawiają ustawienia lub użycie, które tworzą rekordy POA, ponieważ umożliwiają one udostępnianie rekordów. Ustawienia powinny zostać zweryfikowane i odpowiednio zaktualizowane, aby uniknąć nadmiernego udostępniania i zwiększenia pamięci POA.

Udostępnij ponownie przypisane rekordy pierwotnemu właścicielowi

Domyślnym ustawieniem Ustaw, czy ponownie przypisane rekordy są udostępniane pierwotnemu właścicielowi jest Nie. Jest to sytuacja, w której pierwotny właściciel rekordu nie ma już dostępu do rekordu, gdy własność rekordu zostanie ponownie przypisana innemu użytkownikowi. Jeśli to ustawienie jest ustawione na Tak, rekord jest tworzony w tabeli POA za każdym razem, gdy użytkownik przypisze rekord do innego użytkownika lub zespołu. Pierwotny właściciel jest automatycznie dodawany jako Udział do.

Zarządzanie magazynem PrincipalObjectAccess.

Zespoły mające dostęp

Kiedy zespół dostępu jest używany do współpracy nad rekordami, rekordy są tworzone w tabeli POA za każdym razem, kiedy użytkownik jest dodawany do zespołu dostępu. Istnieją dwa rodzaje zespołów dostępu:

  • Zarządzane przez system: Są one tworzone za pomocą szablonów i osadzane w formularzu, aby umożliwić użytkownikowi łatwe zarządzanie listą członków. System automatycznie tworzy zespół dostępu do rekordu, który jest udostępniany. Na przykład konto nr 1 ma zespół dostępu, który jest inny niż konto nr 2.

  • Dodane ręcznie: Są to zespoły z indywidualnym dostępem, w których administrator/właściciel zespołu zarządza listą członków zespołu.

Bezpośrednie udostępnianie

  • Kiedy użytkownik jawnie udostępnia rekord innemu użytkownikowi, w tabeli POA tworzony jest rekord.

Udostępnianie pośrednie

  • Kiedy użytkownik udostępnia rekord zespołowi, wszyscy członkowie zespołu są pośrednio udostępniani.

  • Pośrednie udostępnianie występuje również z rekordem, który ma relację kaskadowego udostępniania lub na tabeli z relacją rodzic/dziecko. Kiedy rekord nadrzędny jest udostępniany użytkownikowi lub zespołowi, udostępniany użytkownik lub zespół ma dostęp do wszystkich rekordów kaskadowych lub podrzędnych. Wszystkie te uprawnienia do dostępu do rekordów dziecka są tworzone w tabeli POA.

    Przykład relacji między tabelami

    Tabela może być ustawiona tak, by miała relacje z innymi tabelami (na przykład Konto do Sprawy). Domyślnie relacja opcji Nadrzędny jest ustawiona na Kaskadowanie wszystkich. Wszystkie powiązane rekordy podrzędne są udostępniane właścicielowi rekordu nadrzędnego.

    Na przykład: Użytkownik #1 jest właścicielem konta #1. Użytkownik #1 współdzieli konto #1 z użytkownikiem #2. Użytkownik #2 tworzy sprawę #1 pod kontem #1. W przypadku standardowych opcji zmiany nadrzędnego użytkownik #1 ma dostęp do sprawy #1. Wszystkie te uprawnienia użytkowników są zapisywane w tabeli POA.

Trwa udostępnianie źródła danych

Interfejs API RetrieveAccessOrigin może być użyty do określenia, skąd pochodzi dostęp użytkownika lub zespołu do określonej tabeli. API wymaga w żądaniu podania objectId, logicalName i principalId, a odpowiedzią jest łańcuch opisujący, gdzie uzyskano dostęp do tabeli.

Zarządzanie wzrostem stołu POA

  • Oceń swoje potrzeby biznesowe i w razie potrzeby włącz ustalenie, czy przypisane rekordy są udostępniane pierwotnemu właścicielowi. Zwróć uwagę, że jest to ustawienie ogólnosystemowe. Po włączeniu tego ustawienia zostanie ono zastosowane do wszystkich rekordów.
  • Udostępnianie użytkownikom w celu współpracy, gdzie lista użytkowników nie jest taka sama w różnych rekordach, które udostępniasz.
  • Użyj zespołu jako właściciela rekordu, jeśli często dzielisz rekordy z tą samą listą użytkowników lub dzielisz rekord z zespołem.
  • Jeśli masz złożoną strukturę jednostek biznesowych i często korzystasz z udostępniania:
    • Udostępniaj je tylko w razie potrzeby.
    • Zminimalizuj liczbę jednostek biznesowych.
    • Upewnij się, że użytkownicy są przypisani do odpowiedniej jednostki biznesowej.
    • Udostępnij zespołowi, aby umożliwić dostęp do rekordów użytkownikom z różnych jednostek biznesowych.
  • Jeśli do rekordu może mieć dostęp wiele zespołów – na przykład zespół przedstawicieli handlowych, który może tylko czytać rekord, i inny zespół kierowników sprzedaży, który ma pełny dostęp do odczytu i zapisu – rozważ użycie różnych formularzy opartych na rolach dla przedstawicieli handlowych i kierowników sprzedaży.
  • Zarządzaj cyklem życia członków zespołu ds. dostępu. Usuń użytkowników, którzy nie są już potrzebni do współpracy.
  • Po zakończeniu współpracy usuń wszystkich członków zespołu dostępu.

Usuwanie zapisów POA

Tabela POA jest zarządzana przez system w celu zapewnienia właściwego dostępu użytkowników lub zespołów do poszczególnych rekordów. Bezpośrednie usuwanie na tej tabeli nie jest obsługiwane, ponieważ może złamać model bezpieczeństwa zdefiniowany dla organizacji. Prawidłowym sposobem na oczyszczenie tabeli POA jest dostosowanie modelu bezpieczeństwa i cofnięcie dostępu, który został wcześniej przyznany.

Przewodniki rozwiązywania problemów

Gdy konfiguracja kaskadowa relacji tabeli zostanie zmieniona z Zmień nadrzędne lub Udostępnij na Bez kaskady, użyj tego artykułu, aby wyczyścić odziedziczony dostęp. Usuwa to niepotrzebne rekordy POA. Więcej informacji: Jak wyczyścić odziedziczony dostęp.

Oczyszczanie dziedziczonych uprawnień dostępu to zadanie systemowe, które pozwala wyczyścić starsze prawa dostępu dziedziczone, które pozostają po zmianie zachowania kaskadowego na Kaskadowo brak. Więcej informacji: Oczyszczanie odziedziczonych praw dostępu

Aby dowiedzieć się, czy dostęp użytkownika został przyznany z powodu POA, zobacz Ustalenie, dlaczego użytkownik ma dostęp.

Zobacz też

Pojemność magazynu Dataverse