当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

作者:精品下载站 日期:2024-12-14 21:16:45 浏览:17 分类:玩电脑

SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员


要求:将 Active Directory 安全组添加到 SharePoint Online 网站集管理员组。

PowerShell 添加 AD 安全组作为网站集管理员:

在 SharePoint Online 中,可以从 Active Directory 分配安全组作为网站集管理员。这允许多个用户管理网站集及其内容,从而减轻单个用户的负担并确保始终有人可以执行管理任务。使用 Active Directory 组集中管理所有网站集管理员是简化 SharePoint Online 管理的一个好主意 - 这样您就不必向租户中的每个网站添加个人。按照以下步骤添加 Active Directory 安全组或 Microsoft 365 组作为所有网站的网站集管理员。

步骤1:获取AD安全组ID

我们首先需要AD组的ID。使用 PowerShell 脚本检索 ID,并确保已安装 Azure AD 模块。


$GroupName = "Opera"

#Connect to Azure AD
Connect-AzureAD -Credential (Get-Credential)

#Get Security Group's SID
Get-AzureADGroup -SearchString $GroupName | Select DisplayName, ObjectId | Format-table

此脚本获取具有给定名称的所有 AD 安全组的 ID。复制组的 ID。

[玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

您还可以从 Azure AD 控制台获取 Active Directory 安全组的组 ID。

[玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

步骤 2:将 Active Directory 组添加到 SharePoint Online 网站集管理员组

现在,使用此 PowerShell 脚本将 AD 组添加为网站集管理员:


#Variables
$AdminURL = "https://crescent-admin.sharepoint.com/"
$SiteURL = "https://crescent.sharepoint.com/sites/marketing"
$ADGroupID = "3645e787-4f3e-44da-8b60-4fe9e32c5a24"

$LoginName = "c:0t`.c`|tenant`|$ADGroupID"

Try {
    #Connect to SharePoint Online
    Connect-SPOService -url $AdminURL -Credential (Get-Credential)
 
    $Site = Get-SPOSite $SiteURL
 
    Write-host -f Yellow "Adding AD Group as Site Collection Administrator..."
    Set-SPOUser -site $Site -LoginName $LoginName -IsSiteCollectionAdmin $True
    Write-host -f Green "Done!"
}
Catch {
    write-host -f Red "Error:" $_.Exception.Message
}

同样,您可以将 AD 组添加到租户中的所有网站集,如下所示:


#Import-Module Microsoft.Online.SharePoint.PowerShell

#Variables
$AdminURL = "https://crescent-admin.sharepoint.com/"
$ADGroupID = "3645e787-4f3e-44da-8b60-4fe9e32c5a24"

$LoginName = "c:0t`.c`|tenant`|$ADGroupID"

Try {
    #Connect to SharePoint Online
     Connect-SPOService -url $AdminURL -Credential (Get-Credential)
 
     #Get All Site Collections
     $Sites = Get-SPOSite -Limit ALL -IncludePersonalSite:$False
 
    Foreach ($Site in $Sites)
    {
        Write-host "Adding Site Collection Admin for:"$Site.URL
        Set-SPOUser -site $Site -LoginName $LoginName -IsSiteCollectionAdmin $True | Out-Null
    }
}
Catch {
    write-host -f Red "Error:" $_.Exception.Message
}

这使 Active Directory 组成员能够管理租户内的所有网站集。

[玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

PnP PowerShell 将 Active Directory 组添加为网站集管理员

上述脚本也可以在 PnP PowerShell 中编写:


#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/retail"
$AzureADGroupID = "c:0t.c|tenant|f4e108b8-3294-4bc8-8792-6b28f32ffaa5"

#Connect to SharePoint Online
Connect-PnPOnline -url $SiteURL -Interactive

#Resolve the Group
$ADGroup = Get-PnPUser | Where-Object LoginName -eq $AzureADGroupID
If($ADGroup -eq $null) {        
    $ADGroup = New-PnPUser -LoginName $AzureADGroupID
}

#Add AD Security group as Site collection admin
Add-PnPSiteCollectionAdmin -Owners $ADGroup

您还可以使用 PowerShell CSOM 脚本添加网站集管理员 SharePoint Online:使用 PowerShell 添加网站集管理员

添加 Microsoft 365 组作为网站集管理员怎么样?

这次,我们将 Microsoft 365 组添加为租户中所有网站的网站集管理员。按着这些次序:

创建 Microsoft 365 组并根据您的要求向其中添加成员

  1. 登录 Microsoft 管理中心 https://admin.microsoft.com,导航到组 >> 活动团队和组
  2. 在“Microsoft 365”选项卡下,单击“添加组”
  3. 相应地命名您的组 >> 将所有者和成员分配给该组,为其设置电子邮件 ID,然后创建一个组。

    [玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

使用 Azure AD 或 PowerShell 获取组的“对象 ID”

  1. 从 https://aad.portal.azure.com/ 登录到 Azure AD
  2. 单击树视图中的“Azure Active Directory”,然后单击“组”。
  3. 选择在上一步中创建的 Microsoft 365 组。就我而言,它是“SharePoint Online Administrators”并复制“对象 ID”。

    [玩转系统] SharePoint Online:使用 PowerShell 将 Active Directory 安全组设置为网站集管理员

虽然可以通过 Web 浏览器界面轻松在网站集管理员组下添加 Microsoft 365 组,但如果您想快速添加一个组作为租户中多个网站的网站集管理员,该怎么办?让我们编写该过程的脚本!使用此 PnP PowerShell 脚本将 Microsoft 365 组作为网站集管理员添加到 SharePoint Online 网站:


#Parameters
$TenantAdminURL="https://Crescent-admin.sharepoint.com"
$ObjectID = "0ddafc96-4e5a-4d3b-8067-ef7c8cfc349c"

#Get Credentials to Connect
$Cred = Get-Credential

#Connect to Tenant Admin
Connect-PnPOnline -Url $TenantAdminURL -Credentials $Cred

#Get All Site Collections 
$Sites = Get-PnPTenantSite -IncludeOneDriveSites:$false
        
#Loop through each Site Collection
ForEach ($Site in $Sites)
{
    #Connect to the Site
    Connect-PnPOnline -Url $Site.Url -Credentials $Cred

    #Add Microsoft 365 group to Site Collection Admin
    Add-PnPSiteCollectionAdmin -Owners "c:0o.c|federateddirectoryclaimprovider|$ObjectID"
    Write-host "Added Microsoft 365 Group to the site:"$Site.URL -f Green
}

“SharePoint Online 管理员成员”将添加到租户中的所有网站。

总之,在 SharePoint Online 中将 Active Directory 安全组设置为网站集管理员可以带来许多好处,包括提高效率、更好的协作和提高安全性。通过使用 PowerShell,此过程可以自动化,从而降低人为错误的风险并节省时间和精力。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