はじめに
SKYMENU Cloud Devicecontrol EditionではGoogle Workspaceのアカウントを利用することで、独自のアカウント管理を不要としています。
Google Workspaceのアカウントを利用して「Googleでログイン」するOAuthアプリケーションをリリースするために必要な、Googleの審査(Google OAuth 検証)に関する情報をSky Tech Blogにて複数回に分けてご紹介してまいります。 初回は、「OAuth検証の準備」までをご紹介いたします。
<注意>
本記事の情報は2024年9月の申請時点の情報です。
レギュレーションは都度見直されている可能性がありますので、実際に対応される際は最新の情報をご確認ください。
OAuth 検証が必要になるアプリ
以下のようなアプリは、Googleによる検証(審査)が必要になります。
- 個人利用やGoogle Workspace組織内部だけの利用ではなく外部のユーザーも利用する
- 100人以上のユーザーが使用する
- 「機密スコープ」や「制限付きスコープ」に該当するGoogle APIを使用する
SKYMENU Cloud Devicecontrol Editionでは、「制限付きスコープ」を利用している
- 教員用アプリ
- 学習者用アプリ
の2つのアプリケーションでセキュリティ審査が必要でした。
スコープとはアプリがユーザーのデータにアクセスする範囲と権限です。
制限付きスコープではユーザーの個人情報を含む機微なデータに強い権限をもってアクセスします。
Google APIの制限付きスコープの使用には、Google審査(ブランドとポリシーの検証)の後にセキュリティ審査も要求されます。
こちらもまた別の記事でご紹介いたします。
OAuth検証の準備(制限付きスコープ使用ver.)
検証に向けて、 OAuth App Verification Help Centerのページを熟読しつつ、準備を進めました。
この審査は「ブランド検証」と「機密・制限付きスコープ要件」という検証があります。
開発したアプリがGoogleのポリシーに沿っているか、機密・制限付きスコープのAPIを利用するのに妥当なユースケースかどうかをチェックされます。
審査に必要なアイテム
審査のために準備したアイテムは以下の5つです。
- アプリのアイコン
- アプリのホームページ
- アプリのプライバシーポリシーページ
- デモ動画(ユーザー認証をし、Google APIを実行するフローを録画したもの(YouTube上で公開する))
- ユーザーサポート用メールアドレス
それぞれのアイテムの要件について説明いたします。
審査に必要なアイテムにはそれぞれ要件があり、ガイドラインとリファレンスを熟読しながら対応を進める必要があります。
今回OAuthプロジェクトは、Cloud Identity組織内に外部向けアプリとして作成しました。
1. アプリのアイコン
- OAuth認証画面に表示するアプリのアイコン。
- アプリホームページと同様のもので、自社のブランドや製品を正確に表現するもの。
- サイズは120 x 120 ピクセルの1MB以内の画像(JPG、PNG、BMP形式)。
2. アプリのホームページ
- 自社のブランドを正確に表現し、識別できること。アプリのアイコンやアプリのファビコンとHPのファビコンが一致していないといけないという情報もあります。
- ユーザーに対してアプリの機能を説明し、どのようなメリットがあるかを伝えること。
- プライバシーポリシーページへのリンクを用意すること。
- OAuthアプリのプロジェクトの所有権を持つアカウントが、所有権を持つドメインでホスティングされていること。
3. プライバシーポリシーページ
- アプリのホームページと同様に、所有権を持つドメインでホスティングされていること。
- アプリがGoogle ユーザーデータにアクセスし、それを使用、保存、共有する方法を説明すること。どのような目的でどのAPIスコープを使用するか、サーバーに保存するかどうか、その保持期間について説明する必要があります。関係部署に協力いただき、プライバシーポリシーを作成いたしました。
- アプリのホームページとは別のURLであること。
4. デモ動画
- Googleでログインのボタンを押下してログインする際のURLに含まれるクライアントIDや、使用しているAPIスコープを英字テロップで説明します。また、OAuth画面は表示言語選択で英語表記の状態にする必要があります。(デモ動画に入れるテロップを英語にするのに苦労しました...)
・ YouTubeにデモ動画をアップロードします。- 限定公開(URLを知っている人だけ見られる)で公開しました。
5. ユーザーサポートメールアドレス
- ユーザーを認証するOAuth画面にリンクとして表示するメールアドレス。
- Googleアカウントのメールアドレスである必要があります。
- SKYMENUのドメインで新たにメールアドレスを作成し、そのアドレスでGoogleアカウントを作成しました。
・ 申請するOAuthアプリ(認証情報)の所有権を付与する必要があります。 - プロジェクトを作成したCloud Identityドメインとは別のドメインのメールアカウントとなるので、ドメイン共有制限ポリシーを一時無効にしてメールアカウントに所有権を付与した後に再度ポリシー有効化しました(ここはちょっとハマりどころでした)。
- SKYMENUのドメインで新たにメールアドレスを作成し、そのアドレスでGoogleアカウントを作成しました。
また、開発したアプリがGoogleのガイドラインに準拠しているかも確認しておく必要があります。 例えば、
- Googleのアイコンを改変してはならない
- 「Googleにログイン」ボタンのデザインポリシーに準拠しているか?
- 各APIの使用にあたっての条件
など、これらも確認が必要です。
以下のガイドラインをしっかり読み込んで対応します。
GoogleのAPIを使うアプリのガイドライン
サインインボタンのガイドライン
というところで、「OAuth検証の準備」編は以上となります。
実際にOAuth検証を実施するところも今後ご紹介できればと思いますので引き続きSky Tech Blogにぜひご期待ください!