自社の OAuth アプリで Google Workspace に接続する

自社の Google Cloud プロジェクトにアプリを登録し、Offision が届く範囲を選んで資格情報を 渡します。第三者のアプリを認められないセキュリティポリシー向けです。

更新日 2026年8月17日

ほとんどの組織は クイック接続 を使うべき です。Offision 自身の Google アプリケーションを使うため、資格情報は一切必要ありません。

この方法は、それが認められない場合——セキュリティポリシー上、アプリケーションを自社の Google Cloud プロジェクトに置き、シークレットを自分で管理・失効できる必要がある場合—— または既定より狭いモードを使いたい場合に選びます。

用意するもの

  • Google Cloud プロジェクト(または作成できる権限)
  • Google Workspace の お客様 ID(Google 管理コンソールの アカウントアカウント設定
  • リダイレクト URI を OAuth クライアントに貼り戻せる環境
  • 30 分ほど

1. Google Cloud プロジェクトを準備する

先にこちら側を済ませてください。Offision はこの内容を検証できないため、後から行うと 何度も行き来することになります。

  1. Google Cloud コンソールでプロジェクトを作成します。名前は自社の管理用で、Offision は 使用しません。
  2. API とサービスGoogle Calendar API を有効にします。
  3. OAuth 同意画面 を作成します。種類は 外部 で、スコープに userinfo.emailuserinfo.profileopenid、Calendar を追加します。
  4. 認証情報 で、種類が ウェブ アプリケーションOAuth クライアント ID を 作成します。クライアント IDクライアント シークレット をコピーします。 シークレットはこの時点でコピーしておくのが確実です。

Offision が Google に要求するスコープは次のとおりです。

スコープOffision での用途
https://www.googleapis.com/auth/calendar.readonly会議室とユーザーのカレンダーの参照
https://www.googleapis.com/auth/calendar.events予約の作成と変更
openidprofileemailサインイン

2. リダイレクト URI を追加する

OAuth クライアントの 承認済みのリダイレクト URI に、自社の構成に必要なものを追加 します。{server} は Offision のアドレスです。

リダイレクト URI用途
{server}/api/google-api/oauth/callback委任アカウントと予約エージェントアカウント
{server}/signin-google/{tenantId}/{scheme}シングルサインオン
{server}/api/google-api/oauth/meet-callbackGoogle Meet のリンク

Offision がコピーすべき値をそのまま表示するので、自分で組み立てる必要はありません。 リダイレクト URI の不足は後になって表面化し、しかもパスワードが拒否されたように見える ため、独立した手順にしています。

3. モードを選ぶ

Google Workspace のタイルを開き、Google Workspace に接続 を選び、区切り線の下の カスタム設定 を選びます。

システム連携を開く

最初の手順はモードの選択です。ボタンの下の 機能 に選択中のモードでできることが表示 され、必要な権限 にそのモードが要求するスコープが並びます——詳細を表示 を押すと 展開されます。

モード会議室のカレンダーユーザーのカレンダーシングルサインオン
完全モードはいはいはい
標準モードはいはいはい
リソース カレンダー モードはいいいえいいえ
モードの選択画面。機能の一覧と、そのモードが要求する権限が表示されます。

モードの選択画面。機能の一覧と、そのモードが要求する権限が表示されます。

リソース カレンダー モード は個人のカレンダーに一切触れません。このモードでは シングルサインオンは無効なのではなく、そもそも利用できません。社員のカレンダーへの アクセスがセキュリティ審査を通らない場合に選び、その後サインインの設定項目が表示され ないことを前提にしてください。

4. 資格情報を入力する

次へ を押し、3 つの項目を入力します。

項目取得元
Google お客様 IDGoogle 管理コンソール → アカウント → アカウント設定
Google クライアント ID手順 1 で作成した OAuth クライアント
Google クライアント シークレットそのクライアントの シークレット(ID ではありません)
資格情報の入力画面。お客様 ID、クライアント ID、クライアント シークレット。

資格情報の入力画面。お客様 ID、クライアント ID、クライアント シークレット。

5. 双方向で動作を確認する

委任アカウントと会議室を 1 つ接続し—— Google Workspace の会議室を接続する を参照——両方向で確認します。

  • Offision で会議室を予約し、Google カレンダーに表示されることを確認する
  • 同じ会議室を Google カレンダーで予約し、Offision に表示されることを確認する

そのうえで サインインGoogle Meet のリンク を設定してください。

うまくいかないとき

症状よくある原因
接続 はできたが、その後 Google のウィンドウで拒否されるクライアント ID かシークレットが誤っています。接続時には検証されません
リダイレクト URI が一致しないと Google に表示されるOAuth クライアントに未登録か、末尾のスラッシュが異なります
アクセスがブロックされる、未確認のアプリと表示されるOAuth 同意画面が未完成か、スコープが追加されていません
Google のウィンドウが開かないブラウザーがポップアップをブロックしています
サインインがログインページに戻ってしまうサインイン用のリダイレクト URI が OAuth クライアントにありません
接続後にサインインの設定項目がないリソース カレンダー モードを選択したためです。このモードにサインイン権限はありません
しばらくして動かなくなったOAuth クライアントのシークレットが更新されたか、同意画面がリセットされました
ユーザーがまったく同期されない正常です。Google のユーザー同期は利用できません。通常の方法で追加してください