我需要帮助设计我的网络应用程序。我想做一个需要身份验证的REST Web服务,以及一个访问此Web服务以获取数据的Web应用程序。所有用户都存放在外部数据库中(如openldap,活动目录或其他)。
_____________ __________________
| | | |
| web app |----->| REST service |
|_____________| |__________________|
_______________
| |
| user db |
|_______________|
问题是:我是否需要在Web应用程序和Web服务上进行身份验证,或者Web应用程序是否可以通过Web服务验证登录?
希望我的问题足够可以理解
编辑:以澄清情况:我的网络服务是独立的,任何类型的应用程序都可以访问它(如网络应用,智能手机应用,卷曲等......)。 我认为我的问题也需要澄清。我想知道是否可以在服务中创建所有身份验证逻辑。我想象这样的事情:
http://mywebservice.com/login
{"loginStatus":true}
或false
,如果它们无效。这是一个可能的解决方案吗?它安全吗?
答案 0 :(得分:0)
首先......“我是否需要在Web应用程序和Web服务上进行身份验证,或者Web应用程序是否可以通过Web服务验证登录?” ......两者都有可能......取决于你的选择和实施。但是为了使流程在所有情况下均匀使用DB,来自Web应用程序的调用应该转到Web服务,如图所示。我认为在登录时,客户端应该调用Web应用服务器,Web应用程序调用Web服务以查看数据库以检查凭据。
可以有很多种方式......有时Web应用程序会大量使用AJAX,而客户端本身会直接调用REST服务来获取数据或检查凭据。