Orchardcms 在Orchard中分离站点用户和管理员用户的存储

Orchardcms 在Orchard中分离站点用户和管理员用户的存储,orchardcms,Orchardcms,我刚刚开始一个基于Orchard的网站,我有一个关于用户帐户和身份验证的问题 将有各种类型的网站管理员/编辑负责更新网站内容。对于这些类型的用户,Orchard中的内置角色和用户管理非常适合。但是,常规站点用户必须存储在外部旧式系统中,不得访问站点仪表板,并且即使管理员也不能在仪表板的“用户”选项卡下看到(他们完全由外部系统管理) 在Orchard中实现此功能的正确方法是什么?实现您自己的会员资格提供商。您可以从图库中选取正在进行身份验证的示例,例如oAuth或AD模块。实现您自己的成员资格提供

我刚刚开始一个基于Orchard的网站,我有一个关于用户帐户和身份验证的问题

将有各种类型的网站管理员/编辑负责更新网站内容。对于这些类型的用户,Orchard中的内置角色和用户管理非常适合。但是,常规站点用户必须存储在外部旧式系统中,不得访问站点仪表板,并且即使管理员也不能在仪表板的“用户”选项卡下看到(他们完全由外部系统管理)


在Orchard中实现此功能的正确方法是什么?

实现您自己的会员资格提供商。您可以从图库中选取正在进行身份验证的示例,例如oAuth或AD模块。

实现您自己的成员资格提供程序。您可以从库中选取进行身份验证的示例,例如oAuth或AD模块。

然后在提供程序中进行某种切换,根据角色将帐户处理路由到不同的商店,您的意思是,如果我实现了一个IMembershipService,它返回的IUser与Orchard(由外部系统拥有)中的内容项不对应,那么我应该将IUser.ContentItem设置为什么?它不能为null或只是一个伪(new:ed)ContentItem实例,因为主题使用的各种扩展方法似乎都依赖于是否能够使用它。对此有什么建议吗?我发现这个讨论与外部化用户存储有关:-开发者“pszmyd”的一般建议似乎归结为要么在Orchard数据库中保留外部用户的副本,要么完全替换Orchard.users模块。真的是这样吗?在这种情况下,它比我第一次看到IMembershipService接口时想象的要复杂得多。它可能是复杂的,这取决于您的需求需要达到的深度。但是可以动态创建内容项。将其标记为已接受;不过,对当前版本的Orchard中成员身份和用户概念的抽象有点失望——如果能够在不需要保留“卷影副本”的情况下交换默认实现,那就太好了Orchard数据库中的外部用户。然后在提供程序中进行某种切换,根据角色将帐户处理路由到不同的商店,你的意思是?另外,如果我实现了IMembershipService,该服务返回与Orchard中的内容项不对应的IUSER(由外部系统拥有),我应该将IUser.ContentItem设置为什么?它不能为null或只是一个伪(new:ed)ContentItem实例,因为主题使用的各种扩展方法似乎都依赖于是否能够使用它。对此有什么建议吗?我发现这个讨论与外部化用户存储有关:-开发者“pszmyd”的一般建议似乎归结为要么在Orchard数据库中保留外部用户的副本,要么完全替换Orchard.users模块。真的是这样吗?在这种情况下,它比我第一次看到IMembershipService接口时想象的要复杂得多。它可能是复杂的,这取决于您的需求需要达到的深度。但是可以动态创建内容项。将其标记为已接受;不过,对当前版本的Orchard中成员身份和用户概念的抽象有点失望——如果能够在不需要在Orchard数据库中保留外部用户的“影子副本”的情况下交换默认实现,那就太好了。