Sitecore管理工具(如更新安装向导)的角色访问

时间:2013-10-23 15:47:24

标签: sitecore sitecore6

注意:Sitecore 6.6 Update 6(rev.20130529)

嘿伙计们,我正在尝试允许角色中的某些用户能够访问更新安装向导的管理工具,以便他们可以将.update包部署到环境中。

但是,如果不给这些用户提供“管理员”权限,我似乎无法确定哪些角色可以提供此权限。

我尝试过以下角色:

  • Sitecore的\开发
  • sitecore \ Sitecore本地管理员

这些可以提供各种开发和维护工作,并提供大多数工具(包括标准软件包安装)。但是,访问管理URL时,仍会提示具有此访问权限的用户登录(/sitecore/admin/UpdateInstallationWizard.aspx)

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

您可以查看Sitecore.Ship作为将Sitecore更新包部署到环境中的替代方法。

本质上,该工具公开了一个允许通过HTTP远程安装更新包的端点。这种方法比更新安装向导有一些优势,因为它允许在安装软件包时禁用索引,从而加快软件包部署。

答案 1 :(得分:2)

不幸的是,由于文件夹结构会建议(/ sitecore / admin),用户需要是完整的管理员。

UpdateInstallationWizard基类的CheckSecurity()方法专门检查:

private bool CheckSecurity()
{
  User user = Context.User;
  if ((Account) user != (Account) null && user.IsAdministrator)
    return true;
  SiteContext site = Context.Site;
  string url = (site != null ? site.LoginPage : string.Empty) + "?returnUrl=" + this.Server.UrlEncode(string.Format("{0}.aspx{1}", (object) this.PageUrl, string.IsNullOrEmpty(this.Request.QueryString.ToString()) ? (object) string.Empty : (object) ("?" + this.Request.QueryString.ToString())));
  if (url.Length > 0)
    this.Response.Redirect(url, true);
  return false;
}

您可以在dotPeek反编译器中自行查看。它在Sitecore.Update.UpdateInstallationBase

的课程Sitecore.Update dll中定义