PowerShell kullanarak Kullanıcıları Bir SharePoint Grubundan Diğerine Kopyalama
Son zamanlarda kullanıcıları bir SharePoint grubundan başka bir gruba kopyalama zorunluluğum vardı. Ne yazık ki SharePoint iç içe geçmiş grupları desteklemiyor ve grubu yeniden adlandırmanın bize faydası olmadı! Kullanıcıları bir gruptan diğerine kopyalamanın doğrudan bir yolu yoktur, ancak her kullanıcı kimliğini yeniden yazmak zorunda kalmadan, SharePoint kullanıcılarında kopyalama-taşıma işlemlerinde zaman kazanmak için bu numarayı kullanabilirsiniz:
- Site Eylemleri >> Site Ayarlarına gidin
- Kullanıcılar ve İzinler grubunun altındaki “Kişiler ve Gruplar”a tıklayın
Kaynak gruptan gerekli kullanıcıları seçin. “İşlemler” menüsünden “Kullanıcılara E-posta Gönder” seçeneğine tıklayın.
- Bu, Outlook gibi varsayılan E-posta istemcisini başlatır. Artık bu kimlikleri kopyalayabilirsiniz.
- Hedef SharePoint grubuna gidin >> Kullanıcıları ekleyin ve kopyalanan kimlikleri yapıştırın.
Birkaç kullanıcıyı SharePoint grupları arasında kopyalarken veya taşırken yukarıdaki yöntem nispeten daha basit olabilir. Birden fazla kullanıcıyı toplu olarak kopyalamak için komut dosyası yöntemini kullanmak daha iyi olmaz mıydı?
Kullanıcıları Bir SharePoint Grubundan Diğerine Kopyalamak/Taşımak için PowerShell Komut Dosyası:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Input variables
$WebURL = "https://sharepoint.crescent.com/sites/Operations/"
$SourceGroupName="Operations Members"
$TargetGroupName="Operations Owners"
#Get the Web
$web = Get-SPWeb $WebURL
#Get the Source and Target Groups
$SourceGroup = $web.groups | where {$_.name -eq $SourceGroupName }
$TargetGroup = $web.groups | where {$_.name -eq $TargetGroupName }
#Iterate through each users in the source group
foreach ($user in $SourceGroup.users)
{
$TargetGroup.AddUser($user)
Write-Host "Copied $user from $SourceGroup to $TargetGroup"
#To move users, Just remove them from source group
#$SourceGroup.RemoveUser($user)
}
PowerShell'i kullanarak kullanıcıları bir SharePoint site koleksiyonundan diğerine kopyalayın:
Yukarıdaki komut dosyası, kullanıcıları aynı sitedeki SharePoint grupları arasında kopyalar. Kullanıcıları farklı site koleksiyonlarındaki gruplar arasında kopyalayabilir miyiz? Neden? Kullanıcıları bir SharePoint site grubundan diğerine kopyalamak için yukarıdaki komut dosyasını biraz değiştirelim.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Input variables
$SourceWebURL = "https://sharepoint.crescent.com/sites/Operations/"
$TargetWebURL = "https://sharepoint.crescent.com/sites/Marketing/"
$SourceGroupName="Operations Members"
$TargetGroupName="Marketing Members"
#Get the Webs
$SourceWeb = Get-SPWeb $SourceWebURL
$TargetWebURL= Get-SPWeb $TargetWebURL
#Get the Source and Target Groups
$SourceGroup = $SourceWeb.groups | where {$_.name -eq $SourceGroupName }
$TargetGroup = $TargetWebURL.groups | where {$_.name -eq $TargetGroupName }
#Iterate through each users in the source group
foreach ($user in $SourceGroup.users)
{
$TargetGroup.AddUser($user)
Write-Host "Copied $user from $SourceGroup to $TargetGroup"
#To move users, Just remove them from source group
#$SourceGroup.RemoveUser($user)
}
