gpt4 book ai didi

azure - ACS token 请求明文与签名

转载 作者:行者123 更新时间:2023-12-02 06:51:52 27 4
gpt4 key购买 nike

我正在尝试在 ACS ( http://msdn.microsoft.com/en-us/library/ee706734.aspx ) 的明文请求方法和签名 token 请求方法之间进行选择。

我想出的唯一区分这两种方法的方法是,当有人试图解密 HTTPS 流量以获取我的密码时,签名方法可以针对窃听者提供额外的缓解措施。在签名的情况下,这会更困难,因为除了解密 HTTPS 之外,它还需要破解签名(以便学习签名 key )。

HTTPS 被认为足够强大,不需要任何额外的东西来确保没有人可以阅读我的消息,我对吗?

在纯文本和签名之间选择 ACS token 请求方法时,我的论据可能是什么?

最佳答案

纯文本和签名请求均受 HTTPS 传输保护。 ACS 颁发的 token 将符合为依赖方(范围)配置的 Web token 格式,并且颁发的 ACS token 中的声明将包含转换规则引擎生成的声明结果。

明文请求涉及将服务身份的用户名和密码发送到 ACS,其范围指示您希望接收其访问 token 的依赖方。在这种情况下,调用者只需要知道服务身份凭证即可接收 token 。在明文请求中,声明转换引擎可用的唯一声明是名称标识符声明。

另一方面,签名请求是指服务使用者希望向声明转换引擎提供更丰富的声明集。服务使用者通过创建使用指定断言格式(通常为 SWT 或 JWT)编码的断言来断言一组声明,并使用对称或非对称签名 key 对断言进行数字签名。

SWT 仅支持使用 HMAC SHA-256 算法的对称签名,而 JWT 支持对称和非对称签名算法。在这种情况下,服务使用者需要拥有用于对断言进行数字签名的签名 key 。 ACS 将验证断言的数字签名,以确保调用者是可信的(他们拥有签名 key )并且断言未被篡改。然后,声明转换引擎将应用依赖方规则来生成访问 token 。

当您不需要向声明转换引擎提供一组丰富的声明(名称标识符就足够了)或者当服务使用者不支持断言的加密签名时,请使用纯文本请求。

当您的声明转换规则需要多个声明才能执行输出声明计算时,或者当您的服务使用者已经具有希望使用的 SAML 断言时,请使用签名请求。

参见OAuth WRAP如果您想要 OAUTH WRAP 协议(protocol)的更完整描述。

关于azure - ACS token 请求明文与签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15037143/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com