在站点之间传递凭据

2024-02-21

我在具有两个不同域的两台不同服务器上运行两个不同的站点。一个站点运行 Joomla,另一个站点运行 Moodle。我已将 Moodle 服务器配置为基于 Joomla 站点上的用户表进行身份验证,因此我们拥有权威的用户信息来源。

我想做的是:在有人登录 Joomla 站点后,提供一个指向 Moodle 站点的链接,该链接将默默地让他们登录,有点伪造单点登录解决方案。 Joomla 中的密码经过 MD5 处理,并且每个密码都有自己的秘密盐。

如何解决这个问题的第一个想法是告诉 Moodle 密码以纯文本形式存储,然后通过隐藏的表单输入,在单击链接时发送加密的密码。除了明显的安全问题之外,这还意味着如果他们尝试通过 Moodle 界面登录,他们需要输入一个巨大的 MD5 字符串,因为这就是 Moodle 认为他们的密码。

我一直在考虑更改 Moodle 中的身份验证模块,以便如果提交的密码符合某些条件(例如:它是 32 个十六进制字符),那么在与 Joomla 版本进行比较之前不要对其进行 MD5 - 问题是任何人都可以(发现加密密码后)然后使用它来登录。我需要的是某种特殊的方式将加密密码从 Joomla 发送到 Moodle 并向 Moodle 发出信号以不同方式处理该登录请求。

有什么想法吗?


