我正在尝试从SP文件夹中获取一些日志,并将它们写入同一台计算机上的另一个文件夹中。
因此,此脚本通过管理外壳起作用,但是如果我尝试在共享点门户页面上以最强大的权限在我的代码中执行相同的操作,如下所示:
using (WindowsIdentity.Impersonate(System.IntPtr.Zero))
{
WindowsIdentity.Impersonate(WindowsIdentity.GetCurrent().Token);
SPSecurity.RunWithElevatedPrivileges(
delegate()
{
//PowerShell runs here
}
}
它不起作用。
在SharePoint中,我具有“场管理员”的权限。也许PowerShell需要我必须在CA中打开的某些服务,或者它可能是什么?
如果您在sharepoint中执行此代码,sharepoint将使用应用程序池帐户执行该代码,并且该帐户不能具有所有权限。
请先检查一下。如果没有帮助,则可能必须将应用程序池帐户添加为shell admin:
Add-SPShellAdmin -username apppoolaccount
如果这也无济于事,请尝试禁用UAC。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句