故障排除提示
SharePoint Manager Plus未启动
SharePoint Manager Plus 默认使用 Postgres 数据库,数据库连接需要 33315 端口才能工作。检查是否有任何其他应用程序在同一端口中运行。如果是这样,请更改产品位置conf文件夹中 database_params.conf 中的默认端口号(url=jdbc:postgresql://localhost:[Your_Port_Number_here]/spmpdb?useUnicode=true&characterEncoding=UTF-8)或释放端口33315(推荐)。
用户帐户权限
用于配置本地Farm服务器的用户帐户必须具有以下提到的权限
- 用户应该是远程机器的内置管理员组的成员
- 用户应该是Farm Administration Group的成员,打开Central Web Administration将用户添加到Farm Administrator组(如果之前未添加)。
- 用户应有权访问所有SharePoint数据库,即对所有SharePoint数据库(包括配置数据库和所有内容数据库)的 SQL Server SharePoint_Shell_Access数据库角色。通过PowerShell脚本将此角色分配给用户,请在远程计算机中打开 PowerShell 并运行
Add-PSSnapin Microsoft.SharePoint.PowerShell
Get-SPDatabase | Add-SPShellAdmin DOMAIN\UserName [将DOMAIN\UserName替换为实际用户帐户]
或者,您可以通过打开SQL Server Management Studio来执行此操作,为用户分配DBCREATOR、SECURITYADMIN和SYSADMIN服务器角色。此外,确保用户对所有 SharePoint 数据库都具有DBOWNER权限。
- 用户应该对所有Web应用程序具有完全控制权。打开Central Web Administration,在管理Web应用程序部分下,选择每个Web应用程序并点击顶部功能区上的用户策略选项并添加具有完全控制权限的用户。
或者,在远程计算机的PowerShell中运行以下脚本,通过PowerShell脚本分配
Add-PSSnapin Microsoft.SharePoint.PowerShell
$user = "DOMAIN\UserName"
$displayName = "User Display Name"
Get-SPWebApplication | foreach { `
$policy = $_.Policies.Add($user,$displayName) `
$role = $_.PolicyRoles.GetSpecialRole([Microsoft.SharePoint.Administration.SPPolicyRoleType]
::FullControl) `
$policy.PolicyRoleBindings.Add($role) `
$_.Update() `
}
SharePoint Manager Plus Farm配置
如果显示“访问拒绝”错误消息,该怎么办?
可能原因
- 用户名/密码无效。
- 远程服务器计算机的PowerShell远程处理可能已禁用。因此,它不允许用户使用远程PowerShell功能。
解决方案
- 重新检查您的凭据并重试。 [另外,请确保此用户帐户具有此处提到的所有必要权限]
- 在远程机器(SharePoint Server 机器)中,以管理员身份打开PowerShell 并运行以下命令(检查机器中是否有可用的公共网络连接。如果有,请将其更改为域或私有并继续)
Enable-PSRemoting -Force
注意:
如果您的远程计算机(SharePoint Server计算机)和客户端计算机(安装SharePoint Manager Plus的计算机)位于不同的域中,请在客户端计算机中运行以下命令,以管理员身份打开 PowerShell,(检查是否有任何公共网络连接可用在机器中。如果是,请将其更改为域或私有并继续)
- Enable-PSRemoting -Force
- Set-Item WsMan:\localhost\client\trustedhosts -Value "server.domain.com" [远程计算机的FullyQualifiedDomainName] -Concatenate -Force
- Restart-Service WinRM
显示“无法访问Farm”错误消息。该怎么办?
可能原因
- 检查机器中是否有任何公共网络连接可用。如果是这样,请将其更改为域或私有并继续。
- 使用的用户帐户可能不具备Farm管理员所需的所有权限。
- 远程机器不支持当前使用的身份验证。它不会将用户委托给另一台机器来访问数据库(多为数据库服务器)
解决方案
- 点击此处检查所有需要的权限并进行相应的配置。
- 在远程和客户端计算机中启用CredSSP身份验证可解决此问题。
在远程机器(SharePoint Server机器)中,以管理员身份打开PowerShell并运行以下命令,
Enable-PSRemoting -Force
Enable-WSManCredSSP -Role Server -Force
在客户端机器(SharePoint Manager Plus机器)中,以管理员身份打开PowerShell并运行以下命令命令,
Enable-PSRemoting -Force
Enable-WSManCredSSP -Role Client -DelegateComputer "server.domain.com" [远程计算机的FullyQualifiedDomainName] -Force
点击此处检查您的组策略设置。
注意:
如果您的远程计算机(SharePoint Server计算机)和客户端计算机(安装了SharePoint Manager Plus的计算机)位于不同的域中,请在客户端计算机中运行以下命令,以管理员身份打开 PowerShell,(如果您已经这样做,请忽略此操作步)
- Enable-PSRemoting -Force (ignore if already done this step)
- Set-Item WsMan:\localhost\client\trustedhosts -Value "server.domain.com" [远程计算机的FullyQualifiedDomainName] -Concatenate -Force
- Restart-Service WinRM
如果显示“添加Farm需要远程/本地PowerShell设置”错误消息,该怎么办?
可能原因
- 本地或远程PowerShell配置未正确完成。当您的远程计算机不信任客户端计算机时,也会发生这种情况。
解决方案
以管理员身份在客户端机器的 PowerShell 中运行以下命令,
- Enable-PSRemoting -Force
- Set-Item WsMan:\localhost\client\trustedhosts -Value "server.domain.com" [远程计算机的FullyQualifiedDomainName] -Concatenate -Force
- Restart-Service WinRM
以管理员身份在远程机器的PowerShell中运行以下命令,
显示“PowerShell版本小于 2”错误。该怎么办?
SharePoint Manager Plus需要PowerShell版本2或更高版本才能工作。升级您的PowerShell版本。
显示“需要远程/本地Powershell设置”错误。我该怎么办?
解决方案
注意: 遵循以下先决条件,在远程服务器计算机(SharePoint Server)和本地计算机(安装了SharePoint Manager Plus)上启用远程PowerShell
在SharePoint Server计算机上执行以下步骤: 以管理员身份打开PowerShell
- Enable-PSRemoting -Force
- Enable-WSManCredSSP -Role Server -Force
在本地计算机(安装SharePoint Manager Plus)上执行以下步骤: 以管理员身份打开PowerShell
- Enable-PSRemoting -Force
- Enable-WSManCredSSP -Role Client -DelegateComputer "server.domain.com" (远程服务器的完全限定域名)
- 点击此处检查您的组策略设置。
增加每个shell分配的最大内存的命令,建议大小为 1024 MB。
- Get-Item wsman:\localhost\shell\MaxMemoryPerShellMB (检查当前powershell内存大小)
- Set-Item wsman:\localhost\shell\MaxMemoryPerShellMB -Value 1024 -Force (仅在内存小于1024 MB时运行)
- Restart-Service WinRM
增加每个用户允许的最大并发shell的命令,推荐数量为 30。
- Get-Item wsman:\localhost\shell\MaxShellsPerUser (检查每个用户允许的最大并发shell)
- Set-Item wsman:\localhost\shell\MaxShellsPerUser -Value 30 -Force (仅当计数小于30时才运行)
- Restart-Service WinRM
注意:
如果远程服务器和本地机器位于不同的域中,请在本地机器上运行以下命令
- Enable-PSRemoting -Force
- Set-Item WSMan:\localhost\Client\TrustedHosts -Value "server.domain.com" (远程服务器的完全限定域名) -Concatenate -Force
- Restart-Service WinRM
Farm配置失败/同步失败(请求不支持错误):
SharePoint Manager Plus使用CredSSP身份验证连接到远程服务器以获取SharePoint数据。凭据安全支持提供程序协议(CredSSP)是一种身份验证提供程序,用于处理其他应用程序的身份验证请求。
凭据安全支持提供程序协议(CredSSP)中存在远程执行代码漏洞。为解决此安全漏洞,Microsoft为受影响的操作系统推出了安全更新(CVE-2018-0886 | CredSSP 远程代码执行漏洞)。客户端和服务器都需要更新,否则Windows和第三方CredSSP客户端可能无法连接到Windows或第三方主机。
例如,当尝试使用远程桌面连接进行连接时,您可能会收到如下所示的错误。
尝试建立远程Powershell连接时,您可能会收到如下所示的错误。
其他可能的错误列表:
- 发生身份验证错误
- 不支持请求的功能
- 提供给函数的令牌无效
点击此处了解有关该问题的更多信息。
您可以通过在客户端和远程服务器中安装Microsoft安全更新来解决此问题。
您可以从此处下载特定操作系统的安全更新。
同步
自动计划同步存在问题,它不会发生
- Farm服务器凭据可能已更改,并且可能未在SharePoint Manager Plus中更新。在这种情况下,请在SharePoint Manager Plus中更新您的Farm服务器密码并尝试。
- 或者可能已经有计划的同步正在运行。
立即同步不起作用
- Farm服务器凭据可能已更改,并且可能未在SharePoint Manager Plus中更新。在这种情况下,请在SharePoint Manager Plus中更新您的Farm服务器密码并尝试。
- 或者可能已经有计划的同步正在运行。
所需的本地组策略设置
此组策略设置需要在安装了SharePoint Manager Plus应用程序的机器上完成。
要启用客户端 CredSSP 以允许域中目标计算机的 winrm 用户凭据委派,请设置以下策略值:
- 计算机策略 → 管理模板 → 系统 → 凭证委派 → 允许委派新凭证 → 设置为启用并将WSMAN/*添加到服务器列表(lieu: WSMAN/mysharepointserver.domain.com),并勾选将操作系统默认设置与上面的输入连接起来
- 计算机策略 → 管理模板 → 系统 → 凭证委派 → 允许使用仅NTLM服务器身份验证委派新凭据 → 设置为启用并将WSMAN/*添加到服务器列表(lieu: WSMAN/mysharepointserver.domain.com),并勾选将操作系统默认设置与上面的输入连接起来
- 计算机策略 → 管理模板 → Windows组件 → Windows远程管理(WinRM) → WinRM客户端 → 允许CredSSP身份验证 → 设置为启用
创建自定义PowerShell会话配置
在SharePoint Server计算机上执行以下步骤:以管理员身份打开PowerShell,
- Register-PSSessionConfiguration -PSVersion 2.0 -Name ps2
现在,打开 SharePoint Manager Plus 安装位置并转到ManageEngine\SharePoint
Manager Plus\bin文件夹
- 在此位置以管理员身份打开命令提示符并运行connectDb.bat
- 在命令提示符窗口中运行查询 - Update ParamValueRelation set VALUE='ps2' where PARAM='PS_CONFIG_DEFAULT';
必须安装Windows Azure AD v2(AzureAD)模块才能同步Azure AD用户。
必须安装Windows Azure AD v2(AzureAD)模块才能同步Azure AD用户。请按照下面提到的具有管理权限的步骤操作:
- 如果您已安装PowerShellGet和nuget包提供程序,请继续执行步骤 (2)。
- 使用此链接安装PowerShellGet
- 使用以下命令在PowerShell中安装nuget包提供程序IInstall-PackageProvider
-Name Nuget -MinimumVersion 2.8.5.201 -Force;
- 现在,使用以下命令安装Azure AD v2(AzureAD)模块 - Install-Module -Name AzureAD
-Force
- 如果问题仍然存在,您的防火墙可能会阻止它。请联系support@manageengine.cn。
Azure AD 模块与产品的 32 位版本不兼容。
您必须使用32位版本的Sharepoint Manager Plus。必须安装Windows Azure Active Directory模块v2(AzureAD)才能从Azure Active Directory获取用户,该模块在32位版本中不可用。
因此,请按照以下提到的步骤,
-
下载并安装 Sharepoint Manager Plus(64位)
-
安装Azure Active Directory模块v2(Azure AD):
- 使用此链接安装PowerShellGet
- 使用以下命令在PowerShell中安装nuget包提供 - Install-PackageProvider
-Name Nuget -MinimumVersion 2.8.5.201 -Force;
- 现在,使用以下命令安装Azure AD v2(AzureAD)模块 - Install-Module -Name
AzureAD -Force
- 如果问题仍然存在,您的防火墙可能会阻止它。请联系support@manageengine.cn。