我将用Python和Flask编写休息api。目前,只有与该API交互的客户才是使用EmberJS编写的网站。我将使用基本身份验证与令牌进行身份验证。但我也想让用户通过oauth(ember-oauth2)与其他服务(google,facebook ...)进行身份验证。
Ember-oauth2纯粹是客户端身份验证,当用户使用身份验证服务时,我的ember网站将以身份验证服务的api令牌结束。现在,我想将该信息传播到后端rest api end获取令牌(并自动注册用户,如果这是他的第一次登录),ember应用程序将继续与api交互,就像用户登录时一样通过基本认证。
我认为将身份验证服务(例如Google)提供的令牌以及用户电子邮件发送到其余的api,并从其他api中检查令牌,例如https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=以及是否发送电子邮件从该请求匹配发送到api的电子邮件我将为ember应用程序创建令牌。
所以:
这种方法是安全可靠的(我会使用SSL)还是有更好的方法?