Проблема с избыточными запросами разрешений единого входа; рабочий процесс для установки Apps Marketplace

В течение последнего месяца я работал с представителем службы поддержки Google, который отвечает за проверку единого рабочего процесса / интеграции для представлений в Google App Marketplace. У нас все настроено, настроено и протестировано успешно, за исключением одной загадочной проблемы. Мой представитель Google рекомендовал мне опубликовать нашу проблему здесь, так как он и я не уверены, как ее решить.

Когда вы устанавливаете наше приложение ( https://chrome.google.com/webstore/detail/floruit-labs-pond/bhalfbanckpdhnkjnknlhcoiohcigocm?hl=en), рабочий процесс запрашивает разрешения более одного раза. Что, конечно, является нарушителем условий для публикации на Торговой площадке.

На риск чрезмерного обмена я прилагаю справочные материалы для контекста: скриншоты нашего рабочего процесса установки

Кроме того, ниже скопирован фрагмент кода, встроенный в нашу страницу входа - который добавляет функциональность кнопки входа в Google:

<!---include Google Apps SSO scripts --->
<meta name="google-signin-client_id" content="743379733841-bt8rpjio0qs44kei4vlk5av888fbp0fs.apps.googleusercontent.com">
 <script src="https://apis.google.com/js/platform.js" async defer>

<!---include Google Apps SSO button --->
          <div class="g-signin2" data-theme="dark" data-width="250" data-height="52" data-longtitle="true" align="left" style="margin-top:50px;"></div>
    <script>
      function onSignIn(googleUser) {
        // Useful data for your client-side scripts:
        var profile = googleUser.getBasicProfile();
        console.log("ID: " + profile.getId()); // Don't send this directly to your server!
        console.log("Name: " + profile.getName());
        console.log("Image URL: " + profile.getImageUrl());
        console.log("Email: " + profile.getEmail());

        // The ID token you need to pass to your backend:
        var id_token = googleUser.getAuthResponse().id_token;
        console.log("ID Token: " + id_token);
      };
        function renderButton() {
      gapi.signin2.render('my-signin2', {
        'scope': 'profile email https://www.googleapis.com/auth/drive',
        'longtitle': true,
        'theme': 'dark',
        'onsuccess': onSuccess,
        'onfailure': onFailure
      });
    }
    </script>

1 ответ

Диалог Вход /OAuth2 не будет автоматически утверждаться, если он содержит дополнительные области, которые пользователь или администратор не утвердили. Кнопка входа в Google, по-видимому, всегда включает область "openid", которая не входит в число областей, для которых настроено ваше приложение. Добавьте эту область в конфигурацию вашего магазина приложений, и она должна решить проблему.

Другие вопросы по тегам