0

假设我有 2 个服务器(服务器和身份验证器),并且我有一个客户端。我的最终目标是能够识别服务器上的客户端。我的解决方案是想出一个像 OAuth 这样的令牌/秘密系统:客户端有一个令牌和秘密。它将它传递给服务器。服务器将其传递给身份验证器。如果有效,则服务器允许该请求。

显然,仅对于发出的请求数量而言,这并不是最优的。身份验证器和服务器分开的原因是因为这是为了分散服务 - 可以使用任意数量的服务器,并且要求客户端库在每个服务器上注册是不切实际的。

所以,问题仍然存在,最好/正确的方法是什么?目标是创建一个去中心化的系统,但仍然可以让客户端以相对安全的方式向服务器表明自己的身份。

4

2 回答 2

1

免责声明:我不是安全专家,所以我可能会在这里偏离基础,在实际实施中似乎存在许多需要解决的安全问题。

在最广泛的意义上,您是否可以让客户端向身份验证器提供凭据,然后在验证后身份验证器向客户端和服务器提供匹配的安全令牌,然后客户端和服务器可以直接通信?

只是对您不想实现 OAuth 并运行自己的 OAuth 服务器的原因感到好奇。

附加参考:http ://groups.google.com/group/37signals-api/msg/aeb0c8bf67a224cc

于 2011-03-15T05:25:45.400 回答
0

原来解决方案是更好地定义我的问题。由于我只是想创建一种阻止应用程序的方法,因此我只需要在它们请求服务器时存储它们的名称和密钥。然后,只要它们没有被阻止并且密钥与数据存储中的密钥匹配,它们就会被识别出来。因此,我并不想进行身份验证,而是进行身份验证。感谢您的输入!

于 2011-03-18T22:16:19.693 回答