Megosztás a következőn keresztül:


SharePoint-felhasználók és -csoportok kezelése a PowerShell-lel

Ez a cikk Microsoft 365 Nagyvállalati verzió és Office 365 Nagyvállalati verzió egyaránt vonatkozik.

Ha Ön SharePoint-rendszergazda, aki nagy felhasználói fiókok vagy csoportok listájával dolgozik, és egyszerűbben szeretné kezelni őket, használhatja a Microsoft 365-höz készült PowerShellt.

Mielőtt hozzákezdene, a cikkben ismertetett eljárások megkövetelik, hogy csatlakozzon a SharePointhoz. Útmutatásért lásd: Csatlakozás a SharePoint PowerShellhez

Webhelyek, csoportok és felhasználók listájának lekérése

A felhasználók és csoportok kezelésének megkezdése előtt le kell kérnie a webhelyek, csoportok és felhasználók listáját. Ezt az információt ezután felhasználhatja a cikkben szereplő példa végigdolgozásához.

A bérlőben található webhelyek listáját az alábbi paranccsal szerezheti be:

Get-SPOSite

Kérje le a bérlőben lévő csoportok listáját az alábbi paranccsal:

Get-SPOSite | ForEach {Get-SPOSiteGroup -Site $_.Url} | Format-Table

Kérje le a bérlőben lévő felhasználók listáját az alábbi paranccsal:

Get-SPOSite | ForEach {Get-SPOUser -Site $_.Url}

Felhasználó hozzáadása a webhelygazdák csoportjához

A parancsmaggal Set-SPOUser hozzáadhat egy felhasználót a webhelycsoport webhelygazdáinak listájához.

$tenant = "<tenant name, such as litwareinc for litwareinc.com>"
$site = "<site name>"
$user = "<user account name, such as opalc>"
Set-SPOUser -Site https://$tenant.sharepoint.com/sites/$site -LoginName $user@$tenant.com -IsSiteCollectionAdmin $true

A parancsok használatához cserélje le az idézőjelek minden elemét, beleértve a és > a < karaktert is a megfelelő nevekre.

Ez a parancskészlet például hozzáadja az Opal Castillot (felhasználónév opalc) a Contoso bérlői contosoTest webhelycsoportjának webhelygazdáinak listájához:

$tenant = "contoso"
$site = "contosotest"
$user = "opalc"
Set-SPOUser -Site https://$tenant.sharepoint.com/sites/$site -LoginName $user@$tenant.com -IsSiteCollectionAdmin $true

Ezeket a parancsokat átmásolhatja és beillesztheti a Jegyzettömbbe, módosíthatja a $tenant, $site és $user változóértékeit a környezetből származó tényleges értékekre, majd a futtatásukhoz illessze be a parancsot a SharePoint Management Shell ablakába.

Felhasználó hozzáadása más webhelycsoportcsoportokhoz

Ebben a feladatban a Add-SPOUser parancsmaggal adunk hozzá egy felhasználót egy webhelycsoport SharePoint-csoportjához.

$tenant = "<tenant name, such as litwareinc for litwareinc.com>"
$site = "<site name>"
$user = "<user account name, such as opalc>"
$group = "<group name name, such as Auditors>"
Add-SPOUser -Group $group -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site

Például adja hozzá Glen Rife-t (felhasználónév: glenr) a ContosoTest webhelycsoport Auditor csoportjához a contoso bérlői fiókban:

$tenant = "contoso"
$site = "contosotest"
$user = "glenr"
$group = "Auditors"
Add-SPOUser -Group $group -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site

webhelycsoport Létrehozás

A New-SPOSiteGroup parancsmaggal létrehozhat egy új SharePoint-csoportot, és hozzáadhatja azt egy webhelycsoporthoz.

$tenant = "<tenant name, such as litwareinc for litwareinc.com>"
$site = "<site name>"
$group = "<group name name, such as Auditors>"
$level = "<permission level, such as View Only>"
New-SPOSiteGroup -Group $group -PermissionLevels $level -Site https://$tenant.sharepoint.com/sites/$site

A csoporttulajdonságok, például a jogosultsági szintek később frissíthetők a Set-SPOSiteGroup parancsmag használatával.

Tegyük fel például, hogy hozzáadjuk a Csak megtekintés engedéllyel rendelkező Auditor csoportot a contoso bérlői webhelycsoportjának contosotest webhelycsoportjára:

$tenant = "contoso"
$site = "contosotest"
$group = "Auditors"
$level = "View Only"
New-SPOSiteGroup -Group $group -PermissionLevels $level -Site https://$tenant.sharepoint.com/sites/$site

Felhasználók eltávolítása egy csoportból

