我的chome扩展和服务器之间的身份validation策略

我正在构buildGoogle Chrome浏览器扩展程序,并且对如何在应用程序中实施安全性有一些疑问。

我需要访问几个Google API,因此我们将使用OAuth 2.0。 所以基本上从扩展我知道哪个用户login到浏览器。

我的扩展然后需要获取并发布数据到我的(nodejs)API服务。 我想确保请求数据的用户是login到浏览器的用户。 是否有任何方式使用以前的Google身份validation过程来validation扩展和我的API之间的通信? 我真的不希望用户必须再次login,才能访问我的API。

我确信我错过了一些简单的东西,而且我还没有find适合这种情况的东西

遵循OpenID Connectauthenticationstream程 ,您将获得一个access_token和一个id_token 。 您将使用acess_token像往常一样对Google API进行身份validation请求。 id_token将用作请求到服务器的身份validation。

当请求到达服务器时,您将需要validation令牌 ,然后可以使用id_token的内容来识别用户 。

如果用户已经login,并且您正在使用Web应用程序stream(不是chrome.identity API),用户将不必loginvalidation过程,但是用户至less会在第一时间看到同意画面。 但是,如果您已经通过提供&login_hint=参数来知道电子邮件地址,则可以跳过帐户select器屏幕。