首页 > 解决方案 > 如何将我网站的身份验证转换为 SAML 身份验证提供程序?

问题描述

我正在使用现有的遗留 php 身份验证解决方案,其工作方式如下:

  1. 用户输入他们的凭据
  2. 代码检查 LDAP 进行身份验证
  3. 如果 LDAP 身份验证成功,则将用户名传递给数据库查询以检索权限
  4. 如果 LDAP 身份验证不成功,则会检查 SQL DB 是否使用相同的凭据进行身份验证
  5. 如果 SQL 身份验证成功,则检索权限
  6. 如果 SQL 身份验证不成功,请通知用户。

这是因为我们的许多用户是员工,而且许多是客户。

我们现在有一个二级 Web 提供商要求通过 SAML 提供身份验证。该请求是将我们现有的身份验证方法转换为 SAML 身份验证源。我一直在尝试在 SimpleSAMLPhp 中制作自定义模块,但我没有任何运气。缺少用于配置像这样的外部身份验证源的文档,并且我现有的代码基本上将 POST 变量作为参数输入,而我无法将它们硬塞在一起。如果我真的让它工作,我很难让它工作,这让我对系统的整体安全性感到紧张。

这个问题有什么更好的解决方案?

标签: phpauthenticationsaml

解决方案


根据您的问题,我的印象是您对 SAML 协议不是很熟悉。

我现在所能做的就是给你一些开始的建议。

第一:了解协议。尝试了解 SSO 流程并区分贵公司中哪些组件充当“服务提供者”和“身份提供者”

第二:了解集成的范围。尝试回答以下问题: - 应用程序是在内部网络还是外部网络中工作?- 谁有访问权限?- 贵公司的其他应用程序是否已经完成了 SAML 身份验证?- LDAP 服务器是否已经由身份提供者控制,或者您必须实施新的?

一旦你熟悉了,你就可以开始考虑开发了。有许多现有的解决方案和库可用,因此一旦您了解协议如何工作的概念,继续下去就会容易得多。

我很乐意在您的旅途中为您提供帮助。这项任务将花费您很多精力,因此请做好准备。


推荐阅读