在 Sitecore 实例之间迁移 Sitecore 安全性(user/domain/roles/groups)?

Migrate Sitecore security(user/domain/roles/groups) between Sitecore instances?

我需要将 Sitecore 6 user/domain/roles/groups 迁移到 Sitecore 8.1。

我可以序列化完整的 security(user/domain/roles/groups) 个实体吗,有什么方法吗?

是的,您可以在新环境中对它们进行序列化和反序列化。

请记住,所有密码都将重置为 b

下面是角色管理器的屏幕。有 2 个按钮:

  • 序列化所有角色
  • 还原所有角色

使用第一个序列化 Sitecore 6 解决方案中的所有角色。您会在 Data\serialization 文件夹中找到名为 security.

的新目录

将文件夹复制到您的 Sitecore 8 解决方案。序列化 Sitecore 8 角色,然后在 Sitecore 8 解决方案上单击 Revert All Roles。您需要先序列化 Sitecore 8 角色,因为如果您单击 Revert 而不先序列化它们,所有不在 Sitecore 6 中但在 Sitecore 8 中的角色都将被删除。

对域和用户重复这些步骤。

Sitecore Serialization Guide 的第 2.2.3 章涵盖了该主题。

这是 Transferring user passwords between Sitecore instances

上的指南

也可以使用 Sitecore Package Designer 来转移角色和用户:

请记住,由于 Sitecore 在数据库中以散列格式存储密码,任何像这样转移的用户都会将其密码重置为随机值。

要迁移域,默认情况下 Sitecore 会将这些添加到 /App_Config/Security/Domains.config,因此要么将此文件添加到您的 Visual Studio 项目中,要么跨实例复制它。