Search code examples
google-apps-marketplace

Undisplaying the permission screen for each user. (Case: Using API don't support Service Account authentication)


We publish an app that use OAuth 2.0 API access on Google Apps Marketplace. It got reviewed by Google and they said our app is invalid because it shows permission screen when a user first runs the app. (The app will be removed from the Google Apps Marketplace if our app is not fixed within 30 days) To solve this issue, we have some problems.

  1. Our app uses OpenID Connect to make users login.
  2. Our app also uses Spreadsheet API and Calendar Resource API (OAuth 2.0 Web Application Flow)

So our questions related above is the followings:

1.
Although our app uses OpenID Connect for login, using OpenID Connect forces our app to show the permission screen. Doesn't it meet the best practice below of Google Apps Marketplace? https://developers.google.com/apps-marketplace/practices#5_use_one-click_single_sign-on

We followed the OpenID Connect document provided by Google: https://developers.google.com/accounts/docs/OAuth2Login


2.
Since Spreadsheet API and Calendar Resource API don't currently support the authentication method using Service Account with OAuth 2.0, we chose to use the method of Web Application Flow. Our app get the token when users login, but Google said to us that it fails to meet their SSO requirements. To solve the issue, we are thinking to change our app to authorize AFTER login within the app instead (use Web Application Flow method as it is). Does the way meet the SSO requirements? In other words, is it OK to show permission screen if after login?

We will applicate if anyone can tell us good solution to solve these problems.

Thanks,


Solution

  • If you register your scopes in the Google Apps Marketplace configuration screen, and then only request those scopes in the OpenID Connect flow, then the permissions screen should be automatically skipped. Please ensure the scopes match between these two locations.