プライバシーポリシー
本ポリシーは、週案作成支援アプリ「週案エディタ(School Plan Note)」(以下「本アプリ」)における利用者情報の取り扱いを定めるものです。
要点
- 入力したデータは利用者本人の Google アカウント内(Google ドライブ/スプレッドシート)にのみ保存されます。
- 運用者側のサーバーやデータベースは存在せず、入力内容が運用者へ送られることはありません。ただし、配布された Apps Script プロジェクトをそのまま使う場合、エラーが起きたときの記録(例外ログ)はスクリプトの所有者が見られる実行ログに残ります(7. 安全管理措置)。
- 取得する権限(OAuth スコープ)は、本アプリの機能に必要な範囲に限定しています。
- 生成AI へ送られるのは、利用者が AI 機能を実行したときの対象データだけです。送信先は Google の Gemini API のみで、課金を有効にした有料ティアのキーを設定している限り、内容が AI モデルの学習に使われることはありません(4. 外部サービス・生成AI の利用)。
1. 基本方針とデータの保存先
本アプリは Google Apps Script 上で「アクセスしているユーザー自身として」動作します。週案・単元マスタ・タスク・学級通信・行事予定 PDF などの入力データは、利用者本人の Google アカウント内にのみ保存されます。
運用者は本アプリのソースコードを配布しているのみであり、利用者のデータを運用者側のサーバーやデータベースに収集・保存・閲覧しません。入力内容を運用者へ送信する機能はありません。
ひとつだけ例外があります。本アプリは Apps Script 上で動くため、処理中に想定外のエラーが起きると、その内容とスタックトレースが Google の実行ログに記録されます。利用者自身がデプロイしたプロジェクトであれば、この記録を見られるのは利用者本人だけです。一方、運用者が用意したウェブアプリの URL をそのまま使う場合は、スクリプトの所有者である運用者がこの実行ログを閲覧できます。記録されるのはエラーメッセージであり、週案の本文を書き出す作りにはしていませんが、エラーの内容によっては日付やシート名などが含まれ得ます。この記録を残したくない場合は、ソースコードからご自分の Google アカウントへ導入してご利用ください。
保存される場所
| 情報の種類 | 保存場所 |
|---|---|
| 週案・時数・タスク・単元マスタ・学級通信などの入力データ | 利用者本人の Google スプレッドシート(本アプリが作成したデータベース) |
| 取り込んだ行事予定 PDF、出力した PDF | 利用者本人の Google ドライブ |
| アプリの設定値、生成AI の API キー | Google Apps Script のユーザープロパティ(利用者ごとに分離された保存領域) |
| バックアップ・スナップショット・ごみ箱のデータ | 同じく利用者本人の Google スプレッドシート/ドライブ |
2. アクセス範囲(OAuth スコープ)と利用目的
本アプリは機能提供のために、Google の認可(OAuth)で以下の範囲にアクセスします。いずれも利用者本人の資産に対する操作であり、運用者への送信・保管は行いません。
| スコープ | 利用目的 |
|---|---|
userinfo.email |
ログイン中の利用者を識別し、利用者ごとにデータベースを分離するため。メールアドレスを運用者へ送信することはありません。 |
drive.file |
本アプリが作成した、または利用者が明示的に選択したファイルのみを対象とします。週案データベース(スプレッドシート)の読み書き、PDF の取り込み・出力、行事予定 PDF の保存に使用します。利用者の Drive 全体にはアクセスしません。 |
script.scriptapp |
時間主導トリガーの作成・削除。PDF 解析など時間のかかる処理のバックグラウンド実行、リマインダーの定時実行、不要になったトリガーの自動整理に使用します。 |
script.external_request |
外部 API との通信。利用者が設定した生成AI(Gemini API 等)への問い合わせ、および Google Classroom の資料取得に使用します。 |
script.send_mail |
利用者がリマインダーを有効化した場合のみ、タスクの通知メールを利用者本人のアドレス宛に送信するため。第三者へは送信しません。 |
classroom.courses.readonly |
利用者が Google Classroom 連携を使う場合のみ、担当クラスの一覧・資料を取得するため。 |
classroom.announcements |
利用者が Google Classroom 連携を使う場合のみ、利用者自身のクラスへ週案や予定のお知らせを投稿するため。 |
なお、本アプリは Google ドライブ全体への広範なアクセス権(drive)や、メールボックスの読み取り権限を要求しません。スプレッドシート全体への権限(Google Sheets の spreadsheets スコープ)も要求せず、週案データベースの読み書きも drive.file の範囲だけで行います。
3. 端末内に保存する情報
本アプリの入口となるページ(PWA シェル)は、利便性のためにブラウザの localStorage に次の情報を保存します。いずれも利用者の端末内にとどまり、外部へ送信されません。
- 接続先となる Web アプリの URL(初回に入力した場合)
- アプリを一度でも正常に起動できたかどうかの記録(起動画面の出し分けに使用)
- iOS 向けインストール手順の案内を閉じたかどうかの記録
アプリ本体(学級通信エディタ)も、編集中の内容を失わないようにブラウザの localStorage へ下書きを保存します。保存されるのは本文・見出し・時間割などの文字情報で、挿入した写真は保存しません(職員室の共用端末で、次に同じブラウザを使う人が児童の写真を開ける状態にしないためです)。そのため、ページを開き直すと写真は入れ直しになります。名前を付けて保存した通信は利用者の Google ドライブに保存され、そちらには写真も含まれます。
これらの下書きも利用者の端末内にとどまり、外部へ送信されません。ブラウザの「サイトデータの削除」で消去できます。
また、オフラインでも起動できるようにするため、Service Worker がページの表示に必要なファイルを端末のキャッシュへ保存します。これらはブラウザの「サイトデータの削除」でいつでも消去できます。
本アプリは、広告・アクセス解析・行動追跡を目的とした Cookie やトラッキング技術を一切使用しません。
4. 外部サービス・生成AI の利用
- Google(Apps Script / ドライブ / スプレッドシート / Classroom / Gmail 送信基盤):データの保存・処理は Google の基盤上で行われ、Google のプライバシーポリシーが適用されます。
- 内閣府「国民の祝日」CSV:カレンダー表示のために公開データを取得するだけで、利用者のデータを送信することはありません。
- ブラウザの音声認識サービス(Web Speech API):振り返り画面の「音声入力」ボタンを押したときだけ動きます。話した音声はブラウザ(Chrome など)が音声認識サービスへ送って文字にします。送信先と取り扱いはブラウザの提供元によります(Chrome の場合は Google)。この機能は任意で、ボタンを押さなければ音声が送られることはありません。振り返りには児童に関する記述が含まれ得るため、必要に応じてキーボード入力をお使いください。
上記以外の外部サービスへ、利用者のデータを送信することはありません。広告・アクセス解析・行動追跡のサービスは利用していません。
生成AI(AI/ML)サービスの利用
本アプリが連携する生成AI サービスは、Google の Gemini API(Google AI for Developers)ただ 1 つです。Google 以外の第三者 AI 提供者、AI アグリゲータ/ゲートウェイ/モデルハブ、および自己ホスト・オフラインのモデルは一切利用していません。
| 項目 | 内容 |
|---|---|
| AI 提供者 | Google(Gemini API / Google AI for Developers)のみ |
| 利用プラン(ティア) | 利用者自身が用意する API キーを使用します。本アプリは課金を有効にした有料ティア(paid tier)のキーの利用を必須とし、設定画面でもその旨を明示しています。 |
| 第三者 AI 提供者 | なし |
| アグリゲータ/ゲートウェイ/モデルハブ | なし(Gemini API のエンドポイントを直接呼び出します) |
| 自己ホスト・オフラインのモデル | なし |
| 送信されるデータ | 利用者が AI 機能を実行したときに限り、その対象となるデータ(週案の記述、取り込む行事予定・指導計画の PDF、学級通信の下書き等) |
| 送信されないデータ | 利用者のメールアドレス、Classroom のクラス情報、他の利用者のデータ、API キー以外の設定値 |
なぜ有料ティアを必須にしているか:Gemini API の無料ティアでは、送信した内容が Google による製品・モデルの改善(機械学習)に利用される場合があります。これは Google Workspace API のユーザーデータに関するポリシーの Limited Use 要件(Google ユーザーデータを汎用的な AI/ML モデルの学習に使わせない)と両立しません。そのため本アプリは、課金を有効にした有料ティアのキーを使う前提とし、設定画面にもその旨を表示しています。有料ティアのキーであれば、Gemini API の追加利用規約により、送信内容がモデルの学習に使われることはありません。
ただし、本アプリは設定されたキーが有料ティアかどうかを判定できません。無料ティアのキーを設定した場合でも機能は動作し、その場合は送信内容が Google の製品・モデルの改善に利用される可能性があります。有料ティアのキーをお使いいただくよう、あらためてお願いします。
生成AI 機能は任意です。API キーを設定しなければ、外部の AI サービスへデータが送信されることは一切ありません。API キーは利用者自身が設定し、利用者ごとのユーザープロパティに保存されるもので、運用者は取得も保持もしません。
5. Google ユーザーデータの取り扱い(Limited Use)
本アプリによる Google ユーザーデータの取得・利用・保存・共有は、Google API サービスのユーザーデータに関するポリシーおよび Google Workspace API のユーザーデータおよびデベロッパー ポリシー(いずれも Limited Use 要件を含む)に準拠します。具体的には次のとおりです。
- 取得したデータは、本ポリシーに記載した機能提供の目的にのみ利用します。
- 広告目的での利用、および第三者への販売・譲渡は行いません。
- 運用者が利用者の入力内容を閲覧することはありません(受け取る仕組みがありません)。エラー時の実行ログの扱いは 1. 基本方針 に記載しています。
- Google Workspace API から取得したユーザーデータ(生データ・集約データ・匿名化データ・そこから派生したデータを含む)を、基盤モデルその他の汎用的な AI/機械学習モデルの作成・学習・改善のために使用・転送・販売することはありません。
- そのような学習を行う第三者の AI/ML サービスへ、Google ユーザーデータを転送することもありません。本アプリが連携する生成AI は Google の Gemini API のみで、かつ学習に利用されない有料ティアの利用を前提としています(4. 生成AI サービスの利用)。
Limited Use compliance statement
School Plan Note’s use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
We do not use, transfer, or sell any raw, aggregated, anonymized, or derived Google Workspace API user data to develop, train, or improve foundational or generalized AI/ML models, and we do not transfer such data to any third-party service that would do so. The only AI service this application integrates with is Google’s own Gemini API, called directly with a paid-tier API key supplied by the user, under terms which state that the submitted content is not used to improve Google’s models. We use no third-party AI providers, no AI aggregators, gateways, or model hubs, and no self-hosted or offline models.
6. データの保存期間と削除・権限の取り消し
データはすべて利用者の管理下にあるため、保存期間と削除は利用者自身が制御できます。
自動的に整理される情報
誤操作からの復旧のため、本アプリは利用者のスプレッドシート内に復元用データを保持し、次の期間を過ぎたものから順に自動削除します。これらもすべて利用者本人のファイル内にあります。
| 種類 | 既定の保持期間 |
|---|---|
| バックアップ | 30日 |
| スナップショット | 90日 |
| ごみ箱(削除した行) | 30日 |
利用者による削除
- 入力データ:本アプリが作成したスプレッドシートおよび PDF を Google ドライブから削除すれば、データは消去されます。
- 設定値・API キー:アプリの設定画面から削除できます。
- アクセス権限:Google アカウントのアクセス権限設定から、いつでも本アプリの認可を取り消せます。取り消し後、本アプリは利用者のデータへアクセスできなくなります。
- 端末内の情報:ブラウザのサイトデータを削除すれば消去されます。
運用者側にデータの複製は存在しないため、運用者に対して削除を依頼する必要はありません。
7. 安全管理措置(機微なデータの保護)
本アプリが「機微」として扱う情報
本アプリでは、次の情報を機微なデータとして扱い、以下の保護措置を適用します。
- 週案・学級通信・タスク等に入力された記述(児童生徒に関する記述が含まれ得るため)
- Google Classroom から取得したクラス(コース)の情報
- ログイン中の利用者のメールアドレス
- 利用者が設定した Gemini API キー(認証情報)
- OAuth アクセストークン
保護の仕組み
| 観点 | 具体的な措置 |
|---|---|
| 保存場所の限定 | 機微なデータは利用者本人の Google アカウント内(スプレッドシート/ドライブ/ユーザープロパティ)にのみ保存します。運用者側のサーバー・データベースは存在せず、入力内容を運用者へ送信する機能もありません。ただし運用者が用意したウェブアプリの URL を使う場合、エラー時の実行ログはスクリプト所有者(運用者)が閲覧できます(1. 基本方針)。動作ログは利用者自身のスプレッドシート内の「ログ」シートに書き込む作りで、運用者側へは流れません。 |
| 通信の暗号化 | ブラウザ・Apps Script・Google API・Gemini API の間の通信はすべて TLS(HTTPS)で暗号化されます。平文の HTTP 通信は行いません。 |
| 保存時の暗号化 | Google ドライブ/スプレッドシートおよび Apps Script のプロパティサービスに保存されるデータには、Google の既定の保存時暗号化(AES による暗号化)が適用されます。 |
| 利用者ごとの分離 | Web アプリは「アクセスしているユーザーとして実行」する構成で動作します。各処理は実行中の利用者本人の権限でしか動かず、他の利用者のスプレッドシート・ドライブ・Classroom へは技術的に到達できません。設定値は利用者ごとに分離されたユーザープロパティに保存します。 |
| 認証情報の取り扱い | Gemini API キーはユーザープロパティに保存し、ソースコードには記載しません。画面上はマスク表示し、ログ・エラーメッセージ・PDF などの出力物にも記録しません。利用者はいつでも設定画面から削除できます。 |
| OAuth トークンの取り扱い | アクセストークンは Apps Script の実行コンテキスト内でのみ使用し、保存しません。Google ピッカー(ファイル選択)に渡す場合も、その場限りの短命なトークンで、到達できる範囲は drive.file(アプリが作成した/利用者が選んだファイル)に限られます。 |
| 最小権限 | 要求する OAuth スコープは機能に必要な最小限にとどめます。Drive 全体へのアクセス権(フルの drive スコープや Drive 全体の読み取り権限)、メールの読み取り、児童生徒の名簿・課題・成績にあたる Classroom の権限は要求しません。スコープが広がらないよう、リポジトリの自動テストで継続的に検査しています。 |
| 第三者への提供 | 機微なデータを第三者へ提供・販売・譲渡しません。外部送信は4. 外部サービス・生成AI の利用に列挙したものに限られます。そのうち利用者が入力した内容を含むのは、利用者が明示的に操作したときのGemini API への送信と、音声入力(Web Speech API)の 2 つだけです。いずれもボタンを押さなければ動きません。 |
| 保持期間の制限 | 復元用のバックアップ・スナップショット・ごみ箱は、6. データの保存期間に定めた期間を過ぎたものから自動的に削除されます。いずれも利用者本人のファイル内にとどまります。 |
| 削除と権限取り消し | 利用者はいつでも、データの削除・API キーの削除・アプリの認可取り消しを自分で行えます(6)。 |
| 脆弱性への対応 | ソースコードは公開されており、第三者による検証が可能です。報告の手順・受付窓口・対応方針は SECURITY.md に定めています。 |
| インシデント時の対応 | 本アプリに起因する情報漏えいのおそれを認識した場合、運用者は速やかに原因を調査して修正版を公開し、影響範囲を本ページおよびリポジトリで公表します。運用者はデータを保持しないため、通知が必要な事象は「アプリの不具合により利用者本人のデータが意図せず露出し得た場合」に限られます。 |
なお、本アプリの利用にあたっては、所属機関の情報管理規程に従い、端末のロック・アカウントの二段階認証など、利用者側の基本的な安全対策も併せて実施してください。
8. 児童生徒に関する情報の取り扱い
本アプリは教職員が業務に用いることを想定したツールであり、児童生徒本人に向けて提供されるものではありません。児童生徒に関する情報が入力される場合であっても、そのデータは入力した教職員本人の Google アカウント内にのみ保存され、運用者はこれを取得しません。
児童生徒の情報を入力するかどうか、またその範囲は、利用者および所属機関の判断と責任において決定してください。所属機関の情報管理規程や関係法令に従ってご利用ください。
9. お問い合わせ
本ポリシーおよび本アプリのデータの取り扱いに関するお問い合わせは、次の連絡先までご連絡ください。
- 運用者:GIGAyama
- メール:basstar.1102@gmail.com
10. 本ポリシーの改定
本ポリシーは、機能の追加・変更や法令の改正に応じて改定されることがあります。改定した場合は本ページに掲載し、最終更新日を更新します。重要な変更がある場合は、あわせてリポジトリ上で告知します。