有馬総一郎のブログ

(彼氏の事情)

2021年02月20日 18:00:25 JST - 3 minute read - Comments - Google

GoogleのOAuth 2.0 クライアント IDを作成する

gcalcliでGoogleのOAuth 2.0 クライアント IDを作成する必要があったので、多少間違ってるだろうが、その手順をメモしておく。

ここでは、 Googleカレンダーのコマンドラインインターフェースをgcalcliを使ってみるためのOAuth 2.0 クライアント ID作成手順となる。

プロジェクト作成する

まず、ようこそ画面が表示されるので同意する。

GoogleのOAuth 2.0 クライアント ID作成

プロジェクト名 を入力して、プロジェクトを作成する。

GoogleのOAuth 2.0 クライアント ID作成

そして、作成したプロジェクトを選択する。

GoogleのOAuth 2.0 クライアント ID作成

Google Calendar APIを有効にする

有効化したいAPI、サービスを検索する。

GoogleのOAuth 2.0 クライアント ID作成

ここでは Google Calendar API を検索して、これを 有効にする

GoogleのOAuth 2.0 クライアント ID作成
GoogleのOAuth 2.0 クライアント ID作成

OAuth 同意画面

サイドメニューの認証情報をクリックして、 +認証情報を作成 をクリックする。

そして、 OAuth クライアント ID を選択する。

GoogleのOAuth 2.0 クライアント ID作成
GoogleのOAuth 2.0 クライアント ID作成

まず、 OAuth 同意画面を設定 を行う。

User Typeは GSuite ユーザーではないの内部にできないので 外部 を選択する

GoogleのOAuth 2.0 クライアント ID作成

個人で使うアプリだし、OAuth 2.0 クライアント IDが欲しいだけなので、必須項目である アプリ名 ユーザーサポートメール デベロッパーの連絡先情報 メールアドレス に、適当なアプリ名、自分のメールアドレスを登録。

GoogleのOAuth 2.0 クライアント ID作成

スコープ

よく分からないので、以下のように取り敢えず参照権限だけにしておく。ただ本来は gclacliは予定の追加なども行えるので、作成、変更、削除できるスコープが良いと思うが、結局はアプリの用途による。

GoogleのOAuth 1.0 クライアント ID作成
API 範囲 ユーザー向けの説明
Google Calendar API ../auth/calendar.readonly Googleカレンダーを使用してアクセスできるすべてのカレンダーの参照、ダウンロード
GoogleのOAuth 2.0 クライアント ID作成

テストユーザー

まさにログインしている自分自身のGoogleアカウント(メールアドレス)を登録する。

GoogleのOAuth 2.0 クライアント ID作成

でやっと OAuth同意画面の設定が終わる。

GoogleのOAuth 2.0 クライアント ID作成

まとめるとこうなる

OAuth同意画面
アプリ名 gclacli
サポートメール 自分のメールアドレス
アプリロゴ 指定されていません
[アプリケーションホームページ]リンク 指定されていません
[アプリケーションプライバシーポリシー]リンク 指定されていません
[アプリケーション利用規約]リンク 指定されていません
承認済みドメイン 指定されていません
連絡先メールアドレス 自分のメールアドレス
スコープ API Google Calendar API
スコープ 範囲 ../auth/calendar.readonly
テストユーザー ユーザー情報 自分のメールアドレス

OAuth 2.0 クライアント ID作成

再度、 +認証情報を作成 をクリック。

アプリケーションの種類 を聞かれるので、ここは デスクトップアプリ を選択(多分、何を選んでも認証情報には影響しないはず)

名前を聞かれるので、ここも適当に。今思えば、プロジェクトやアプリ名とは別名にしておけば良かったな。結局、プロジェクト、アプリ名、クライアントIDともに同じにしてしまった。

GoogleのOAuth 2.0 クライアント ID作成

クライアント ID、クライアント シークレットの表示

クライアント ID、クライアント シークレットの表示が表示される。あとでWeb上で確認できるし、json形式でもダウンロードできる。

GoogleのOAuth 2.0 クライアント ID作成