2013-02-23 109 views
2

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

我想出了区分这两种方法的唯一的事情就是签名的方法,当有人试图解密,以获得我的密码HTTPS流量提供了一个额外的缓解对窃听者。在签名的情况下会更加困难,因为除了解密HTTPS之外,它还需要中断签名(以便学习签名密钥)。

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

对于纯文本和签名之间的ACS选择令牌请求方法,我的参数可能是什么?

+0

您正在查看不再支持的ACS 1.0文档。请注意顶部的免责声明:“此内容已过时。有关Windows Azure访问控制服务(ACS)的信息,请参阅访问控制服务2.0。” – 2013-02-26 00:06:02

回答

2

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

明文请求涉及发送服务标识的用户名和密码,ACS,以表明您希望收到一个访问令牌的依赖方的范围。在这种情况下,调用者只需要知道服务标识凭证就可以接收令牌。在明文请求中,唯一可用于索赔转换引擎的索赔是名称标识符索赔。

一个在另一方面签名的请求是当服务消费者希望提供一套更丰富的索赔权利要求改造的探讨引擎。服务使用者通过创建使用指定的断言格式(通常是SWT或JWT)进行编码的断言并使用对称或非对称签名密钥对断言进行数字签名来断言一组索赔。

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

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

当你的声明转换规则要求多个声明,以便进行输出要求计算,或者当你的服务消费者已经有一个SAML断言,它希望使用使用签名的请求。

OAuth WRAP如果你想OAUTH WRAP协议的更完整的描述。