SharePoint Online: Állítsa be a mappaengedélyeket a PowerShell segítségével
Követelmény: Módosítsa a mappák engedélyeit a SharePoint Online-ban a PowerShell segítségével.
Hogyan állíthat be mappaszintű engedélyeket a SharePoint Online-ban?
Az egyik leggyakoribb SharePoint Online adminisztrációs feladat a mappaengedélyek kezelése. Ebben a blogbejegyzésben bemutatjuk, hogyan használhatja a PowerShellt mappaengedélyek beállítására egy SharePoint Online webhelyhez. Kitérünk arra is, hogyan állíthatjuk be a SharePoint Online mappáinak engedélyeit a webböngésző felületén keresztül. Maradjon velünk!
Hogyan adhatunk egyedi engedélyt egy mappához a SharePoint Online-ban? A mappajogosultságok, például a Hozzáadás vagy a Korlátozás kezeléséhez a SharePoint Online-ban, kövesse az alábbi lépéseket:
- Keresse meg a SharePoint Online dokumentumtárat, ahol a célmappa található.
Kattintson a „Hozzáférés kezelése” elemre a részletek ablaktáblájában vagy a mappa helyi menüjében.
-
A Részletek ablaktáblában kattintson a „Speciális” hivatkozásra. Ezzel a „Speciális engedélyek” oldalra jut.
- A szalagon kattintson az „Engedélyek öröklésének leállítása” gombra, és erősítse meg a felszólítást (ha a mappa a szülőtől örökli az engedélyeket).
Most megjelenik azon felhasználók és csoportok listája, akik már rendelkeznek engedélyekkel a mappához. Ha megszegi az engedélyt, a SharePoint átmásolja az engedélyeket a szülőjétől (esetünkben a lista/könyvtár!). Kattintson az „Engedély megadása” gombra a szalagon, hogy felhasználókat adjon hozzá a mappához.
Adja meg azoknak a felhasználóknak és csoportoknak a nevét, akiknek engedélyt szeretne adni a mappához, és válassza ki a megfelelő jogosultsági szintet a megosztási oldalon található „Beállítások megjelenítése” hivatkozásra kattintva. Kattintson a „Megosztás” gombra, hogy engedélyt adjon a mappához.
Hasonlóképpen, a SharePoint Online mappájához való hozzáférés korlátozásához jelölje ki az összes felhasználót a mappaengedélyek oldalán, és kattintson a „Felhasználói engedélyek eltávolítása” gombra.
Rendben! A PowerShell segítségével adjunk hozzá felhasználókat egy SharePoint Online mappához.
PowerShell a SharePoint Online mappaszintű engedélyeinek módosításához:
Korlátozhatja a SharePoint Online mappáihoz való hozzáférést a PowerShell segítségével? Természetesen igen! Adjunk engedélyt a SharePoint Online mappához a PowerShell segítségével. Ez a PowerShell-szkript megszakítja egy mappa engedélyeit, és az ügyféloldali objektummodell (CSOM) használatával ad engedélyeket.
#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
#Variables
$SiteURL="https://crescent.sharepoint.com" #Or https://crescent.sharepoint.com/sites/Marketing
$FolderURL="/Project Documents/Active" #Or /sites/Marketing/Project Documents/Active - Server Relative URL of the Folder!
$GroupName="Team Site Members"
$UserAccount="Salaudeen@crescent.com"
$PermissionLevel="Edit"
Try {
$Cred= Get-Credential
$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
#Setup the context
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Credentials
$Web = $Ctx.web
#Get the Folder
$Folder = $Web.GetFolderByServerRelativeUrl($FolderURL)
$Ctx.Load($Folder)
$Ctx.ExecuteQuery()
#Break Permission inheritence of the folder - Keep all existing folder permissions & keep Item level permissions
$Folder.ListItemAllFields.BreakRoleInheritance($False,$True)
$Ctx.ExecuteQuery()
Write-host -f Yellow "Folder's Permission inheritance broken..."
#Get the SharePoint Group & User
$Group =$Web.SiteGroups.GetByName($GroupName)
$User = $Web.EnsureUser($UserAccount)
$Ctx.load($Group)
$Ctx.load($User)
$Ctx.ExecuteQuery()
#sharepoint online powershell set permissions on folder
#Get the role required
$Role = $web.RoleDefinitions.GetByName($PermissionLevel)
$RoleDB = New-Object Microsoft.SharePoint.Client.RoleDefinitionBindingCollection($Ctx)
$RoleDB.Add($Role)
#add sharepoint online group to folder using powershell
$GroupPermissions = $Folder.ListItemAllFields.RoleAssignments.Add($Group,$RoleDB)
#powershell add user to sharepoint online folder
$UserPermissions = $Folder.ListItemAllFields.RoleAssignments.Add($User,$RoleDB)
$Folder.Update()
$Ctx.ExecuteQuery()
Write-host "Permission Granted Successfully!" -ForegroundColor Green
}
Catch {
write-host -f Red "Error Granting permission to Folder!" $_.Exception.Message
}
Ez a PowerShell megszakítja a mappa engedélyeinek öröklését, és hozzáférést biztosít egy felhasználónak és csoportnak. Íme a mappaengedélyek változásának eredménye:
- Ha el szeretne távolítani egy felhasználót vagy csoportot a SharePoint Online mappából, használja ezt a PowerShell-szkriptet: Hogyan távolíthat el egy felhasználót vagy csoportot a SharePoint Online mappaengedélyei közül?
- Ha engedélyeket szeretne beállítani egy SharePoint Online dokumentumtár összes mappájához, tekintse meg a SharePoint Online: Engedélyek megadása a dokumentumtár minden mappájához a PowerShell segítségével.
PnP PowerShell a mappaengedélyek módosításához a SharePoint Online-ban
Ha engedélyt szeretne adni egy mappának a SharePoint Online-ban, használja ezt a PnP PowerShell-t:
#Config Variables
$SiteURL = "https://crescent.sharepoint.com/sites/marketing"
$ListName="Documents"
$FolderServerRelativeURL = "/sites/marketing/Shared Documents/2019"
$UserAccount = "Salaudeen@crescent.com"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)
#Get the Folder from URL
$Folder = Get-PnPFolder -Url $FolderServerRelativeURL
#Grant Permission to a Folder
Set-PnPListItemPermission -List $ListName -Identity $Folder.ListItemAllFields -User $UserAccount -AddRole 'Contribute'
Hogyan korlátozható a hozzáférés egy mappához a SharePoint Online-ban?
A SharePoint Online mappákhoz való hozzáférést a Set-PnPFolderPermission parancsmag segítségével is korlátozhatja. Íme egy példa:
#Config Variables
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing"
$ListName ="Branding"
$FolderServerRelativeURL = "/Sites/Marketing/Branding/2020"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
#PowerShell to add user to sharepoint online folder
Set-PnPfolderPermission -List $ListName -identity $FolderServerRelativeURL -User "salaudeen@crescent.com" -AddRole "Edit"
#To remove user, use: Set-PnPfolderPermission -List $ListName -identity $FolderSiteRelativePath -User "salaudeen@crescent.onmicrosoft.com" -RemoveRole "Edit"
Hogyan módosíthatók a mappák engedélyei a SharePoint Online-ban a PnP PowerShell segítségével?
Hasonlóképpen, ha engedélyt szeretne adni egy SharePoint Online csoportnak, használja a következőket:
#Config Variables
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing"
$ListName ="Branding"
$FolderServerRelativeURL = "/Sites/Marketing/Branding/Active"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
#Grant folder permissions to SharePoint Group
Set-PnPfolderPermission -List $ListName -identity $FolderServerRelativeURL -AddRole "Edit" -Group "Marketing Members"
Ez a szkript megtöri az adott mappa engedély öröklését, és az adott felhasználó vagy csoport jogosultságait hozzáadja vagy eltávolítja a mappához. Hasonlóképpen beállíthat engedélyeket az AD-csoportokhoz, ha a nevét paraméterértékként használja a „felhasználó” értékre. Íme egy másik bejegyzés a SharePoint Online-ról: PowerShell mappaengedélyek beszerzéséhez
Gyakran Ismételt Kérdések:
Hogyan korlátozhatom a hozzáférést egy dokumentumtárhoz a SharePoint Online-ban?
Böngésszen a dokumentumtárhoz >> Kattintson a Beállítások >> "Könyvtár beállításai" >> Kattintson a "Ennek a dokumentumtárnak engedélyei" elemre >> Kattintson az "Engedélyek öröklésének leállítása" lehetőségre. Mostantól felhasználókat és csoportokat vehet fel vagy távolíthat el a dokumentumtárból az engedélyek korlátozása érdekében.
További információ: Állítsa be az engedélyeket egy dokumentumtárhoz a SharePoint Online-ban
Hogyan tehetek mindenki számára elérhetővé egy SharePoint Online mappát?
Csak adjon hozzáférést a „Mindenki” csoporthoz a mappában! Hogyan biztosíthatunk hozzáférést mindenkinek a SharePoint Online-ban?




