Lista zawierająca foldery nie jest częstym przypadkiem, ponieważ alternatywą do tego jest utworzenie biblioteki dokumentów i mamy problem z głowy. W przypadku, jeśli pojawi się potrzeba utworzenia takiej listy, nie zawsze chcemy aby wszystkie zawarte w niej foldery były widoczne dla każdego użytkownika. Mowa tutaj o uprawnieniach do elementu, które odpowiedzialne są za to co użytkownicy będą mogli robić i widzieć. Ręczne nadawanie uprawnień może być czasochłonnym zajęciem, dlatego z pomocą przychodzi nam Power Automate, który zautomatyzuje dla nas cały proces.

Ale hola, hola, aby je nadać, musimy najpierw zerwać ich dziedziczenie oraz dotychczasowe uprawnienia. Zatem, jak to zrobić? I tutaj właśnie rozpoczynamy budowanie naszego przepływu, który krok po kroku przedstawię wam w poniższych punktach:

  1. Jak zawsze zaczynamy od wyboru wyzwalacza (triggera). W naszym przypadku będzie to „Po utworzeniu elementu” (When an item is created). W wymaganych polach wskazujemy Adres witryny oraz Nazwę listy.

    undefined
  2. Naszym następnym krokiem będzie dodanie akcji „Wyślij żądanie HTTP do programu SharePoint” (Send an HTTP request to SharePoint). Właśnie, to dzięki niej dojdzie do zatrzymania dziedziczenia uprawnień. 

    Pozostało nam wypełnić wymagane pola oraz te, które są niezbędne do prawidłowego wykonania się akcji:

    Adres witryny – wskazujemy adres witryny, na której utworzona została lista.

    Metoda – z listy rozwijanej wybieramy metodę POST.

    Identyfikator URI – w tym miejscu wpiszemy zapytanie, które na celu będzie miało zerwanie dziedziczenia oraz dotychczasowych uprawnień.

    W miejscu znacznika <ListName> wpisujemy Internal Name listy, który widoczny jest w adresie URL. W naszym przypadku będzie to „ListaFolderyDokumentow”.

    W miejscu znacznika <FolderName>, z zawartości dynamicznej wybieramy opcję Name, która będzie nazwą wyświetlaną utworzonego na liście folderu. W przypadku, jeśli folder nosiłby taką samą nazwę jak jego identyfikator ID, wtedy w miejsce znacznika <FolderName>, z zawartości dynamicznej wybralibyśmy opcję ID.
    _api/Web/GetFolderByServerRelativeUrl('Lists/<ListName>/<FolderName>/')/ListItemAllFields/breakroleinheritance(copyRoleAssignments=false, clearSubscopes=true)
    undefinedundefined
  3. Dziedziczenie oraz dotychczasowe uprawnienia folderu zostały zerwany, a więc przyszedł czas na nadanie nowych. Aby to zrobić, dodajemy akcję „Udziel dostępu do elementu lub folderu” (Grant access to an item or a folder). Do zakończenia procesu dzieli nas tylko prawidłowe wypełnienie poniższych pól:

    Adres witryny - wskazujemy adres witryny, na której utworzona została lista.

    Nazwa listy lub biblioteki – z listy rozwijanej wskazujemy nazwę naszej listy z folderami.

    Identyfikator – wskazujmy identyfikator ID elementu listy, do którego mają zostać nadane uprawnienia.

    Adresaci – wskazujemy osobę lub osoby, którym mają zostać przydzielone uprawnienia do folderu.

    Role – w tym miejscu z listy rozwijanej wybieramy poziom uprawnień jaki mają otrzymać adresaci.

    undefinedDotarliśmy do końca budowania naszego przepływu, gdzie proces zrywania dziedziczenia oraz starych uprawnień został w pełni zautomatyzowany. Już nie musimy się martwić straconym czasem, który poświęcilibyśmy na wykonywanie tych samych czynności ręcznie.