代码之家  ›  专栏  ›  技术社区  ›  dso

SSL安全SaaS应用程序的URL设计

  •  5
  • dso  · 技术社区  · 16 年前

    我正在使用ASP.NET MVC平台开发一个应用程序,该平台将作为web服务公开( SaaS 模型)。我试图确定为每个用户帐户划分URL命名空间的最佳方法。应用程序需要通过SSL进行安全访问,因此我主要关心的是如何设计一个与SSL证书配合良好的URL。以下是我提出的选择。在每个例子中 上下快速移动 以下是两个示例用户帐户:

    选项A:每个帐户在公共域名下都有唯一的子域

    例如

    https://bob.example.com
    https://jane.example.com
    
    • 这将需要一个通配符SSL 证书(例如映射到 *.example.com),这样每个用户都可以通过 SSL证书问题。唯一的 我能想到的缺点是 远比 差别肯定会很大 可忽略不计 事情,但我就是这样 记住,如果其他一切证明 平等。

    选项B:每个帐户都有唯一的域名

    例如

    https://bobs-domain.com
    https://domain-of-jane.com
    
    • 在这种情况下,每个用户都会绑定一个SSL证书 我能想到的缺点是我们的 所有用户的私钥 证书,我们必须设计一个 安全地传输他们的私钥 到我们的服务器。即使我们有这样的 一个系统,我觉得太简单了 用户不得不承担很大的负担 获取证书,然后提交 我们的私钥。

    • 或者,我们可以 自动发布和提供 在以下情况下为每个用户提供SSL证书: 其他步骤。这会 要求我们成为 SSL证书,我还没有 还没有调查。。。我们可能会 像Verisign这样的公司是谁

    • 尽管这显然很痛苦 方法,此选项不启用 我们可能需要的一些功能 将来提供,即允许 通过访问应用程序的版本 他们自己的公司域名。

    例如

    https://example.com/bob
    https://example.com/jane
    
    • 从SSL的角度 证书维护,这是 也许是最好的选择。我们会 只需要一个固定域SSL证书 (例如example.com)哪一个是 供所有用户使用。

    • 与我们当前业务的其他方面 围绕负载平衡。

    需要反馈

    5 回复  |  直到 13 年前
        1
  •  2
  •   Troels Thomsen    16 年前

    我会选择A。这个解决方案不是非常昂贵,它可以很好地扩展,并且如果您稍后决定的话,它不会限制您使用自定义域。

    通配符证书过去非常昂贵,但今天,您可以以每年200美元左右的价格获得它们 GoDaddy RapidSSL ,我觉得很便宜。VeriSign提供,这些证书在(几乎)任何浏览器中都可以使用,但它们不附带验证。我不知道你是否需要这个。

    如果使用选项B,您必须为每个用户购买一个证书,但是使用通配符证书,证书将在几次注册后支付,其余将是纯收入。

    除此之外,解决方案的实现非常简单,这也是一个优势。

        2
  •  1
  •   Will Hartung    16 年前

    我看不出a和B之间有什么真正的区别,它们实际上是完全相同的,只是你可以使用通配符证书来认证a,你不必这么做。没有通配符方面,A==B,它们都是example.com的子域这一事实是巧合。

        3
  •  1
  •   Shad    14 年前

    选项B对用户有很大的价值,如果我有选择的话,我会走这条路。请记住,您可以购买多域ssl证书/UCC,并且可以在一个证书下获得多达100个域。如果有其他证书允许超过100个,请告诉我,因为我们正在构建一个SAAS模型,并且有类似的问题。

        4
  •  0
  •   dso    16 年前

    你说得对,威尔,A和B是一样的。然而,我认为这主要是从编码的角度来看的。无论使用哪种选项,web服务器都将根据HTTP头中的主机名确定帐户。C与编码的角度略有不同,因为它将根据域名下的路径匹配帐户,并且ASP.NET MVC框架的URL路由功能在这里会派上用场。

    从管理的角度来看,每个选项都有很大的不同。使用选项A,我们必须管理子域。。。我们可以这样做,因为我们的DNS提供商有一个API来管理主机记录。使用选项B,我们必须管理所有不同域名的私钥,正如我提到的。

    谢谢

        5
  •  0
  •   Svetoslav Marinov    16 年前

    我会使用secure.domain.com而不是www.domain或domain.com的证书 我见过许多网站在其中一个选项上使用证书(有或没有www前缀),当用户使用其他选项时,会提示用户接受证书。

    那只是个想法。

    斯拉夫人