使用SAML和身份提供商进行微服务身份验证

时间:2016-06-22 11:21:46

标签: single-sign-on saml spring-saml siteminder

我们正致力于为我们的领域开发微服务。

我们需要使用SAML保护微服务。

我通读了SAML文档,看到我们已经注册了我们的应用程序(SP)的身份提供者,我们也应该连接到IdP进行身份验证。我知道我们需要在它们之间建立一个信任或联盟的圈子。

我尝试使用Spring Security SAML扩展和SSOCircle.com作为IdP,使用提供的示例应用程序进行身份验证。我能够相应地成功进行身份验证。

我的问题是,在微服务架构中,我们有多种服务。由于它不是单片,我们不能只将一个服务作为SP添加到IdP。

这意味着我所说的每个微服务,员工,部门,销售等也应该作为单独的SP应用程序添加到IdP中。

我不确定这是否有意义或实际可行。

如果有人从事类似的架构/开发工作,请您从身份验证的角度提供有关处理微服务安全性的最佳方法的想法。

谢谢, bstechie

1 个答案:

答案 0 :(得分:2)

两种方法:

  1. 正如您所说,将每个微服务配置为SP,并将每个SP与IdP进行通信以进行SAML身份验证。
    • 如果每个微服务具有不同的用户,组和角色,则这是合适的。
    • 可能有多个SP,管理员需要维护。
  2. 将所有微服务整合并配置到您域中的单个SP(可能使用反向代理Web服务器或Access Manager),并将该单个SP与IdP进行通信以进行SAML身份验证。
    • 如果所有微服务都具有相同的用户,组和角色,这是合适的。
    • 管理员可能只需要维护一个SP。