プログラミング

Google OAuth認証を使ってみよう【Google Calendar 連携設定編】

Google OAuth認証を使ってみよう【設定編】

 

Webサービス、アプリを作成する中で

Google Calendar、Gmail といったGoogleアプリと連携を

する機会が以前にも増しより多くなってきています。

 

そんなGoogleアプリと連携する時に使用するのが

Google OAuth認証です!

  • Google OAuth認証とは?
  • 利用するにはどんな作業が必要なの?

今回はそんな2つの疑問を解決していきます。




 

Google OAuth認証とは?

 

Google OAuth認証とは

Googleアカウントに登録されている情報を

開発したWebサービス、アプリ内で

①取得

②追加

③更新

④削除

をできるようにする認証方法のことです。

 

Google OAuth認証を利用するには?

 

Google OAuth認証を利用するには

下記の3つの情報を取得する必要があります。

  • リフレッシュトークン
  • クライアントID
  • クライアントシークレット

これら3つの情報をもとにしてGoogleアプリへ書き込みにいく際に必要な

アクセストークン』を取得します。

 

認証設定、情報を取得してみよう!

 

では、実際にGoogle OAuth認証に必要な認証設定、情報の取得をしてみましょう!

 

作業の流れ 〜クライアントシークレットを取得するまで〜

クライアントシークレットを取得するまでの作業を3つに分けて見ていきます。

  1. Google API Console より『クライアントID』と『クライアントシークレット』を取得しよう。
  2. Google OAuth URLより『コード』を取得しよう。
  3. Google Token URLより『リフレッシュトークン』を取得しよう。

 

設定手順①:Google API Console より『クライアントID』と『クライアントシークレット』を取得しよう

 

Google API Console APIへアクセスしよう

 

まずは、Google API Console へアクセスします。

下記のリンクから飛び、アクセスしてみましょう。

 


Google OAuth認証を使ってみよう【設定編】

 

リンク先へ遷移すると、上記の画面が表示されます。

 

Google Project を作成しよう

 

Google OAuth認証を使ってみよう【設定編】

 

サイドバーより「OAuth同意画面」を選択し、「プロジェクトを作成

をクリックします。

 

Google OAuth認証を使ってみよう【設定編】

 

任意の「プロジェクト名」を入力し、「作成」ボタンを押します。

 

User Type を設定しよう

 

Google OAuth認証を使ってみよう【設定編】

 

Google Project の「プロジェクト名」を作成すると、「User Type」の設定を求められます。

「G suite」ユーザーは『内部』を、それ以外の場合は『外部』を選択し「作成」ボタンを押しましょう。

 

アプリケーション名設定をしよう

 

Google OAuth認証を使ってみよう【設定編】

 

User Type」を設定後にはアプリケーション設定をします。

最小限の設定として「アプリケーション名」を入力後、「保存」ボタンを押しましょう。

 

認証情報を設定しよう

 

Google OAuth認証を使ってみよう【設定編】

 

サイドバーより「認証情報」を選択し、「認証情報を作成」の「OAuth クライアントID」をクリックします。

 

OAuth クライアントIDの作成をしよう

 

Google OAuth認証を使ってみよう【設定編】

 

利用する「アプリケーションの種類」を選択しましょう。

 

Google OAuth認証を使ってみよう【設定編】

 

アプリケーションの種類」を選択後、「名前」と「承認済みのリダイレクトURI」を入力し「作成」ボタンを押します。

 

Google OAuth認証を使ってみよう【設定編】

 

クライアントID」と「クライアント シークレット」を取得できましたね。

上記2つの情報は、管理画面からいつでも確認可能ですので発行時にメモなどは不要となります。

 

設定手順②:Google OAuth URLより『コード』を取得しよう

 

次に、以下のGoogle OAuth URLへここまでで取得、設定した「クライアントID」、「リダイレクトURI」と「スコープ

を書き換え、ブラウザ上で叩くことで『コード』を取得します。

 

『Google OAuth URL』を作成しよう

 

https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=『クライアントID』&redirect_uri=『リダイレクトURI』&scope=『スコープ』&access_type=offline&approval_prompt=force

 

『スコープ』とは、どのGoogle APIのアクセスを許可するかを識別するものになります。

以下の表を参考にGoogle OAuth URLを作成してみてください。

 

内容 scope
プロフィール情報 profile
メールアドレス email
Calendar API https://www.googleapis.com/auth/calendar
Gmail API https://mail.google.com/
YouTube Data API https://www.googleapis.com/auth/youtube

 

上記以外のAPIを利用する際には下記のリンク先『Google Identity Platform』より探して見てくださいね。

また、複数のスコープを利用したい際には %20 で結合してください。

 

 

コード』を取得しよう

 

作成したGoogle OAuth URL 先へブラウザ上で遷移してください。

 

Google OAuth認証を使ってみよう【設定編】

Google OAuth認証を使ってみよう【設定編】

 

そうすると許可リクエスト画面が表示されますので「許可」を選択します。

Google OAuth認証を使ってみよう【設定編】

 

リダイレクトし、codeというパラメータが発行されます。

これが今回取得する『コード』になります。

メモしておきましょう。

 

設定手順③:Google Token URLより『リフレッシュトークン』を取得しよう

 

「Postman」をダウンロードしよう

『リフレッシュトークン』を取得するために「Postman」というツールを使用します。

以下のリンクより「Postman」をダウンロードしましょう。

 

 

「リフレッシュトークン」を取得しよう

 

Google OAuth認証を使ってみよう【設定編】

上キャプチャのように

送信方法:POST

送信先URL:https://www.googleapis.com/oauth2/v4/token

とします。

 

Headers

Content-Typeapplication/x-www-form-urlencoded

とします。

 

Google OAuth認証を使ってみよう【設定編】

 

Body

codeコード
client_idクライアントID
client_secretクライアントシークレット
redirect_uriリダイレクトURI
grant_typeauthorization_code
access_typeoffline

とします。

 

入力後、『Send』を押し入力情報が正しければ下記の結果が返ってきます。

{
"access_token": トークン,
"token_type": "Bearer",
"expires_in": 3600,
"refresh_token": リフレッシュトークン
}

 

以上で、『リフレッシュトークン』を取得できましたね。

ここまで、設定お疲れ様でした。

 

最後に

 

Google OAuth認証に必要な『クライアントID』、『クライアントシークレット』、『リフレッシュトークン

を取得できました。

 

まとめとして

  • Google OAuth認証とは、Googleアカウントに登録されている情報を、開発したWebサービス、アプリ内で①取得②追加③更新④削除をできるようにする認証方法!
  • Google OAuth認証には『クライアントID』、『クライアントシークレット』、『リフレッシュトークン』が必要!

と言えますね。

最後まで読んでいただきありがとうございました。




-プログラミング
-