API注册和身份验证服务

时间:2014-06-24 10:49:18

标签: python api http authentication

我正在使用python处理API注册和身份验证服务应用程序。开发人员将能够注册他们的应用程序(应用程序的域名),并为注册的应用程序生成随机API密钥。

接下来,注册的应用程序将使用每个API请求将API密钥发送到API服务。 API服务器将使用传递的API密钥对传入请求的域进行身份验证,以确认请求是否有效。我使用转发主机来验证API请求的域名,但是在某些情况下它不起作用(当打开的页面是第一页时),转发主机变为空白。

是否有更好的方法来验证请求或API注册过程中所需的任何更改,以便可靠地验证请求?一些指示将有所帮助。

1 个答案:

答案 0 :(得分:0)

使用授权代理

样品是" 3scale.net",提供免费套餐,其他商业解决方案也存在。

我知道的开源解决方案是ApiAxle,它更简单,但仍然非常有用。

代理负责管理访问密钥,并将请求转发回实际应用程序,以防万一,真的要提供服务。

使用授权服务

另一个解决方案是让一些内部服务评估客户端提供的密钥集(providerid,appid,accesskey,...)是否已经过授权。为此,您必须:

  • 设置授权服务
  • 通过在每次呼叫认证服务的呼叫顶部添加2-3行来修改您的代码。

3scale的示例代码在这里:https://github.com/3scale/3scale_ws_api_for_python

结论

  • 身份验证代理使应用程序变得简单,而不会打扰谁在询问。这可能是有利的,直到您的应用程序需要知道谁在询问。
  • 验证服务需要更改您的代码。