我目前正在建立一个生产使用的网站。不过,我确实对这件事有一些安全顾虑。如有任何建议或建议,将不胜感激!
以下是我迄今所做的工作:
下面的代码显示了我为令牌身份验证所做的工作。但我相信有更好的方法来实现这一目标。
if request.method == 'POST':
token = request.headers['Authorization']
token_key = 'Token token="%s"' %(user_token)
if token != token_key:
abort(400)
print('authentication failed!',request.json)
else:再次,我真的很感谢任何人能给我任何建议,或提供一个简短的风险评估,我使用的方法,我使用的应用程序。
发布于 2019-09-16 19:00:20
安全问题通常涉及具体的实现细节,而不是用于部署应用程序的平台。Heroku很好,但你的应用程序可能不是。
首先,您考虑过使用Heruku的Postgres DB吗?向互联网开放数据库绝对不是件好事。
另一件事是您的令牌验证。目前还不清楚这些user_token是从哪里得到的,但我敢打赌,您可以将它们存储在DB中,这也不太理想。您可能需要考虑存储散列,并根据请求对散列进行比较。
最后一件事--如果您对服务器有SSH访问权限,那么最好用白名单显示您自己的IP来访问它,并阻止所有其他的访问。
这些只是常见的做法,并不能保证应用程序的安全性。只有好的审计才会。
https://stackoverflow.com/questions/57962038
复制相似问题