Беспроблемный вход

Поскольку вход в систему — это первое взаимодействие пользователя с вашим дополнением, важно, чтобы он мог завершить этот процесс как можно проще. Прочтите разделы ниже, чтобы ознакомиться с различными API-интерфейсами входа в систему, параметром запроса, связанным с входом в систему, способами работы с блокировщиками всплывающих окон и планом тестирования, который вы можете использовать во время разработки, чтобы убедиться, что вы следуете лучшим практикам.

Подробности реализации единого входа

Google OAuth 2.0 совместим со многими стеками OAuth 2.0. Мы настоятельно рекомендуем реализовать авторизацию на стороне сервера, поскольку это вариант наивысшего уровня безопасности и поддерживает использование параметров запроса iframe .

При выполнении входа в Google ознакомьтесь с техническим руководством, представленным на веб-сайте Google Identity . Обязательно следуйте рекомендациям по фирменному оформлению входа в систему Google. Файлы Sketch, SVG и EPS доступны для скачивания.

Входные тесты

Используйте план тестирования надстроек, чтобы убедиться, что ваша надстройка соответствует требуемым стандартам и способна обрабатывать известные крайние случаи, прежде чем отправлять надстройку на проверку. Эти тесты точно соответствуют контрольному списку требований к надстройке Класса и содержат пошаговые инструкции, как проверить, соответствует ли ваша надстройка этим требованиям. Это те же тесты, по которым тестируется ваше приложение во время публикации.

Параметры запроса на вход

Google Classroom предоставляет параметр запроса login_hint , который упрощает повторный вход в систему. Дополнительную информацию см. в разделе параметров, связанных с входом в систему, на странице параметров запроса iframe. Пример кода можно найти в пошаговом руководстве по повторным посещениям дескриптора в руководствах для разработчиков.

Управление блокировщиками всплывающих окон

Вход в надстройку упрощается с помощью диалогового окна входа. В этом окне отображается экран выбора учетной записи, где пользователь может предоставить разрешения OAuth. Блокировщик всплывающих окон конечного пользователя может помешать ему завершить процесс входа.

Пример экрана выбора учетной записи

Рисунок 1. Пример экрана выбора учетной записи .

Чтобы решить эту проблему, предоставьте конечному пользователю кнопку, которую он может нажать, чтобы обойти блокировщик всплывающих окон. Это взаимодействие позволяет отобразить диалоговое окно входа, чтобы конечный пользователь мог продолжить процесс входа. Убедитесь, что предоставленная вами кнопка соответствует рекомендациям по фирменному оформлению входа в систему .

Следуйте инструкциям по входу в наши руководства для разработчиков, чтобы реализовать фирменную кнопку входа Google, которую можно нажать, чтобы вызвать диалоговое окно входа.

Мульти-логин

Браузер, в котором одновременно выполнен вход в несколько учетных записей, может нарушить поток пользователей надстройки. Конечные пользователи могут либо выйти из всех учетных записей Google в своем текущем браузере , либо открыть Класс в окне Chrome в режиме инкогнито, прежде чем войти в систему с правильной учетной записью и повторить операцию.

Если из-за проблемы с несколькими входами в надстройку вошел неправильный пользователь, ваши вызовы API надстроек Класса могут завершиться ошибкой с ошибкой InvalidAddOnToken . Если вы получили такую ​​ошибку, вам следует попросить пользователя либо выйти из всех других учетных записей в браузере, либо вместо этого открыть Класс в окне Chrome в режиме инкогнито.