我们正在构建一个包含webAPI的Web应用程序。这些WebAPI也需要暴露给其他应用程序(不同子域或第三方应用程序上的其他内部应用程序)。我们正在考虑使用OpenId Connect,这样我们不仅可以提供access_token,还可以提供id_token进行身份验证。
现在问题是'我的主应用程序是否也应该使用openId connect'用于身份验证/授权。我并不赞成这一点。根据我的理解,只有外部应用程序应该使用openid connect来使用主应用程序的资源。内部应用程序(主要以及不同子域上的应用程序)可以使用常规的基于cookie的身份验证。
例如,主要应用程序是MyWebApp.com(这也包括webapi)。其他内部应用程序是maps.MyWebApp.com,admin.MyWebApp.com,payroll.MyWebApp.com。
其他第三方应用程序可能是OtherWebApp.com。
请建议。