我遇到过几个sitecore实现,其中虚拟用户已经在CD(内容交付)上使用,其中网站具有成员资格(登录状态)。
我们正在将站点从java CMS迁移到sitecore,并使用azure ADB2C和社交登录提供程序进行登录状态。登录后,用户将被重定向到带有令牌的Sitecore CD。 根据用户会员类型,我们需要在整个网站上显示隐藏菜单项和小部件。
我知道使用虚拟用户的一个好处是没有使用sitecore用户的许可证费用。
感谢有人可以帮助我理解下面的内容:
感谢。
答案 0 :(得分:1)
虚拟用户的概念可能与您的理解略有不同。将它们视为用户的临时表示,可以从任何地方获取数据,例如你的天蓝色供应商。
没有虚拟用户,默认情况下所有用户详细信息都存储在核心aspnet成员资格表中。虚拟用户允许人们“登录”,但不会创建关联的数据库记录。
一个常见的情况,听起来就是你正在使用的,是用户和角色数据保存在别处(azure / ad)。在查询此数据时,将使用关联的角色/配置文件等创建虚拟用户。然后,sitecore会评估此虚拟用户数据的安全性。
将它们用于会话之类的优点是所有sitecore安全层都将尊重其中保存的数据。如果你做了一些需要大量开发工作的自定义。
虚拟用户和基于许可证的用户之间没有链接 - 许可证通常允许并发编辑者访问cms,这与“用户”的概念不同。
答案 1 :(得分:1)
我们还有哪些其他方案可以在CD中使用虚拟用户?
使用虚拟用户有什么好处,因为我们可以在会话中管理用户详细信息?
在CD中使用虚拟用户有哪些缺点?
使用虚拟用户和sitecore角色来保护菜单项和页面是否是最佳选择?或者从asp.net linq查询等应用安全性?
有关详细信息,请参阅:https://pratiksatikunvar.wordpress.com/2015/06/24/sitecore-security-module-in-production-site/