您的位置:首页 > 运维架构 > Shell

Powershell配置SharePoint环境(再续)

2014-09-20 09:39 676 查看
1. 给用户在User Profile Service Application中赋权:

$accountName = "contoso\testuser"

$claimType ="http://schemas.microsoft.com/sharepoint/2009/08/claims/userlogonname"

$claimValue = $accountName

$claim = New-Object Microsoft.SharePoint.Administration.Claims.SPClaim($claimType,$claimValue, "http://www.w3.org/2001/XMLSchema#string",[Microsoft.SharePoint.Administration.Claims.SPOriginalIssuers]::Format("Windows"))

$claim.ToEncodedString()

$permission = [Microsoft.SharePoint.Administration.AccessControl.SPIisWebServiceApplicationRights]"FullControl"

$SPAclAccessRule =[Type]"Microsoft.SharePoint.Administration.AccessControl.SPAclAccessRule``1"

$specificSPAclAccessRule =$SPAclAccessRule.MakeGenericType([Type]"Microsoft.SharePoint.Administration.AccessControl.SPIisWebServiceApplicationRights")

$ctor =$SpecificSPAclAccessRule.GetConstructor(@([Type]"Microsoft.SharePoint.Administration.Claims.SPClaim",[Type]"Microsoft.SharePoint.Administration.AccessControl.SPIisWebServiceApplicationRights"))

$accessRule =$ctor.Invoke(@([Microsoft.SharePoint.Administration.Claims.SPClaim]$claim,$permission))

$ups = Get-SPServiceApplication| ? { $_.TypeName -eq 'User Profile Service Application' }

$accessControl =$ups.GetAccessControl()

$accessControl.AddAccessRule($accessRule)

$ups.SetAccessControl($accessControl)

$ups.Update()

2. 启动SharePoint场中所有的Timer Service:

$spFarm=Get-SPFarm

$spfTimerServcicesInstance=$spFarm.TimerService.Instances

foreach($spfTimerServiceInstance in $spfTimerServcicesInstances)

{

Write-Host"Re-starting the instance " $spfTimerServiceInstance.TypeName

$spfTimerServiceInstance.Stop()

$spfTimerServiceInstance.Start()

}

3. 备份SharePoint场中的solution:

New-Item $FolderPath\$FolderName -ItemType Directory -Force

Set-Location$FolderPath\$FolderName

(Get-SPFarm).Solutions | %{$Solutions =(Get-Location).Path + “\” + $_.Name; $_.SolutionFile.SaveAs($Solutions)}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: