【LYST】OAuth連携とは?Google Workspace・Microsoft 365の外部アプリ連携に潜むセキュリティリスクサムネイル画像

OAuth連携とは?Google Workspace・Microsoft 365の外部アプリ連携に潜むセキュリティリスク

【LYST】株式会社LYST

Google WorkspaceやMicrosoft 365などのクラウドサービスを利用していると、「Googleでログイン」「Microsoftアカウントでサインイン」といったボタンを目にすることがあります。

スケジュール管理ツールやオンライン会議、生成AI、ファイル共有、営業支援ツールなどを利用するときに、

 「Googleカレンダーへのアクセスを許可しますか?」
 「連絡先の読み取りを許可しますか?」
 「ファイルへのアクセスを許可しますか?」

といった画面が表示された経験がある方もいるのではないでしょうか。

こうした外部サービスとの連携で広く使われている仕組みの一つが「OAuth(オーオース)」です。

OAuthは非常に便利な仕組みですが、社員が内容をよく確認せずに「許可」を押してしまうと、外部アプリから会社のメール、ファイル、予定表などへアクセスできる状態になることがあります。

クラウドサービスを安全に利用するためには、パスワードや多要素認証(MFA)だけでなく、「どのアプリに、どの情報へのアクセスを許可しているか」を管理することも重要です。


(参考)CNAPPとは?クラウド利用が進む企業が知っておきたいセキュリティ対策


今回は、OAuthの基本的な仕組みと、Google WorkspaceやMicrosoft 365を利用する企業が注意したいポイントを、中小企業向けに分かりやすく解説します。

 

 OAuthとは? 

 

OAuthとは、簡単に言えば、あるサービスに保存されている情報や機能の一部を、別のアプリから利用できるようにするための仕組みです。

例えば、あるスケジュール管理サービスをGoogleカレンダーと連携するとします。

このとき、そのサービスにGoogleアカウントのパスワードそのものを教えるのではなく、

 「このアプリには、カレンダーを見ることだけ許可する」

といった形で、必要な権限を与えることができます。

GoogleのOAuth 2.0でも、利用者が許可した範囲(スコープ)に応じてアクセストークンが発行され、アプリがGoogleのサービスへアクセスする仕組みになっています。

このように、IDやパスワードを外部サービスへ直接渡さずに連携できることは、OAuthの大きなメリットです。

「認証」と「認可」は何が違う?


OAuthを理解するときに、少し分かりにくいのが「認証」と「認可」の違いです。

認証(Authentication)とは、「その人が本当に本人なのか」を確認することです。

例えば、ID・パスワードや指紋認証などを使ってシステムへログインし、「あなたが誰なのか」を確認することが認証にあたります。

一方、認可(Authorization)とは、本人であることを確認したうえで、「その人やアプリが何をしてよいのか」を決めることです。

例えば、

    • カレンダーを見ることを許可する
    • ファイルの読み取りを許可する
    • メールの送信を許可する

といったアクセス権限を与えることが認可にあたります。

OAuthは本来、このうち「認可」、つまり外部アプリなどにどの範囲までアクセスを許可するかを管理するための仕組みです。「ログイン(身元確認)」そのものを目的とした規格ではありません。

そのため、「Googleでログイン」「Microsoftアカウントでサインイン」と表示されていても、「OAuth=ログインの仕組み」と考えるのは正確ではありません。

実際のログイン機能では、OAuth 2.0を基盤として認証機能を加えた「OpenID Connect(OIDC)」という仕組みが利用されることがあります。

セキュリティ担当者でなければ、これらの技術的な違いを細かく覚える必要はありません。

企業として特に意識したいのは、

 「外部アプリとの連携を許可すると、そのアプリに会社の情報や機能へアクセスする権限を与える場合がある」

という点です。

oauth_02

 外部アプリには、どのような情報へのアクセスを許可している? 

 

OAuthを使ってアプリを連携するときには、「同意画面」や「アクセス許可画面」が表示されることがあります。

そこには例えば、

  ✅ 基本的なプロフィール情報を確認する
  ✅ メールアドレスを確認する
  ✅ カレンダーを表示する
  ✅ カレンダーを編集する
  ✅ メールを読む
  ✅ メールを送信する
  ✅ Google DriveやOneDriveのファイルを見る
  ✅ ファイルを作成・編集する

といった権限が表示されます。

重要なのは、すべてのOAuth連携が同じ権限を持つわけではないということです。

氏名やメールアドレスなど最低限のプロフィール情報だけを利用するアプリもあれば、メールやファイル、カレンダーなど、より重要な業務データへアクセスできるアプリもあります。

Microsoftも、アプリが組織のデータへアクセスするためには適切な権限を付与する必要があり、付与する権限によってアクセスできるデータや操作の範囲が異なると説明しています。

