面试题答案
一键面试1. 基于证书的信任模型
- 工作原理:在这种模型中,各个授权服务器使用数字证书来证明自身身份。每个服务器拥有自己的公私钥对,并由可信任的证书颁发机构(CA)颁发证书。当一个授权服务器需要与另一个服务器交互时,它会验证对方的证书。验证过程包括检查证书的签名是否有效(通过CA的公钥验证),证书是否在有效期内,以及证书的主体是否与预期的服务器一致。例如,当客户端向授权服务器A请求授权,而授权服务器A需要与授权服务器B进行交互以确认某些信息时,授权服务器B会向A出示其数字证书,A通过CA的公钥验证该证书,确认B的身份可信后,才继续进行后续的认证和授权流程。
2. 基于共享密钥的信任模型
- 工作原理:参与联邦的授权服务器之间共享一个或多个密钥。当服务器之间进行通信时,会使用这些共享密钥对消息进行加密或生成消息认证码(MAC)。例如,授权服务器A向授权服务器B发送请求时,会使用共享密钥对请求消息进行加密或计算MAC。授权服务器B接收到消息后,使用相同的共享密钥进行解密或验证MAC。如果解密成功或MAC验证通过,B就可以确认消息来自可信的A,并且消息在传输过程中没有被篡改。这种方式依赖于共享密钥的保密性,所有参与的服务器必须妥善保管共享密钥,防止泄露。
3. 基于属性的信任模型
- 工作原理:每个授权服务器为自身及所服务的用户或资源定义一系列属性。这些属性可以包括服务器的安全等级、用户的权限范围等。当进行交互时,服务器会交换和验证这些属性。例如,授权服务器A向授权服务器B请求对某个用户的授权,A会提供该用户的相关属性以及自身的一些属性信息。B会根据预先设定的策略,验证这些属性是否符合要求。如果A的安全等级属性达到B的要求,且用户的属性表明其具有相应的权限,B就会信任A的请求并进行授权相关操作。