我非常高兴地阅读了问题的答案讲座:什么可以准确识别网站访问者?。在此过程中,本讲座回答了以下问题:“最流行的身份验证/授权策略是什么?”以及算法的大概描述。好吧,在这个问题上,我想考虑一个更复杂的情况 - 多个应用程序的单一身份验证。
假设我们正在开发 Google Apps 或 Microsoft Office 的类似产品。我们的应用程序(例如 Microsoft Word(例如 N-Docs)或 Google Spreadsheets(例如 N-Spreadsheets))可以作为本机应用程序下载,也可以使用精简的 Web 版本。由于这些应用程序来自同一制造商,因此可以组织单个认证/授权中心。
问题是:什么样的认证策略是合适的,以便一个应用程序中的授权自动执行同一制造商的所有应用程序中的授权?
我们可以肯定地说这是可能的,因为谷歌以某种方式成功了(在网络应用程序的情况下,当然,并且最有可能的是在本机 Andorid 应用程序的情况下)。但这里使用什么身份验证策略呢?
- 就网络而言,我们为每个站点单独存储 cookie,并且我们将在不同的域或子域上拥有应用程序。
- 对于本机应用程序,我们将在系统目录中为每个应用程序拥有一个单独的文件夹,并且无法轻松访问其他应用程序的文件夹。