Néha el kell távolítania egy felhasználót egy webhelyről vagy akár az összes webhelyről. Lehet, hogy az alkalmazott egyik részlegből a másikba költözik, vagy elhagyja a vállalatot. Ezt a felhasználói felületen egyszerűen elvégezheti egy alkalmazott esetében, de ez nem egyszerű, ha egy teljes részleget át kell helyeznie az egyik webhelyről a másikra.

A SharePoint Felügyeleti rendszerhéj és a CSV-fájlok használatával azonban ez gyors és egyszerű. Ebben a feladatban a Windows PowerShell használatával távolít el egy felhasználót egy webhelycsoport biztonsági csoportjából. Ezután egy CSV-fájlt használ, és sok felhasználót távolít el a különböző webhelyekről.

A "Remove-SPOUser" parancsmaggal távolítunk el egyetlen Microsoft 365-felhasználót egy webhelycsoportcsoportból, hogy láthassuk a parancs szintaxisát. A szintaxis a következőképpen néz ki:

$tenant = "<tenant name, such as litwareinc for litwareinc.com>"
$site = "<site name>"
$user = "<user account name, such as opalc>"
$group = "<group name name, such as Auditors>"
Remove-SPOUser -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site -Group $group

Tegyük fel például, hogy eltávolítjuk Bobby Overbyt a contoso bérlői webhelycsoport contosotest webhelycsoportjának Auditor csoportjából:

$tenant = "contoso"
$site = "contosotest"
$user = "bobbyo"
$group = "Auditors"
Remove-SPOUser -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site -Group $group

Tegyük fel, hogy el akarjuk távolítani Bobbyt az összes csoportból, amelyben jelenleg van. Ezt a következőképpen tehetnénk meg:

$tenant = "contoso"
$user = "bobbyo"
Get-SPOSite | ForEach {Get-SPOSiteGroup –Site $_.Url} | ForEach {Remove-SPOUser -LoginName $user@$tenant.com -Site $_.Url}

Figyelmeztetés

Ez csak egy példa. Csak akkor futtassa ezt a parancsot, ha valóban el kell távolítania egy felhasználót minden csoportból, például ha a felhasználó elhagyja a vállalatot.

Felhasználók és csoportok nagyméretű listáinak kezelésének automatizálása

Ha nagyszámú fiókot szeretne hozzáadni a SharePoint-webhelyekhez, és engedélyeket szeretne adni nekik, használhatja a Microsoft 365 Felügyeleti központ, az egyes PowerShell-parancsokat vagy a PowerShellt és egy CSV-fájlt. Ezek közül a lehetőségek közül a CSV-fájl a leggyorsabb módszer a feladat automatizálására.

Az alapvető folyamat egy OLYAN CSV-fájl létrehozása, amely fejlécekkel (oszlopokkal) rendelkezik, amelyek megfelelnek a Windows PowerShell szkript által igényelt paramétereknek. Egyszerűen létrehozhat egy ilyen listát az Excelben, majd exportálhatja CSV-fájlként. Ezután egy Windows PowerShell szkripttel iterálhatja a CSV-fájl rekordjait (sorait), és hozzáadhatja a felhasználókat a csoportokhoz és a csoportokat a webhelyekhez.

Hozzunk létre például egy CSV-fájlt a webhelycsoportok, csoportok és engedélyek egy csoportjának meghatározásához. Ezután létrehozunk egy CSV-fájlt, amely feltölti a csoportokat a felhasználókkal. Végül létrehozunk és futtatunk egy Windows PowerShell szkriptet, amely létrehozza és feltölti a csoportokat.

Az első CSV-fájl egy vagy több csoportot ad hozzá egy vagy több webhelycsoporthoz, és az alábbi struktúrával rendelkezik:

Fejléc:

Site,Group,PermissionLevels

Cikk:

https://tenant.sharepoint.com/sites/site,group,level

Íme egy példafájl:

Site,Group,PermissionLevels
https://contoso.sharepoint.com/sites/contosotest,Contoso Project Leads,Full Control
https://contoso.sharepoint.com/sites/contosotest,Contoso Auditors,View Only
https://contoso.sharepoint.com/sites/contosotest,Contoso Designers,Design
https://contoso.sharepoint.com/sites/TeamSite01,XT1000 Team Leads,Full Control
https://contoso.sharepoint.com/sites/TeamSite01,XT1000 Advisors,Edit
https://contoso.sharepoint.com/sites/Blog01,Contoso Blog Designers,Design
https://contoso.sharepoint.com/sites/Blog01,Contoso Blog Editors,Edit
https://contoso.sharepoint.com/sites/Project01,Project Alpha Approvers,Full Control

