如果我是小型服务提供商应用程序,是否需要用于 SSO 的联合身份服务器?

Do I need a federated Identity Server for SSO if I'm a small service provider application?

假设我是一个小型应用程序 (www.example.com),我正在与一个更大的企业 (www.acme.com) 集成。

在这种情况下,我是服务提供商,他们是身份 provider.Their 请求是我使用 SSO(特别是 SAML 2.0)集成到他们的身份验证生态系统中。

对于标准的 IdP 发起的流程,用户将在他们的一端登录,然后他们将 POST 向我的应用程序发出 XML 断言,然后我的应用程序将验证用户并让他们登录我的应用程序(即设置浏览器会话)。

企业使用 PingFederate 作为他们的身份服务器,他们很好奇我的应用程序使用什么实现。此时我有none。

  1. 如果我的应用程序是一个单体应用程序(例如 Rails 应用程序上的一个小型 Ruby),我什至需要联合服务器吗?最终他们只是在寻找 POST SAML 数据的位置,这样我就可以设置一个端点并从那里开始,对吧?

  2. 联合服务器有哪些一般优势?为什么不是每个服务提供商应用程序(无论大小)都设置一个端点来摄取 SAML 数据并收工?

谢谢!

  1. 我认为我们应该将其移至 software engineering

  2. 用户如何使用您的服务进行身份验证?拥有联合身份可以保证整个用户管理过程都是别人的问题。他们正在寻找一种方法将您的服务集成到他们的身份验证系统中,因此您需要设置一个端点,不仅可以使用而且还能够将 SAML 请求发送到他们的身份服务器。

  3. 我使用我的 Google 帐户凭据访问我几乎所有的社交网站(包括 Stack Exchange),这意味着除其他事项外,所有网站都将我视为同一实体加上我只需要记住一个密码即可。

  4. 不知道 SAML,但几乎每个人都在使用 OpenId 或 OAuth。

您不一定需要联合服务器。但是,如果您将来决定 divide/expand 您的应用程序到微服务中或将 您的 服务与其他第 3 方集成,服务器将允许您在不中断当前的情况下进行扩展客户(出色的 CX),而不必管理单独的安全端点。