我的Flask网络应用将从外部来源收集的数据推送到客户端(通过服务器发送的事件)。不幸的是,外部源仅支持JavaScript,因此数据订阅是由单独的节点应用程序完成的(可能无法在Flask Web应用程序服务器上运行)。
当节点应用获取数据时,通知Flask Web应用的最简单方法是通过POST。尽管我可以通过一些密码字段“保护” POST,但端点本身仍然太公开,我不太喜欢。
我的问题是:对于这种内部数据流,是否有更好的设计,即更安全而不引起太多复杂性?
Approach#0
通过生成令牌在POST端点上使用OAuth2.0,因此,每当有新数据通知时,您都可以生成新的access_token或使用有效的access_token(来自先前的流程)
方法#1
使用公用存储介质(redis / rdbms / documentdb),
即“当节点应用程序获取数据时,通知Flask Web应用程序的最简单方法是通过POST”。
代替这样做,将更新/通知/数据存储在数据库中。