正如文档所述,项目的安全设置保留为每个项目的文本定义。
我们有一个巨大的树,里面有很多元素,另外还有 30 多个角色。我们面临的挑战是如何管理所有项目的安全设置并在环境(开发、测试、UAT、生产)之间推广它们。我们正在使用 TFS 和 TDS(Sitecore 的团队开发),但作为开箱即用的系统,所有安全配置都是项目的一部分。
假设我们想要更改所选项目上特定角色的安全访问权限。这意味着我们必须对 TDS 项目进行更改并将这些项目重新部署到所有环境。这是正确/推荐的方法吗? 还有其他办法吗?
更新:
特殊情况。我们有生产中的操作站点,管理员已更改项目 A 上初始定义的安全配置(引入新的或更改现有的)。其他一些字段也可以更改。 我们已准备好在生产中部署新开发的功能。新的更改之一是项目 A - 为某些新角色 N1 引入了新的访问权限。我们想要的结果是保留项目 A 的所有配置不用于生产,并另外添加角色 N1 的新安全访问权限。如何才能实现这一目标? 重新部署整个项目 A 意味着丢失生产中的配置。
谢谢。
最佳答案
无论您是否使用TDS,您都必须重新部署这些项目。项目的安全设置在架构上与 Sitecore 中的项目一起存储,这就是为什么如果项目的安全设置发生更改,这实际上意味着该项目已更改并应重新部署。
为了最大限度地减少每次必须部署的项目数量:
- 尽可能利用“继承”选项 - 因此,只有具有明确“允许”或“拒绝”权限的项目才会受到影响
- 为角色分配安全性,而不是为用户分配安全性 - 因此,为了向新用户应用权限,您只需将其包含到适当的角色中
关于security - 如何管理项目的 Sitecore 安全访问权限设置(配置)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14236352/