Odmowa dostępu do witryny pomimo posiadanych uprawnień
Table of Contents
Ostatnio spotkałem się z dziwną sytuacją, gdzie użytkownik narzekał, że dostaje odmowę dostępu do witryny, mimo że gdy sprawdzałem jego uprawnienia, SharePoint wyświetlał, że ma przyznany poziom dostępu „Contribute”.
Jednak tym, co mnie zaniepokoiło, był fakt, że oprócz wyświetlania dostępu „Contribute” użytkownikowi przyznano także osobno uprawnienia „Limited Access”:
Co więcej, ten ograniczony dostęp został nadany bezpośrednio, bez informacji, do jakiego elementu/ listy/ biblioteki faktycznie został przyznany. I to skłoniło mnie do myślenia, że może to jest powód odmowy dostępu.
Lista User information
Pchnięty tym uczuciem postanowiłem otworzyć ukrytą listę informacji o użytkowniku (znajduje się pod adresem: https://<your-tenant>.sharepoint.com/sites/…/_catalogs/users/simple.aspx) by odkryć, że wpis użytkownika jest tam obecny dwukrotnie:
Istnieje wiele przyczyn takiej sytuacji. W tym konkretnym przypadku użytkownik pracował dla firmy, następnie przeniósł się do innej i po pewnym czasie został ponownie zatrudniony. To spowodowało, że SharePoint pomyślał, że są to w rzeczywistości dwa różne konta, ponieważ mają różne identyfikatory SID (Security Identifier, pochodzące z AD). Kiedy więc użytkownik wszedł do SharePoint po ponownym zatrudnieniu, SharePoint utworzył drugi wpis na liście.
Na koniec, ponieważ people picker w formularzu przyznawania uprawnień traktował te dwa wpisy jako jeden, administrator mógł przyznać uprawnienia tylko jednemu z kont, podczas gdy drugie nadal nie miało uprawnień. Co skutkowało ciągłą odmową dostępu, pomimo przyznania użytkownikowi odpowiednich uprawnień. Tak SharePoint, kochamy cię <3 🙂
Jak to naprawić?
Przejdź do strony „All People” (jest dostępna pod adresem: https://<your-tenant>.sharepoint.com/sites/…/ _layouts/15/people.aspx?MembershipGroupId=0) i usuń oba lub tylko jedno z wystąpień.
Ważne! Musisz otworzyć „All People” w głównej witrynie kolekcji witryn. Gdy usuniesz oba wpisy, użytkownik straci istniejące uprawnienia, więc później trzeba je nadać ponownie. Opcjonalnie możesz tylko usunąć przestarzały wpis, ale musisz określić, który to jest (być może ten utworzony wcześniej lub ten, który będzie wyświetlał błędy w aplikacji Delve).
Po wybraniu wpisu, który chcesz usunąć, w sekcji „Actions” wybierz „Delete Users from Site Collection”:
Gdy to zrobisz, po prostu ponownie nadaj im uprawnienia. Problem rozwiązany!
Myślę, że może ci się przydać ten post: Find Duplicate Users in SharePoint User Information List – The Lazy SharePoint Admin (thelazyspadmin.com), gdzie James opisuje skrypt PowerShell, który pomoże Ci znaleźć wszystkie zduplikowane wpisy, dzięki czemu możesz je naprawić, zanim Twoi użytkownicy zaczną narzekać 🙂