Security SAML断言可以在传输过程中修改吗?

Security SAML断言可以在传输过程中修改吗?,security,single-sign-on,saml,saml-2.0,Security,Single Sign On,Saml,Saml 2.0,是否有任何方法可以阻止用户修改发送给服务提供商的SAML断言 例如,如果SAML响应通过电子邮件地址向服务提供商标识了一个用户,那么断言中是否存在阻止某人使用Fiddler之类的东西修改它的内容,并将他们的电子邮件地址替换为同一公司中在他们试图访问的服务中具有更高访问级别的人?SAML响应中的断言应使用私钥/公钥对和进行签名。如果签名正确,更改断言的内容将使签名无效,从而使断言本身无效 现在,如果 服务提供商不需要签名 或者不用检查签名的有效性 或者私钥被泄露了 然后,几乎任何事情都是可能的

是否有任何方法可以阻止用户修改发送给服务提供商的SAML断言


例如,如果SAML响应通过电子邮件地址向服务提供商标识了一个用户,那么断言中是否存在阻止某人使用Fiddler之类的东西修改它的内容,并将他们的电子邮件地址替换为同一公司中在他们试图访问的服务中具有更高访问级别的人?

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

现在,如果

  • 服务提供商不需要签名
  • 或者不用检查签名的有效性
  • 或者私钥被泄露了

然后,几乎任何事情都是可能的。

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

现在,如果

  • 服务提供商不需要签名
  • 或者不用检查签名的有效性
  • 或者私钥被泄露了

然后,几乎任何事情都是可能的。

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

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