我计划使用Codeigniter(3.0.5)创建一个网站和一个网络服务。此网络服务将向网站提供数据。
但将来,我将使用现有的 Web 服务作为数据源创建一个移动应用程序。
此网络服务将在来自网站/移动应用程序的每个请求中提供 JSON 响应。
我的问题:
- 由于网站将以无浏览器/无浏览器的方式访问网络服务,因此会话将不起作用。如何对当前访问网站/移动应用程序的现有用户进行身份验证/保持活动状态?
想象的答案:每次用户进行身份验证时,Web服务是否应该创建某种会话/用户密钥,该会话/用户密钥具有过期时间到网站,并且必须为每个请求将密钥从网站发送回Web服务?
- 我希望网络服务只能从我的网站和移动应用程序访问。
想象的答案:创建API/Web服务密钥。网站/移动应用程序必须同时发送我上面提到的 API 密钥和会话/用户密钥。但从我读到的内容来看,API 密钥不应该存储在移动应用程序中。如何确保 api 密钥安全?
这个问题发布快一年了!
我停止查看 oauth,因为我并不真正了解实现。但是在重新搜索之后,显然JWT(JSON Web令牌)是适合我的情况的最佳解决方案。