从ASP.NET在_layouts下运行STSADM
是否可以从驻留在_layouts文件夹中的ASP.NET应用程序运行STSADM 我已在上复制了此代码从ASP.NET在_layouts下运行STSADM,.net,asp.net,sharepoint,sharepoint-2007,.net,Asp.net,Sharepoint,Sharepoint 2007,是否可以从驻留在_layouts文件夹中的ASP.NET应用程序运行STSADM 我已在上复制了此代码 当它运行时,返回消息是“访问被拒绝”如果您正在尝试执行stsadm,您可能需要授予对相关SharePoint应用程序的ASP.NET应用程序池帐户的访问权限。或者,如果您正在模拟帐户,则发送给相关的模拟用户。您还需要为应用程序池帐户授予其操作的所有SharePoint内容(SQL Server、SharePoint内容等)的附属权限 警告:这可能会带来各种风险,从Internet/Intran
当它运行时,返回消息是“访问被拒绝”如果您正在尝试执行stsadm,您可能需要授予对相关SharePoint应用程序的ASP.NET应用程序池帐户的访问权限。或者,如果您正在模拟帐户,则发送给相关的模拟用户。您还需要为应用程序池帐户授予其操作的所有SharePoint内容(SQL Server、SharePoint内容等)的附属权限
警告:这可能会带来各种风险,从Internet/Intranet运行STDAM可能会做各种我不敢想的事情。对stsadm命令执行中的注入攻击以及提升特权以执行stsadm的人(这些人没有必要这么做)要非常小心。你能想出一个更好的方法来做你想做的事情吗?Process.Start会导致STSADM 因此,如果您授予此帐户使用STSADM的权限,那么您必须确保您的网页正确地限制了可以执行的操作以及由谁执行的操作 +10对于tekiegreg的警告评论-如果你弄错了,它可能会变成核武器 也许更好的方法是使用对象模型,尽管从WSSv3开始,STSADM可以通过对象模型完成 这将有一些好处 1) 不解析console.out字符串
2) 你应该能够做到这一点,然后STSADM/SharePoint负责确定用户可以做什么。非常好的一点,我没有意识到SharePoint管理对象可以做这么多,是的,这是工作进程帐户,而不是应用程序池帐户。生活和学习是StackOverflow的主题。