گاهی اوقات سرویس User Profile شیرپوینت به درستی عمل نمیکند و یا با تأخیر همگامسازی میشود. این مسئله باعث عدم بروزرسانی اطلاعات پروفایل کاربر مانند نام نمایشی، آدرس ایمیل و… شده و در نهایت سبب بروز مشکلات زیادی بخصوص در گردشکارها میشود. در این صورت میتوان به کمک دستورات PowerShell مشکل را بصورت دستی برطرف کرد و اطلاعات کاربران شیرپوینت با Active Directory را همگامسازی کرد.
کد زیر برای همگامسازی اطلاعات همه کاربران در همه مجموعهسایتها استفاده میشود:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue #گرفتن همه سایتکالکشنها $Sites = Get-SPSite -limit all #تکرار کردن برای هر سایت در سایتکالکشن foreach ($Site in $Sites) { #گرفتن کاربران سایت $UsersColl = Get-SPUser -web $Site.url #همگامسازی اطلاعات هر کاربر foreach($user in $UsersColl) { $User | Set-SPUser -SyncFromAD -ErrorAction SilentlyContinue Write-host –foregroundcolor green ".همگامسازی شد $($site.url) در سایت $($user.Name) اطلاعات کاربر" } }
کد زیر برای همگامسازی اطلاعات همه کاربران در یک مجموعهسایت استفاده میشود:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue #آدرس سایتکالکشن $SiteURL="https://mysitecollection" #گرفتن همه سایتها در سایتکالکشن $Sites = Get-SPSite $SiteURL | Get-SPWeb -limit all #تکرار کردن برای هر سایت در سایتکالکشن foreach ($Site in $Sites) { #گرفتن کاربران سایت $UsersColl = Get-SPUser -web $Site.url #همگامسازی اطلاعات هر کاربر foreach($user in $UsersColl) { $User | Set-SPUser -SyncFromAD -ErrorAction SilentlyContinue Write-host –foregroundcolor green ".همگامسازی شد $($site.url) در سایت $($user.Name) اطلاعات کاربر" } }