ค้นหาเว็บไซต์

SharePoint Online: ให้สิทธิ์แก่รายการหรือไลบรารีโดยใช้ PowerShell


ความต้องการ: ให้สิทธิ์แก่ไลบรารีเอกสารใน SharePoint Online

จะแชร์ไลบรารีเอกสารใน SharePoint Online ได้อย่างไร

มีหลายครั้งที่คุณอาจต้องการให้สิทธิ์ในระดับรายการหรือไลบรารีแก่ผู้ใช้และกลุ่มใน SharePoint Online ตัวอย่างเช่น คุณอาจต้องการให้สิทธิ์การเข้าถึงแบบอ่านในระดับไซต์และสิทธิ์ในการแก้ไขในระดับรายการแต่ละรายการ ดังนั้น เมื่อต้องการให้สิทธิ์แก่รายการและไลบรารี ในขั้นตอนแรก เราต้องหยุดสืบทอดสิทธิ์จากแม่ จากนั้นจึงนำสิทธิ์ด้านความปลอดภัยที่ไม่ซ้ำกันไปใช้กับระดับใดๆ ที่อยู่ภายใต้ไซต์คอลเลกชัน เช่น ไซต์ย่อย รายการ ไลบรารี หรือรายการ

จะให้สิทธิ์การเข้าถึงรายการหรือไลบรารีใน SharePoint Online ได้อย่างไร

ฉันจะแชร์ไลบรารีเอกสารใน SharePoint Online ได้อย่างไร ต่อไปนี้คือวิธีการให้สิทธิ์แก่ไลบรารีเอกสารใน SharePoint Online:

  1. ไปที่รายการเป้าหมายหรือการตั้งค่าไลบรารี (จากหน้าไลบรารี คลิกที่แท็บไลบรารีบน Ribbon >> เลือกการตั้งค่ารายการ หากเปิดใช้งาน UI สมัยใหม่ ให้ไปที่การเชื่อมต่อไซต์แล้วคลิกการตั้งค่าจากเมนูบริบทของรายการ)
  2. ในหน้าการตั้งค่ารายการ คลิกลิงก์ "สิทธิ์สำหรับรายการนี้" ในกลุ่มสิทธิ์และการจัดการ
  3. ในหน้าการอนุญาต หากรายการสืบทอดสิทธิ์จากผู้ปกครอง เราจะต้องทำลายการสืบทอดสิทธิ์ คลิกที่ปุ่ม "หยุดการสืบทอดสิทธิ์"
  4. ตอนนี้จาก Ribbon ให้คลิกปุ่ม "ให้สิทธิ์" จากกลุ่ม Grant
  5. ป้อนชื่อหรือที่อยู่อีเมลในกล่องโต้ตอบแชร์ในกล่องข้อความที่กำหนด

  6. คลิกปุ่มแสดงตัวเลือก แล้วระบุตัวเลือกคำเชิญทางอีเมลและระดับสิทธิ์ที่เหมาะสม เช่น แก้ไข
  7. คลิกแชร์

ซึ่งจะให้สิทธิ์แก่ผู้ใช้ที่กำหนดในรายการหรือไลบรารีที่เลือก ขั้นตอนเดียวกันนี้นำไปใช้กับการให้สิทธิ์การเข้าถึงรายการ ไลบรารี และแต่ละรายการใน SharePoint Online

SharePoint Online: PowerShell เพื่อให้สิทธิ์แก่รายการหรือไลบรารีแก่ผู้ใช้หรือกลุ่ม

สิทธิ์ของรายการสามารถจัดการได้ด้วย PowerShell ต่อไปนี้เป็นสคริปต์ PowerShell ที่ตั้งค่าสิทธิ์ของ SharePoint Online ทั่วไป: สคริปต์นี้ให้สิทธิ์แก่กลุ่ม SharePoint ที่มีอยู่ในรายการที่กำหนด


#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"

#Configuration Parameters
$SiteURL= "https://crescent.sharepoint.com/sites/Projects/"
$ListName="Project Documents"
$GroupName="Project Members"
$PermissionLevel="Read"

#Setup Credentials to connect
$Cred = Get-Credential
$Cred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName,$Cred.Password)

Try {
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Ctx.Credentials = $Cred
  
    #Get the web and List
    $Web=$Ctx.Web
    $List=$web.Lists.GetByTitle($ListName)
    
    #Break Permission inheritence - keep existing list permissions & Item level permissions
    $List.BreakRoleInheritance($True,$True)
    $Ctx.ExecuteQuery()
    Write-host -f Yellow "Permission inheritance broken..."
    
    #Get the group or user
    $Group =$Web.SiteGroups.GetByName($GroupName) #For User: $Web.EnsureUser('salaudeen@crescent.com')
    $Ctx.load($Group)
    $Ctx.ExecuteQuery()

    #Grant permission to Group     
    #Get the role required
    $Role = $web.RoleDefinitions.GetByName($PermissionLevel)
    $RoleDB = New-Object Microsoft.SharePoint.Client.RoleDefinitionBindingCollection($Ctx)
    $RoleDB.Add($Role)
        
    #Assign list permissions to the group
    $Permissions = $List.RoleAssignments.Add($Group,$RoleDB)
    $List.Update()
    $Ctx.ExecuteQuery()
    Write-Host "Added $PermissionLevel permission to $GroupName group in $ListName list. " -foregroundcolor Green
}
Catch {
    write-host -f Red "Error Granting Permissions!" $_.Exception.Message
}  

