2012-12-26 32 views
1

当我们通过HTTP请求在应用程序服务器上构建网站访问我们的API时。我们可以限制调用API访问的客户端的域名。现在,如果我们构建移动应用程序,我们如何识别该应用程序已获得授权?我们无法获得任何用户代理。任何方法来检查这个?限制访问服务器的移动应用程序API

在服务器上,我们使用ASP.Net构建。

回答

0

我们可以限制调用API访问的客户端的域名。

检查调用者的IP /域名可以在认证/授权的一个因素,但在我看来,这不应该是唯一的因素。这样的证据可以伪造,也不精确:你不知道用户是谁,他们(可能)来自哪里。

现在,如果我们构建移动应用程序,我们如何识别该应用程序的授权是 ?

使用适合业务需要的适当认证/授权机制。如果应用程序属于特定用户的数据,则需要通过SSL将用户名和密码传递给您的API。更好的是,熟悉OpenAuth

+0

OAuth是验证用户的好方法。我将开发一款不希望有人编写其他客户端/应用程序来使用我们的服务器API的应用程序。 OAuth可以限制这一点吗? –

+0

如果不按用户的要求在用户基础上执行此操作,那么您将受限于能够“关闭”单个设备或为用户分配特定的权限。如果这根本没有关系(通常它**确实很重要),那么您可以使用一组登录凭据(OAuth可能会工作,但实际上并没有为单次登录提供太多价值)。 –