是否可以在传输过程中修改 SAML 断言



有什么可以阻止用户修改SAML断言发送给服务提供商吗?

例如,如果 SAML 响应通过电子邮件地址向服务提供商标识用户,则断言中是否有任何措施可以阻止某人使用 Fiddler 之类的内容修改它,并将其电子邮件地址替换为同一公司中在他们尝试访问的服务中具有更高访问权限级别的某人?

SAML 响应中的断言应使用私钥/公钥对和 xmldsig 进行签名。如果它们已正确签名,则更改断言的内容将使签名无效,从而使断言本身无效。

现在,如果

  • 服务提供商不需要签名,
  • 或者懒得检查签名的有效性,
  • 或私钥已泄露

那么几乎一切皆有可能。

是的,它可以修改,但即使响应中的微小更改(例如添加空格)也会使服务提供商端的签名验证过程失败(前提是 SP 正在按应有的方式对其进行验证)

最新更新