向外部客户提供单点登录的选项有哪些?

What are options for offering Single Sign On to external customers?

我有一些外部客户拥有他们自己的内部网站,这些网站链接到我们的 Web 应用程序。一旦他们的员工登录到他们的内部网,他们不希望他们在访问我们的链接时必须输入单独的凭据。

有哪些选项可以为他们提供单点登录,以便我们承担设置的大部分技术成本,并且我们可以与任意数量的客户一起使用。看起来这应该是一个已解决的问题,但我一直无法找到合适的解决方案(除了想出完全定制的东西)。

需要说明的是,员工已经在我们的申请中拥有了帐户。

经过进一步调查,我终于找到了执行此操作的一些标准协议:

JWT - http://www.intridea.com/blog/2013/11/7/json-web-token-the-useful-little-standard-you-haven-t-heard-about

SAML - http://wso2.com/library/articles/2014/02/introduction-to-security-assertion-markup-language-2.0/

就我的目的而言,我认为 JWT 是最好的,因为它需要最少的集成工作量。

您没有指定您在哪个平台上,但您应该查看身份验证联合。这个想法是他们的内部网站生成一个您信任的安全令牌,以在您的网站上验证他们的用户。

在Windows平台上,WS-Federation is typically used. On non-Windows platforms, the SAML protocol is more popular. Security protocol can use different token formats like SAML or JWT