【问题标题】:Sitecore - copy Role and users to new environmentSitecore - 将角色和用户复制到新环境
【发布时间】:2015-11-09 15:56:04
【问题描述】:

我们正在使用具有 Active Directory 集成的 Sitecore 8 update 3。我正在尝试从我们的开发环境复制一个角色和与之相关的各个用户到 Prod

示例:

角色: Sitecore/IHaveAccess
用户: ad/dk123、ad/dk234、ad/dk345...

我尝试了两种不同的方法:

方法一:生成包:

通过创建第 19 页上描述的包:https://sdn.sitecore.net/upload/sitecore6/65/package_designer_admin_guide-a4.pdf

当我在新环境中安装软件包时,添加了角色,但没有一个用户在该角色下。

方法二:序列化:

我序列化了项目,但是在 Notepad++ 中查看时不包含任何用户。当我序列化组中的用户时,我确实看到了该组。

有什么想法为什么我们会遇到这个问题?

【问题讨论】:

  • 你看到这个答案了吗? - stackoverflow.com/questions/11553980/…
  • 另外,此链接goo.gl/A9D0MV 与您的问题相关。在我过去成功地使用了这两种方法,现在也在我的沙箱上测试了它 - 成功的用户序列化。看起来你在其他地方遇到了问题,即。在您的配置中。
  • 我尝试了这两个选项都不成功,可能是因为我使用的是 Active Directory 并且 AD 用户没有存储在 sitecore 中?我会继续研究这个。
  • @DanO 你在序列化什么?角色或用户(或两者)?您对 AD 有什么类型的访问权限?它是只读还是 2 路同步?
  • @jammykam,我对角色和用户都进行了序列化,以查看其中的内容。角色没有用户,用户确实有角色。它只有一种方式同步,我们只阅读 AD.... 在一个单独的故事中,我们最初想使用 AD 组(而不是站点核心组并向其中添加用户)但遇到了问题。

标签: sitecore sitecore8


【解决方案1】:

不幸的是,会员信息是针对用户而不是针对角色存储的(对于角色中的角色也是如此)。在这种情况下,会员信息是针对 AD 用户存储的。您正在存储 用户是角色 x 的成员,而不是 角色 x 包含成员 y

这意味着您需要打包角色和相应的用户。不过,我不确定这将如何使用 AD,因为您实际上是在尝试通过 Sitecore 同步回用户相关数据。 我会确保您的 AD 提供程序没有在连接字符串中设置为只读或它的设置。 由于您只有单向同步,因此无法将该信息存储回 AD 并拥有它坚持下去。

就个人而言,我会以不同的方式设置我的角色以使管理更容易,但这显然取决于您的确切要求:

  • 创建一个 Sitecore 角色,针对该角色分配您的所有权限和安全性 (sitecore\IHaveAccess)
  • 创建一个匹配的 AD 角色 (ad\IHaveAccess) 并将其添加为您的 Sitecore 角色的成员
  • 将您的 AD 用户添加到您的 AD 组。他们将通过 Role In Role 获得正确的权限。如果您已经设置了 AD 组,您只需将现有组添加到新组即可。

使用此方法,您最多必须将您的 AD 角色添加回您的 Sitecore 角色(您不应将 AD 角色添加为 Sitecore 角色的成员,因此成员资格存储在 Sitecore 中)。它还具有您的用户/角色/成员身份集中位于一个系统中的优势。

【讨论】:

  • 感谢您的详细回复。与我们的小组一起研究这个问题,看看我们是否可以做到这一点。
猜你喜欢
  • 2013-07-08
  • 2011-07-25
  • 2011-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-05
  • 2017-03-04
  • 2014-01-17
相关资源
最近更新 更多