นอกจากนี้เรายังสามารถตั้งค่าสิทธิ์ไลบรารีเอกสารใน SharePoint Online โดยใช้ PnP PowerShell หากคุณต้องการให้สิทธิ์แก่กลุ่ม AD Group/Office 365 ใหม่ ให้ใช้ดังต่อไปนี้:


#Config Variables
$GroupName ="Global@crescent.com" #Or Group ID

#Resolve the Group
$Group = $Web.EnsureUser($GroupName)
$Ctx.load($Group)
$Ctx.ExecuteQuery()

SharePoint Online: เพิ่มสิทธิ์ลงในรายการโดยใช้ PnP PowerShell

ให้เราใช้ PnP PowerShell cmdlet Set-PnPListPermission เพื่อเพิ่มสิทธิ์ให้กับรายการ SharePoint Online


#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/Marketing"
$ListName ="Projects"
$UserID="Peter@TheCrescentTech.com"
$GroupName = "Marketing Members"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)

#Break Permission Inheritance of the List
Set-PnPList -Identity $ListName -BreakRoleInheritance -CopyRoleAssignments

#Grant permission on List to User
Set-PnPListPermission -Identity $ListName -AddRole "Edit" -User $UserID

#Grant permission on list to Group
Set-PnPListPermission -Identity $ListName -AddRole "Read" -Group $GroupName

ในทำนองเดียวกัน คุณสามารถใช้ PowerShell นี้เพื่อกำหนดสิทธิ์ให้กับกลุ่มในรายการ:


Set-PnPGroupPermissions -Identity $GroupName -List ListName -AddRole Contribute

เมื่อต้องการลบผู้ใช้หรือกลุ่มออกจากสิทธิ์ของรายการ: SharePoint Online: ลบผู้ใช้หรือกลุ่มออกจากสิทธิ์ของรายการโดยใช้ PowerShell

ให้สิทธิ์การเข้าถึงรายการแก่ผู้ใช้ภายนอกโดยใช้ Powershell

ใช้สคริปต์ PowerShell เพื่อตั้งค่าสิทธิ์ในรายการ SharePoint Online หรือไลบรารีเอกสารให้กับผู้ใช้ภายนอก ตรวจสอบให้แน่ใจว่าคุณได้เปิดใช้งานการแชร์ภายนอกในระดับผู้เช่าและไซต์คอลเลกชัน


#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/retail"
$ListName ="Invoices"
$UserID="Mikewagan@gmail.com"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
 
#Break Permission Inheritance of the List
Set-PnPList -Identity $ListName -BreakRoleInheritance -CopyRoleAssignments
 
#Grant permission on List to External User
Set-PnPListPermission -Identity $ListName -AddRole "Edit" -User $UserID

คำถามที่พบบ่อย:

จะให้สิทธิ์แก่ไซต์ย่อยใน SharePoint Online ได้อย่างไร

แบ่งการสืบทอดสิทธิ์ของไซต์ย่อยถ้าสืบทอดสิทธิ์จากไซต์แม่ เมื่อเสร็จแล้ว คุณสามารถให้สิทธิ์การเข้าถึงไซต์ย่อยได้จาก: การตั้งค่า >> ลิงก์การอนุญาตไซต์ ข้อมูลเพิ่มเติม: จะให้สิทธิ์การเข้าถึงไซต์ย่อยใน SharePoint Online ได้อย่างไร

ฉันจะให้สิทธิ์การเข้าถึงไซต์ SharePoint Online ได้อย่างไร

ไปที่ไซต์ SharePoint Online ของคุณ >> คลิกที่เฟือง "การตั้งค่า" >> คลิกที่ "สิทธิ์ของไซต์" >> สิทธิ์ขั้นสูง ในหน้าการอนุญาตขั้นสูง เลือกกลุ่มที่เกี่ยวข้อง เช่น “<ชื่อไซต์> เจ้าของ” คลิกที่ “ใหม่” >> เพิ่มผู้ใช้ >> ป้อนชื่อผู้ใช้และคลิกที่ “แบ่งปัน”
ข้อมูลเพิ่มเติม: ให้สิทธิ์การเข้าถึงไซต์ SharePoint Online

บทความที่เกี่ยวข้อง