2014-06-05 114 views
0

我开始使用Orchard的多租户选项来启用单个代码库来托管几十个网站(未来可能会有超过一百个)。我不清楚这件事是:果园多租户设置/配置

  1. 是否有可能调用一个或多个API端点来动态创建这些网站的代码在我的最后?这意味着,我们在.Net中有一个现有的代码库(非Orchard),因此我将调用哪些API来即时创建这些网站,而无需手动登录并执行操作?
  2. 结合#1,我们有没有API可以为新创建的网站创建个人用户,这些用户具有预配置的最小权限(创建内容,处理媒体,导航)并阻止其他人(设置,用户管理等)?我们在这个过程中的客户群并不是特别精通计算机,所以限制他们可以突破的东西将大大节省我们的支持人员必须修复他们不应该访问的东西。
  3. 有没有办法在这些多租户网站中处理SSO?这里困难的部分是我们的网站依靠会话变量进行访问(这是传统ASP和.Net的混合体,我试图进行现代化改造,但必须让Session像所有旧的东西一样工作)?我猜想这会构建一个模块,但知道这是一个相当先进的过程,所以我尽量避免它。

在此先感谢!

回答

2
  1. 是的,但Orchard不容易集成到现有的应用程序。 dotNest是动态创建的果园网站示例:http://dotnest.com/knowledge-base/topics/lombiq-hosting-suite
  2. 是的。用户可以通过代码创建,并且可以为其分配受限权限,最简单的方法是创建具有该权限集的组,并将这些用户放入该组。所有这些都可以通过代码完成。
  3. 只要使用oAuth就像世界其他地方一样。
  4. 忘记将Orchard整合到现有的应用程序中。特别是经典的ASP;)时间继续前进。
+0

完美,谢谢。对于#3,这是计划新的属性,但我们距支持该过程还有很长一段距离。在成千上万的文件夹中有超过4,000个物理页面,其中一些正在使用,一些不是,一些是“新”的(即aspx和asp)重定向到asp文件夹等。这是一场噩梦。我绝对想要将这个现代化,但这是一个巨大的项目。最后一个问题 - 如果我在主要安装中创建新的内容定义,那么这些内容如何传播给各个租户?鉴于我们现在有多少人,手动对于新功能来说是一项艰巨的任务。 – RubyHaus

+0

您必须导出配方(使用从导入/导出导出的元数据),然后将其用作创建新网站的配方的一部分。如果您需要在创建站点后进行传播,还可以从命令行运行配方。 –

+0

好的,谢谢。我将首先深入研究模块创建,因为我找到了一个昨晚深夜创建内容类型的示例。因为我现在必须为一件事建立一个模块,所以我只是把它全部包括在内。再次感谢所有的帮助! – RubyHaus