我正在使用python开发一个API注册和身份验证服务应用程序。开发人员将能够注册他们的应用程序(应用程序的域名),并将为注册的应用程序生成一个随机的API密钥。
接下来,注册的应用程序将在每次API请求时将API密钥发送到API服务。API服务器将使用传入的API密钥对传入请求的域名进行身份验证,以确认请求有效。我正在使用Forwarded Host验证API请求的域名,但是在某些情况下它不能正常工作(当打开的页面是第一个页面时),Forward Host变为空白。
是否有更好的方法来验证请求或API注册过程中所需的任何更改,以可靠地验证请求?一些指点会很有帮助。
发布于 2014-06-24 20:25:47
使用授权代理
示例是"3scale.net",提供免费的层,也存在其他商业解决方案。
我知道的开源解决方案是ApiAxle,它简单得多,但仍然非常有用。
代理负责管理访问密钥,并仅在真正需要服务的情况下才将请求转发回实际应用程序。
使用授权服务
另一种解决方案是让一些内部服务评估客户端提供的密钥集(providerid,appid,accesskey,...)是否经过授权。为此,您必须:
3scale的示例代码如下:https://github.com/3scale/3scale_ws_api_for_python
结论
https://stackoverflow.com/questions/24384704
复制相似问题