存储第三方oauth jwt令牌的最佳实践是什么?例如,使用zoom oauth API,它响应访问令牌和刷新令牌。我应该把它存储在哪里?(访问令牌的寿命是1小时)我认为,在会话中存储访问令牌,在数据库中刷新令牌,这是安全的好做法吗?
pkwftd7m1#
一个更好的选择是永远不要在浏览器中存储令牌,而是100%在后端处理它。请查看此视频以了解如何以最安全的方式进行操作的更多细节。
niknxzdl2#
这完全取决于你的OAuth流类型(离线或在线)。如果在线,你需要在会话中存储第三方令牌,如果离线,你需要在DB中存储令牌。有关Zoom REST API和SDK集成的更多信息,请在此处观看会议ZOOM Integration Playlist
c8ib6hqw3#
如果您的后端需要调用一些外部API(如缩放),最好的方法是将所有API调用(如果没有SDK库,甚至可以创建一个SDK库)抽象为一个单例类。这意味着您可以在该类中编写逻辑,使其在应用程序中始终有一个示例,这样您就可以将该令牌存储在该示例中。但是,您可能还需要实现一个错误处理程序,因为JWT访问令牌通常会在一段时间后过期,因此您需要处理401错误,并且在发生这些错误时,您需要获取一个新令牌。希望这个有用。
3条答案
按热度按时间pkwftd7m1#
一个更好的选择是永远不要在浏览器中存储令牌,而是100%在后端处理它。请查看此视频以了解如何以最安全的方式进行操作的更多细节。
niknxzdl2#
这完全取决于你的OAuth流类型(离线或在线)。如果在线,你需要在会话中存储第三方令牌,如果离线,你需要在DB中存储令牌。
有关Zoom REST API和SDK集成的更多信息,请在此处观看会议
ZOOM Integration Playlist
c8ib6hqw3#
如果您的后端需要调用一些外部API(如缩放),最好的方法是将所有API调用(如果没有SDK库,甚至可以创建一个SDK库)抽象为一个单例类。
这意味着您可以在该类中编写逻辑,使其在应用程序中始终有一个示例,这样您就可以将该令牌存储在该示例中。但是,您可能还需要实现一个错误处理程序,因为JWT访问令牌通常会在一段时间后过期,因此您需要处理401错误,并且在发生这些错误时,您需要获取一个新令牌。
希望这个有用。