つまり、「Googleでログインしただけ」「Microsoftアカウントと連携しただけ」と思っていても、実際にはその際に複数のアクセス権限を与えていることがあります。

OAuthは非常に便利な仕組みである一方、仕組みやリスクを正しく理解せずに運用していると、社員の安易なアカウント連携によって社内の重要な情報が外部に漏えいする危険性も潜んでいるのです。

社員が外部サービスを利用するときには、「何に同意しているのか」まで確認することが大切です。

 

 OAuth連携にはどのようなリスクがある? 

 

OAuthそのものが危険な仕組みというわけではありません。

むしろ、パスワードを直接外部アプリへ渡さずに連携できる、広く使われている仕組みです。

問題になるのは、その仕組みを利用して、必要以上の権限を与えたり、悪意のあるアプリへアクセスを許可してしまったりすることです。

例えば、次のようなケースが考えられます。

❌ 必要以上の権限を許可している

本来はカレンダーとの連携だけで十分なサービスなのに、メールやファイルへのアクセスまで求められている、といったケースです。

アプリの機能に対して要求される権限が広すぎる場合には、本当に必要な権限なのか確認する必要があります。

新しい無料ツールや便利プラグインを試す際、画面に「〇〇(ツール名)があなたのGoogleアカウントへのアクセスを求めています」という確認画面が表示されます。

ここで内容を読まずに「許可」「同意」を連打してしまう社員が多く存在します。

もしそのツールが「すべてのメールの読み取り」「Googleドライブ上のファイルの削除」といった過剰な権限を要求していた場合、そのツールに社内の機密情報や顧客データがすべて筒抜けになってしまうリスクがあります。

 

❌ 使わなくなったアプリの連携が残っている

一度試したサービスや、すでに利用を終了したクラウドサービスとの連携が、そのまま残っている場合もあります。

アプリそのものを使わなくなっていても、アクセス権限が残っていれば、管理上のリスクになります。

 

❌ 社員が会社の許可なく外部サービスを連携する

便利そうな生成AIや無料ツールを見つけ、社員が会社のGoogleアカウントやMicrosoftアカウントでそのまま登録することも考えられます。

(参考)生成AIを業務で使っても大丈夫?無料AI・有料AI・個人アカウント利用のリスクと安全な使い方

会社側が把握していないクラウドサービスの利用、いわゆる「シャドーIT」の問題にもつながります。

情報システム部門や経営陣の許可を得ずに、現場の社員が個人判断で業務用アカウント(Google WorkspaceやMicrosoft 365)とサードパーティアプリを連携させてしまう現象を「シャドーOAuth」と呼びます。

従来の「許可されていないソフトのインストール(シャドーIT)」と異なり、OAuth連携はブラウザ上の数クリックで完了してしまうため、システム管理者が把握しにくいのが特徴です。放置された連携アプリがハッキングされたり、開発元が買収されて悪質な企業に渡ったりした場合、自社データが二次被害に遭う恐れがあります。

oauth_03


そして、もう一つ注意したいのが、次章の悪意のあるアプリに権限を与えさせる攻撃です。

 

 パスワードを盗まない「同意フィッシング」に注意 

 

OAuthを悪用した代表的な攻撃の一つが、「同意フィッシング(Consent Phishing)」です。

通常のフィッシングというと、偽のログイン画面を表示してIDやパスワードを盗む攻撃をイメージするかもしれません。

同意フィッシングでは、攻撃者が用意した悪意のあるアプリに対して、利用者自身にアクセス権限を許可させます。

例えば、メールなどでリンクを送り、

 「このサービスを利用するため、Microsoftアカウントでサインインしてください」

などと誘導します。

利用者がリンクを開くと、本物のMicrosoftなどが表示するアクセス許可画面へ移動する場合があります。

そこで内容をよく確認せず「承諾」「許可」を押してしまうと、悪意のあるアプリにメール、ファイル、連絡先などへのアクセス権限を与えてしまう可能性があります。

Microsoftも、悪意のあるクラウドアプリに利用者が権限を与えてしまう「consent phishing」について注意を呼びかけています。


この攻撃の注意点は、必ずしもパスワードそのものを盗む必要がないことです。

そのため、「MFAを設定しているから大丈夫」「パスワードを変更すれば大丈夫」とは限りません。

Microsoftも、不正なアプリへの同意によって付与されたアクセスについては、通常のパスワード変更やMFAだけでは十分な対処にならない場合があると説明しています。

つまり、クラウド時代のセキュリティでは、

 「誰がログインしたか」だけでなく、「どのアプリに何を許可したか」

を見る必要があるのです。

oauth_04

 Google Workspace・Microsoft 365では管理者が確認できる 

 

会社でGoogle WorkspaceやMicrosoft 365を利用している場合、外部アプリとの連携を社員任せにする必要はありません。

管理者側で、一定の管理や制限を行うことができます。