A második CSV-fájl egy vagy több felhasználót ad hozzá egy vagy több csoporthoz, és a következő struktúrával rendelkezik:

Fejléc:

Group,LoginName,Site

Cikk:

group,login,https://tenant.sharepoint.com/sites/site

Íme egy példafájl:

Group,LoginName,Site
Contoso Project Leads,bobbyo@contoso.com,https://contoso.sharepoint.com/sites/contosotest
Contoso Auditors,allieb@contoso.com,https://contoso.sharepoint.com/sites/contosotest
Contoso Designers,bonniek@contoso.com,https://contoso.sharepoint.com/sites/contosotest
XT1000 Team Leads,dorenap@contoso.com,https://contoso.sharepoint.com/sites/TeamSite01
XT1000 Advisors,garthf@contoso.com,https://contoso.sharepoint.com/sites/TeamSite01
Contoso Blog Designers,janets@contoso.com,https://contoso.sharepoint.com/sites/Blog01
Contoso Blog Editors,opalc@contoso.com,https://contoso.sharepoint.com/sites/Blog01
Project Alpha Approvers,robinc@contoso.com,https://contoso.sharepoint.com/sites/Project01

A következő lépésben a két CSV-fájlt mentenie kell a meghajtóra. Az alábbi példaparancsok CSV-fájlokat, valamint engedélyek és csoporttagság hozzáadását használják:

Import-Csv C:\O365Admin\GroupsAndPermissions.csv | ForEach {New-SPOSiteGroup -Group $_.Group -PermissionLevels $_.PermissionLevels -Site $_.Site}
Import-Csv C:\O365Admin\Users.csv | ForEach {Add-SPOUser -Group $_.Group –LoginName $_.LoginName -Site $_.Site}

A szkript importálja a CSV-fájl tartalmát, és az oszlopok értékeit használja a New-SPOSiteGroup és az Add-SPOUser parancs paramétereinek feltöltéséhez. Példánkban a fájlt a C meghajtó O365Admin mappájába mentjük, de bármikor mentheti.

Most távolítsunk el egy csomó embert a különböző webhelyek több csoportjából ugyanazzal a CSV-fájllal. Íme egy példaparancs:

Import-Csv C:\O365Admin\Users.csv | ForEach {Remove-SPOUser -LoginName $_.LoginName -Site $_.Site -Group $_.Group}

Felhasználói jelentések létrehozása

Előfordulhat, hogy be szeretne szerezni egy jelentést néhány webhelyről, és meg szeretné jeleníteni az adott webhelyek felhasználóit, jogosultsági szintjét és egyéb tulajdonságait. A szintaxis így néz ki:

$tenant = "<tenant name, such as litwareinc for litwareinc.com>"
$site = "<site name>"
Get-SPOUser -Site https://$tenant.sharepoint.com/sites/$site | select * | Format-table -Wrap -AutoSize | Out-File c\UsersReport.txt -Force -Width 360 -Append

Ez megragadja a három webhely adatait, és egy szövegfájlba írja őket a helyi meghajtón. A –Append paraméter új tartalmat ad hozzá egy meglévő fájlhoz.

Futtassunk például egy jelentést a Contoso1-bérlő ContosoTest, TeamSite01 és Project01 webhelyein:

$tenant = "contoso"
$site = "contosotest"
Get-SPOUser -Site https://$tenant.sharepoint.com/sites/$site | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append
$site = "TeamSite01"
Get-SPOUser -Site https://$tenant.sharepoint.com/sites/$site |Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append
$site = "Project01"
Get-SPOUser -Site https://$tenant.sharepoint.com/sites/$site | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append

Csak a $site változót kellett módosítanunk. A $tenant változó a parancs mindhárom futtatása során megőrzi az értékét.

Mi a teendő azonban, ha ezt minden webhelyen meg szeretné tenni? Ezt anélkül teheti meg, hogy be kellene gépelnie az összes webhelyet az alábbi paranccsal:

Get-SPOSite | ForEach {Get-SPOUser –Site $_.Url} | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append

Ez a jelentés meglehetősen egyszerű, és több kódot adhat hozzá, hogy pontosabb jelentéseket vagy jelentéseket hozzon létre, amelyek részletesebb információkat tartalmaznak. Ezzel azonban képet kaphat arról, hogyan kezelheti a SharePoint-környezet felhasználóit a SharePoint Felügyeleti rendszerhéj használatával.

Lásd még

Csatlakozás a SharePoint PowerShellhez

SharePoint kezelése a PowerShell-lel

A Microsoft 365 kezelése PowerShell használatával

A Microsoft 365-höz készült PowerShell használatának első lépései