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

SharePoint: อัปเดตชื่อที่แสดงของผู้ใช้โดยใช้ PowerShell


ข้อกำหนด: ฉันพบปัญหาที่ชื่อที่แสดงของผู้ใช้ปรากฏเป็นโดเมน/ชื่อผู้ใช้ แทนที่จะเป็นชื่อ นามสกุล

วิธีแก้ไข: เราสังเกตว่า หากการซิงค์โปรไฟล์ผู้ใช้ไม่ได้รับการกำหนดค่าหรือทำงานอย่างถูกต้อง เราจะประสบปัญหานี้! นอกเหนือจากโซลูชันของ UPS คุณสามารถใช้ PowerShell เพื่ออัปเดตชื่อที่แสดงของผู้ใช้ได้

PowerShell เพื่อเปลี่ยนชื่อที่แสดงของผู้ใช้ใน SharePoint 2013:

จะเปลี่ยนชื่อที่แสดงของผู้ใช้ SharePoint ด้วย PowerShell ได้อย่างไร คุณสามารถใช้ Set-SPUser cmdlet ได้ เพียงระบุข้อมูลประจำตัวของบัญชี ไซต์ และชื่อที่แสดงใหม่สำหรับผู้ใช้

เรียกใช้ PowerShell cmdlet นี้จาก SharePoint Management Shell


Set-SPUser -Identity "i:0#.w|Crescent\Salaudeen" -DisplayName "Salaudeen Rajack" `
           -Web https://intranet.crescent.com

ซิงค์รายละเอียดบัญชีผู้ใช้ เช่น ชื่อที่แสดง อีเมล แผนกจาก Active Directory:

บางครั้ง รายละเอียดบัญชีผู้ใช้อาจได้รับการอัปเดตใน AD แต่ไม่ได้รับการซิงค์ใน SharePoint หากเป็นกรณีนี้ คุณสามารถบังคับให้ซิงค์รายละเอียดบัญชีผู้ใช้ เช่น ชื่อที่แสดง อีเมล แผนก ฯลฯ จาก Active Directory ด้วยสคริปต์ PowerShell ด้านล่าง:


Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

#User Account to Sync and Site where the account exists
$UserAccount="Crescent\alex"
$WebURL="https://portal.crescent.com/projects/"

#Get the User's Current Display Name and E-mail
Get-SPUser -Identity $UserAccount -Web $WebURL | Select DisplayName,Email

#Force Sync from Active Directory
Set-SPUser -Identity $UserAccount -Web $WebURL -SyncFromAD

จะซิงค์ผู้ใช้ทั้งหมดจาก Active Directory อีกครั้งได้อย่างไร
หากต้องการซิงค์รายละเอียดผู้ใช้ทั้งหมดอีกครั้ง ให้ใช้สคริปต์ PowerShell นี้:


Get-SPUser -Web https://web-app-url | Set-SPUser -SyncFromAD

อัปเดตชื่อที่แสดงของผู้ใช้สำหรับทุกไซต์:


Get-SPSite -Limit All | Get-SPWeb | Foreach-object {
  Set-SPUser -Identity "i:0#.w|Crescent\Salaudeen" -DisplayName "Salaudeen Rajack" -Web $_ } 

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