Google Workspaceでは、管理コンソールから、組織のGoogleデータへアクセスしている第三者アプリや、そのアプリが要求しているOAuthの権限などを確認できます。

アプリを「信頼する」「制限する」「特定のGoogleデータだけ許可する」「ブロックする」といった管理も可能です。

Microsoft Entra IDでは、ユーザーがアプリに同意できる範囲を制限したり、ユーザー自身では同意できないアプリについて管理者へ承認を申請する仕組みを設定したりすることができます。

Microsoftは、悪意のあるアプリによるリスクを軽減するため、検証済みの発行元のアプリにユーザーの同意を制限することを推奨しています。また、設定によっては、検証済みの発行元のアプリなどについて、あらかじめ選択した低リスクの権限に限ってユーザーによる同意を許可することもできます。

企業として重要なのは、すべての外部アプリを禁止することではありません。

業務に便利なクラウドサービスまで使えなくしてしまえば、生産性を下げることにもなります。

必要なのは、

 「会社として利用してよいアプリを把握し、必要な範囲だけ権限を与える」

という管理です。


(参考)アカウント管理とは?退職者ID・共用ID・管理者権限を放置するリスク

 

 中小企業が確認したいOAuth連携の7つのポイント 

 

OAuth連携を安全に利用するため、まずは次のような点を確認するとよいでしょう。

1.    現在利用している外部アプリを把握する
 Google WorkspaceやMicrosoft 365と、どのサービスが連携されているか確認します。
2.    使っていないアプリの連携を解除する
 過去に試しただけのサービスや、退職者が利用していたサービスなどが残っていないか確認します。
3.    アプリに与えている権限を確認する
 メール、ファイル、カレンダー、連絡先など、何へのアクセスが許可されているかを確認します。
4.    必要以上の権限を求めるアプリに注意する
 アプリの目的と関係のない権限まで要求していないか確認します。Microsoftも、アプリの機能と要求される権限が合っているか確認することを推奨しています。
5.    社員が自由に外部アプリを連携できる状態を見直す

 必要に応じて管理者承認制にするなど、会社としてのルールを決めます。

(例1)サードパーティアプリの事前承認制:管理者が許可(ホワイトリスト化)した信頼できるアプリのみ連携を許可し、未承認のアプリ連携はブロックする。

(例2)高リスクな権限の制限:「すべてのメール・ファイルへのアクセス権限」を要求するアプリの連携を管理者の承認必須にする。

6.    定期的に棚卸しする
 一度確認して終わりではなく、半年に1回、年に1回など、定期的に連携アプリと権限を見直します。
7.    不審な連携が見つかった場合の対応を決めておく
 アプリの権限やトークンを取り消し、関連するログや利用状況を確認できるようにしておきます。必要に応じて、アカウント侵害の有無も調査します。

特に中小企業では、専任のセキュリティ担当者を置くことが難しい場合があります。

だからこそ、まずは「どの外部サービスを使っているのか」「どんな権限を与えているのか」を一覧で把握することが重要です。

OAuth_05

(参考)アカウント管理とは?退職者ID・共用ID・管理者権限を放置するリスク

 

 クラウドのセキュリティは「アカウント」だけでなく「連携」まで見る 

 

Google WorkspaceやMicrosoft 365などのクラウドサービスでは、MFA、パスワード、管理者権限、退職者アカウントなどの管理が重要です。

しかし、クラウド利用が増えるにつれて、それだけでは十分とはいえなくなっています。

自社のアカウントが安全でも、そのアカウントから多数の外部アプリへアクセス権限を与えていれば、そこにも新たなリスクが生まれます。

OAuthは、クラウドサービス同士を便利につなぐための重要な仕組みです。

大切なのはOAuthを使わないことではなく、

 「誰が、どのアプリに、何の権限を与えているかを会社として把握し、必要な権限だけを許可すること」

です。

まずはGoogle WorkspaceやMicrosoft 365の管理画面で、現在どの外部アプリが接続されているか確認してみるところから始めてみてはいかがでしょうか。

クラウドを「利用する」だけでなく、その接続先や権限まで継続して管理することが、これからのクラウドセキュリティでは重要になります。

 

(参考)クラウドグループウェアのセキュリティ設定とは?中小企業が確認したい10のポイント
(参考)CNAPPとは?クラウド利用が進む企業が知っておきたいセキュリティ対策

 


 

自社のセキュリティ環境に不安のある企業様は、是非一度お気軽にLYSTにお問合せください。

 

 

執筆者:【LYST】株式会社LYST

一覧ページへ戻る

CONTACT

その経営課題、動かすところからご一緒します。

新規事業、組織・人材、DX、サイバーセキュリティ、BCPなど、
LYSTは、企業のさまざまな経営課題に寄り添い、
具体的な一歩につなげるご支援をしています。



課題が明確な場合も、まだ整理できていない場合も、
まずはお気軽にお聞かせください。