2010-05-25 56 views
0

我提供了一个RESTful API。此API由第三方桌面应用程序使用。该API目前使用基本身份验证进行保护。这不是非常安全,因为证书必须存储在客户端应用程序中。桌面应用程序和API之间的通信也很容易被拦截。桌面应用使用的RESTful API的身份验证服务

桌面应用程序也与第三方服务器(通过桌面应用程序的发布服务器上运行)

通信,我无法弄清楚如何的好方法安全的API。想法?

回答

1

您似乎在这里有两个单独的问题:(1)客户端上的凭证存储,以及(2)与服务的通信。

您可以通过在SSL下操作您的服务来解决服务通信(并防止流拦截)。整个通信流都是加密的。

客户机上的凭证存储超出了您的API范围 - 您无法控制某人用凭证执行的操作。如果您还负责部署和维护调用您的API的桌面客户端,则有策略用于在客户端上保留凭据(取决于操作系统)。否则,您最安全的选择很简单 - 不要存储凭据,需要用户为每个会话提供uid/pwd参数。再次,这一切都取决于主机操作系统和客户端应用程序。