Google Workspace における 3-legged OAuth

アプリケーションごとに行われる初回設定
1. ユーザーがウェブ アプリケーションへのアクセスをリクエストします。
2. アプリケーションへのアクセス権を付与するよう求める Google のページに、ウェブ アプリケーションがユーザーをリダイレクトします。
3. ウェブ アプリケーションに Google Workspace データ(連絡先や Google カレンダーの予定など)へのアクセス権を付与することを、ユーザーが Google に伝えます。
4. Google がウェブ アプリケーションに認証コードを送信します。
5. ウェブアプリが認証コードとクライアント認証情報を Google に送信し、新しいトークンを受け取ります。
6. 発行されたトークンによりこのウェブアプリがアクセス権を持つことを Google が記録します。管理者またはユーザーは、後でこのトークンを取り消すことができます。また、ユーザーのパスワードが変更されると、このトークンは自動的に取り消されます。

進行中
ユーザー: OAuth では、ユーザーからの追加情報は必要ありません。
注: ユーザーまたは管理者は、ウェブアプリの承認をいつでも取り消すことができます。
7. ウェブ アプリケーションがユーザーのデータへのアクセスをリクエストし、認証手段としてトークンを提示します。トークンの有効期限が切れている場合、ウェブアプリは Google にトークンの更新をリクエストします。
8. Google がトークンの信頼性を確認します。確認が終わると Google がデータを返します。

2-legged OAuth

初回設定
1. 管理者がウェブ アプリケーションをインストールし、2-legged OAth アクセス権を付与します。これにより、連絡先や Google カレンダーの予定など、ウェブアプリがドメインでアクセスできるユーザーデータのスコープを定義します。
2. ウェブ アプリケーションが Google で認証され、Google によってアクセス トークンが発行されます。

使用時(アプリケーションが Google Workspace データにアクセスする必要が生じるたび)
3. ウェブアプリが Google に認証トークンを送信し、連絡先や Google カレンダーの予定といったユーザーデータをリクエストします。
4. Google は、リクエストされたユーザーのデータに対してアプリケーションがアクセス権を付与されているかどうかを確認します。アプリケーションがアクセス権が付与されている場合、Google はリクエストされた更新を行い、リクエストされたデータを返します。