【Google Cloud 事例】Gooogle ドライブ、Gooogle カレンダーのアクセス権情報を保管、復元するツールの開発ー産業用機械会社様
- #Google Cloud
- #Google Workspace(旧G Suite)
Google Workspaceを導入しているお客様にとって、Google ドライブやGoogle カレンダーのアクセス権は非常に業務影響が高く重要な情報です。誤ってアクセス権を削除してしまった際には業務に多大な影響を及ぼします。
そういった事態を未然に防ぐためGoogle ドライブ、Google カレンダーのアクセス権保管、復元する手段を準備しておきたいといったご要望もあるかと思います。
今回の記事ではGoogle ドライブ、Google カレンダーのアクセス権保管、復元するツールを開発したという事例をご紹介いたします。
【お客様の抱えていた課題】
-
- ・誤ってアクセス権を削除してしまった場合に備え、Google ドライブ・Google カレンダーのアクセス権情報 及び Googleグループのメンバー情報を毎日取得し保管したい
- ・保管してあるGoogle ドライブ・Google カレンダーのアクセス権情報を、指定した日付に復元できるようにしたい
上記のようなご相談があり、既存のツールでは、毎日のアクセス権のデータ保管や必要時の復元に対応しているものはなかった為、以下のようなアプリケーション開発にて細かい点も対応できるようにいたしました。
【アプリケーション概要】
このアプリケーションでは、高速で大量リソースのアクセス権取得と復元を実現する必要があります。
上記の実現には、Google Cloud のサービスであるCloud Functionsを複数のインスタンスで並列処理をし、Pub/Subでメッセージの割り振り管理をすることで対応を可能にしました。
保管機能
<アプリケーションの機能>
①リソース(Google ドライブ、Google カレンダー、Google グループ)の一覧データを取得する
②取得したリソースのアクセス権データを取得する
③データベースに一覧データ及びアクセス権データを保管する
④管理者様に保管結果をメールで通知する
<アプリケーションの構成>
復元機能
<アプリケーションの機能>
①復元したいリソース(Google ドライブ、Google カレンダー)の一覧データを取得する
②復元したいリソースのアクセス権データを取得する
③毎日取得しているデータベースのアクセス権データと2で取得したアクセス権データから差分情報を抽出する
④抽出した差分情報でリソースを更新する
⑤管理者様に抽出結果をメール通知する
<アプリケーションの構成>
【アプリケーション開発後の結果】
上記のように2種類のCloud Funciton(一覧取得、アクセス権保管復元)とPub/Subを駆使することで、一日で大量のリソースのアクセス権保管、復元を実現いたしました。
Google Workspaceのリソース管理を自動化する際、APIの制限が大きな問題となります。今回の事例ではFunctionの並列実行数を調整することで、APIの制限に柔軟に対応できる構成を構築いたしました。この構成を駆使することでGoogle ドライブ 、Google カレンダー、Google グループのアクセス権情報だけでなくGoogle Workspace上の様々なリソース管理の自動化を行うことができます。
このように当社ではGoogle 関連のサービスを活用したアプリケーション開発を行い、Google Cloud をより便利にご利用いただけるようなお手伝いをしています。Google Cloud を利用する上でのお困りごとがあればお気軽にご相談下さい。