ログインはユーザーがアドオンと最初に対話する機会であるため、できるだけスムーズにフローを完了できるようにすることが重要です。以下のセクションでは、さまざまなログイン API、ログイン関連のクエリ パラメータ、ポップアップ ブロックの処理方法、開発中にベスト プラクティスに沿って作業していることを確認するために使用できるテストプランについて説明します。
SSO 実装の詳細
Google の OAuth 2.0 は、多くの OAuth 2.0 スタックと互換性があります。サーバーサイドの認可は、セキュリティが最も高く、iframe クエリ パラメータの使用をサポートしているため、実装することを強くおすすめします。
Google ログインを実装する際は、Google Identity ウェブサイトで提供されている技術ガイダンスを参照してください。Google のログインにおけるブランドの取り扱いガイドラインに必ず準拠してください。Sketch、SVG、EPS ファイルがダウンロード用に提供されています。
ログイン テスト
アドオンを審査に送信する前に、アドオンが必須の基準を満たし、既知のエッジケースを処理できることを確認するには、アドオンのテストプランを使用します。これらのテストは、Classroom アドオンの要件チェックリストを反映したもので、アドオンがこれらの要件を満たしているかどうかを確認する手順を詳しく説明しています。これらは、公開時にアプリケーションがテストされるテストと同じです。
ログイン クエリ パラメータ
Google Classroom には、繰り返しログインを容易にするための login_hint
クエリ パラメータが用意されています。詳細については、iframe クエリ パラメータ ページのログイン関連のパラメータのセクションをご覧ください。サンプルコードは、デベロッパー チュートリアルのリピーターの処理チュートリアルにあります。
ポップアップ ブロックを管理する
アドオンへのログインは、ログイン ダイアログ ウィンドウで行います。このウィンドウにはアカウント選択画面が表示され、ユーザーは OAuth 権限を付与できます。エンドユーザーのポップアップ ブロッカーが原因で、ログインフローを完了できない可能性があります。
図 1. アカウント選択画面の例。
この問題を解決するには、エンドユーザーがクリックしてポップアップ ブロックをバイパスできるボタンを提供します。このインタラクションにより、ログイン ダイアログが表示され、エンドユーザーはログインフローを続行できます。提供するボタンがログインのブランド ガイドラインに準拠していることを確認してください。
デベロッパー向けチュートリアルに記載されているログインのチュートリアルに沿って、クリックするとログイン ダイアログをトリガーできる Google ブランドのログインボタンを実装します。
マルチログイン
複数のアカウントに同時にログインしているブラウザでは、アドオンのユーザーフローが中断されることがあります。エンドユーザーは、現在のブラウザで Google アカウントからすべてログアウトするか、正しいアカウントでログインして操作を再試行する前に、シークレット Chrome ウィンドウで Classroom を開くことができます。
マルチログインの問題により、アドオンに誤ったユーザーがログインしている場合、Classroom アドオン API の呼び出しが InvalidAddOnToken
エラーで失敗することがあります。このようなエラーが表示された場合は、ブラウザで他のすべてのアカウントからログアウトするか、シークレット モードの Chrome ウィンドウで Classroom を開くようユーザーに指示してください。