在具有单个 SQL Server 2008 SP1/Windows Server 2008 Std SP2 后端的简单服务器场中,Windows Server 2008 R2 Std SP1(域控制器)上的 SharePoint Foundation 2010 SP1
我知道不建议在 DC 上安装 SP,但我别无选择。
尝试运行Get-SPWeb -site [site path]
我收到以下错误:
Get-SPWeb : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
At line:1 char:10
+ Get-SPWeb <<<< -site [site path]
+ CategoryInfo : InvalidData: (Microsoft.Share....SPCmdletGetWeb:SPCmdletGetWeb) [Get-SPWeb], UnauthorizedAccessException
+ FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletGetWeb
我以 SP_admin 身份运行。为了确保 SP_admin 在数据库上具有 SharePoint_Shell_Access 角色,我尝试运行,Add-SPShellAdmin -username DOMAIN\SP_admin -database [GUID]
但出现此错误:
Add-SPShellAdmin : You need to have Machine administrator priviliges to run this cmdlet.
At line:1 char:17
+ Add-SPShellAdmin <<<< -username DOMAIN\SP_admin -database $spcdb
+ CategoryInfo : InvalidData: (Microsoft.Share...AddSPShellAdmin:SPCmdletAddSPShellAdmin) [Add-SPShellAdmin], SPException
+ FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletAddSPShellAdmin
我检查过:
- 我正在以 SP_admin 帐户身份运行
- SP_admin 是管理员组的成员
- SP_admin 是 WSS_ADMIN_WPG 组的成员
- SP_admin 在 SQL Server 实例上具有 securityadmin 角色
- SP_admin 在内容数据库上具有 db_owner 角色
当帐户属于管理员组时,为什么会抱怨我需要以计算机管理员身份运行? 这可能是因为 DC 和 AD 取代了本地组吗?
答案1
可以快速尝试的一个方法是右键单击“开始”菜单中的 SharePoint 命令行管理程序,以“管理员”身份运行它,然后选择“以管理员身份运行”。
如果这不起作用,请检查您的服务器并查看 UAC 是否打开,当我过去遇到该机器管理员权限错误时,我不得不关闭 UAC 才能解决问题。
以管理员身份运行也许能缓解这个问题,但我当时没有尝试过。