您可以对安全单点登录解决方案执行以下操作:

  • 为 Joomla 用户生成随机(使用 PRNG)令牌(存储此)
  • 将此令牌内部发送(通过 Web 服务等,通过 HTTPS 或本地数据源保存)到 Moodle
  • 在发送此令牌时,您还应该告知 Moodle 令牌所属的用户 ID(因此发送令牌 + 用户 ID)
  • 将此令牌 + 用户 ID 存储在 Moodle 中
  • 使用此令牌在 Joomla 中创建带有此令牌的链接(首次使用后令牌过期后,您可以使用查询字符串,但 POST 是更好的主意)
  • 当您在 Moodle 中看到此令牌时,请登录关联的用户并使令牌过期(这样就可以安全地抵御回复攻击等)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在站点之间传递凭据 的相关文章

  • 上传文件最安全的方法是什么?

    我工作的公司最近在我们托管的网站上遭受了许多标头注入和文件上传漏洞攻击 虽然我们已经解决了标头注入攻击的问题 但我们尚未控制上传漏洞 我正在尝试设置一系列即插即用类型的上传脚本以供内部使用 设计人员可以将其复制到其网站的结构中 修改一些变量
  • 企业 iPhone 应用程序无线分发的安全性 - OTA iOS

    在企业 iPhone 应用程序的无线分发中 iPhone 安全地下载 XML 清单文件 其中包含指向 ipa 文件 应用程序本身 的完全限定 URL 然后从那里下载应用程序并安装它 我想知道这里是否存在安全漏洞 假设 iPhone 位于公共
  • 密码恢复:如何解密 md5 加密的密码? [复制]

    这个问题在这里已经有答案了 可能的重复 是否可以解密 md5 哈希值 https stackoverflow com questions 1240852 is it possible to decrypt md5 hashes 在我的网站中
  • 是否可以将密码以纯文本形式存储在 php 变量或 php 常量中?

    根据问题 在 php 页面上存储密码是否安全 例如 password pa w0rd 如果用户看不到它 那就安全了 对吗 编辑 确实有人建议使用hash 但是数据库服务器连接密码会有问题不是吗 简短的回答是否定的 而且要看情况 以纯文本形式
  • CodeIgniter - 为什么使用 xss_clean

    如果我正在清理我的数据库插入 并且还转义我编写的 HTMLhtmlentities text ENT COMPAT UTF 8 是否还需要使用 xss clean 过滤输入 它还有什么其他好处 xss clean http docs gip
  • “设备重置为出厂设置”是否会使数据无法恢复? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 关于德克萨斯大学的结论 信息安全报告 https wikis utexas edu display ISO Google Android Harden
  • 使用 global-method-security,访问被拒绝错误将作为 HTTP 500 错误返回

    我尝试使用 Spring Security Annotations 来确保安全 而不是在 XML 中定义规则 它似乎有效 但是当我遇到访问被拒绝错误时 我收到返回的 HTTP 状态代码 500 我在 tomcat 日志文件中没有看到任何异常
  • Java Keystore 是否存在性能问题? [复制]

    这个问题在这里已经有答案了 我们开发了一个应用程序来加密 解密来自服务器的请求 响应 我们正在做性能测试 加密 解密应用程序 我们观察到加密 解密过程需要时间 而许多线程 正在同时做 为了识别问题 我们记录了加密 解密过程中的所有方法 从记
  • 用于存储应用程序用户机密的 Azure Key Vault 机密

    在我的应用程序中 我必须存储用户的非常敏感的数据 例如其他第三部分服务的各种密码 用户填写一个表格 向我们提供第三部分服务的登录名和密码 该应用程序的目标是使用从 100 多个输入生成的 powershell 脚本来设置其他复杂系统 需要将
  • 不需要 UserProvider 的自定义身份验证

    我在网上寻找适合我的配置的解决方案 但找不到满足我需求的东西 到目前为止 我已经为此工作了整整三天 但我无法使其正常工作 我确信有几件事我不明白 我正在分支 2 1 上开发我的 symfony 应用程序 为了让这个简短 我有一个网络服务 我
  • 如何加密然后解密数据库类文件中使用的用户名和密码文本

    我创建了一个类文件database php 它处理所有sql 查询并连接到数据库 我将数据库的用户名和密码存储在一个变量中 如果可以访问 php 文件 很容易看到 我想加密该用户名和密码 这样即使在拥有该 php 文件之后 人们也无法知道原
  • 良好的安全实践和自动身份范围管理是否相互排斥?

    我正在尝试使用自动身份范围管理 http msdn microsoft com en us library ms152543 aspx sectionToggle1 但是 确保我的用户可以在具有标识列的表中插入记录的唯一方法是使它们db o
  • PHP cookie 和会员安全

    我创建了一个论坛 该论坛在登录时使用 PHP 会话来确定用户 ID 并使用 cookie 来进行日志登录 我想我有两个问题 这是最好 最安全的方法吗 可以使用javascript通过地址栏手动添加cookie 这是一个巨大的安全风险 有没有
  • 通过访问硬盘序列号来保护软件[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想获得VB NET或VB代码来在启
  • 将密码存储到sql中的最佳方法

    在我当前的 C Windows 应用程序中 密码已以纯文本形式存储 这显然不好 所以我只想知道加密密码并存储到 SQL Server 中的最佳方法是什么 我读到使用哈希 盐更好 但我觉得sql 2005中的 EncryptByPassPhr
  • Bash 中的 Shellshock 漏洞背后的行为是有记录的还是有意为之?

    最近的一个漏洞 CVE 2014 6271 http web nvd nist gov view vuln detail vulnId CVE 2014 6271 如何Bash http en wikipedia org wiki Bash
  • 加密成本高,解密成本低

    我希望该用户 攻击者加密数据并发送给服务器 现在我想要一种与标准算法完全相反的算法 使用快 难以解密 即很难使用服务器发送的密钥来加密密码等数据 以防止随机攻击 但很容易解密这样服务器在验证用户时消耗的时间非常少 但是对于攻击者来说 每次使
  • 小程序打印;小程序放弃安全权限; Windows 7 和 Java 7

    使用 Java Liveconnect 能够通过浏览器中的小程序访问打印机 对于我添加的访问权限permission java lang RuntimePermission queuePrintJob in C Program Files
  • 如何删除垂直滚动条 SyntaxHighlighter 块?

    我是网络开发的新手 可能有一个主要问题 我已经在我的网站上安装了 Joomla 2 5 CMS 下载 安装并打开语法荧光笔 http alexgorbatchev com SyntaxHighlighter 插入 然后启用bash语法并在我
  • 如何在 C# 中创建 PKCS12 .p12 文件?

    这可能是一个n00b问题 但我在这方面确实没有任何经验 我需要创建一个包含 X509 证书和私钥的 p12 捆绑包 我当前有两个对象 X509Certificate2 和包含关键信息的 RSAParameters 对象 如何将它们合并到 p

随机推荐