Jak zdiagnozować i naprawić problemy dotyczące uprawnień do folderu publicznego

Symptomy

W usłudze Exchange Online nie można wykonywać określonych zadań, takich jak tworzenie lub usuwanie elementów lub podfolderów w folderze publicznym. Ponadto może zostać wyświetlony komunikat o błędzie z informacją, że jest to problem związany z uprawnieniami.

Przyczyna

Ten problem zazwyczaj występuje, ponieważ replikacja hierarchii folderów publicznych nie została ukończona lub występują problemy.

Kroki rozwiązywania problemów

  1. Sprawdź skrzynkę pocztową folderu publicznego przypisaną do użytkownika. Aby to zrobić, uruchom następujące polecenie (na przykład):

    Get-Mailbox -Identity User1 | Format-List *public*
    
  2. Sprawdź, czy uprawnienia do folderu publicznego są replikowane do skrzynki pocztowej folderu publicznego przypisanej do użytkownika. Aby to zrobić, wykonaj następujące kroki.

    a) najpierw sprawdź uprawnienia do skrzynki pocztowej folderów publicznych w hierarchii głównej. Aby to zrobić, uruchom następujące polecenie cmdlet (na przykład):

    Get-PublicFolderClientPermission \puf1 -User User1 -Mailbox (Get-Mailbox -PublicFolder | ?{$_.IsRootPublicFolderMailbox -eq "True"}).Name
    

    b) Sprawdź uprawnienia do folderu dla użytkownika w skrzynce pocztowej folderu publicznego, który pochodzi z kroku 1 (na przykład).

    Get-PublicFolderClientPermission "\puf1" -User1 -Mailbox pubmbx1
    

    To polecenie cmdlet zwraca następujące dane wyjściowe:

    There is no existing permission entry found for user: user1.
        + CategoryInfo          : NotSpecified: (:) [Get-PublicFolderClientPermission], UserNotFoundInPermissionEntryExcep
       tion
        + FullyQualifiedErrorId : [Server=<*ServerName*>,RequestId=<*RequestId*>,TimeStamp=3/19/2020
        5:22:40 AM] [FailureCategory=Cmdlet-UserNotFoundInPermissionEntryException] 91D3F338,Microsoft.Exchange.Managemen
      t.StoreTasks.GetPublicFolderClientPermission
    + PSComputerName        : outlook.office365.com
    

    Wyjście wskazuje, że uprawnienia nie są jeszcze replikowane do skrzynki pocztowej folderu publicznego przypisanej do użytkownika. W niektórych przypadkach uprawnienie może pojawić się, ale będzie inne niż uprawnienie zwrócone w kroku 2b.

Rozwiązanie

Aby rozwiązać ten problem, ręcznie Replikuj uprawnienia do skrzynki pocztowej folderu publicznego przypisanej do użytkownika, uruchamiając następujące polecenie cmdlet (na przykład):

Update-PublicFolderMailbox pubmbx1 -InvokeSynchronizer

Następnie ponownie sprawdź uprawnienia, powtarzając polecenie cmdlet:

Get-PublicFolderClientPermission \puf1 -User User1 -Mailbox pubmbx1

Uwaga

Wyświetlenie zmiany uprawnień może potrwać kilka minut.

Więcej informacji

Jeśli uprawnienia nadal nie są synchronizowane lub po wymuszeniu synchronizacji hierarchii wystąpi błąd, wykonaj poniższe czynności, aby uzyskać dzienniki synchronizacji hierarchii:

  1. Porównanie hierarchii między skrzynkami pocztowymi folderów publicznych:

    $P=Get-PublicFolderMailboxDiagnostics <Primary_pfmailboxname> -IncludeHierarchyInfo
    $S= Get-PublicFolderMailboxDiagnostics <pfmailboxname_notreceiving_hierarchy> -IncludeHierarchyInfo
    
  2. Porównaj dane wyjściowe "HierarchyInfo" z obu skrzynek pocztowych:

    $p.HierarchyInfo
    $s.HierarchyInfo
    
  3. Jeśli okaże się, że informacje o hierarchii nie są takie same, uruchom następujące polecenie, aby wyświetlić godzinę ostatniej synchronizacji:

    $S.AssistantInfo.LastAttemptedSyncTime.LocalTime
    

    To polecenie wskazuje, kiedy Ostatnia synchronizacja nie powiodła się. Wartość niewykrywana wskazuje, że synchronizacja nie powiodła się.

    $s.AssistantInfo.LastFailedSyncTime.LocalTime
    

    Poniższe polecenie dostarcza szczegółowy komunikat o błędzie z ostatniej awarii synchronizacji. Puste wyjście wskazuje, że synchronizacja nie powiodła się:

    $s.AssistantInfo.LastSyncFailure
    

    Możesz również zapoznać się z innymi wartościami AssistantInfo, takimi jak SyncInfo i HierarchyInfo bloki.

Jeśli musisz skontaktować się z pomocą techniczną firmy Microsoft, wyeksportuj raport do formatu XML, a następnie wyślij go do agenta pomocy technicznej. Aby wyeksportować raport, uruchom następujące polecenie (na przykład):

Get-PublicFolderMailboxDiagnostics <pf mailbox failing to sync> -IncludeHierarchyInfo |Export-Clixml epf.xml