wiki:TipAndDoc/service/Google/OAuth

Version 4 (modified by mitty, 7 years ago) (diff)

--

setup project

  • https://console.developers.google.com/ からプロジェクトを作成し、必要なAPIを有効にしたうえでOAuthのクライアントIDとクライアントシークレットを作成する
  • 自分で作成したプロジェクトのクライアントIDを用いることで、APIの発行状況やエラー発生件数などがダッシュボードから確認できるようになる
  1. 初めてダッシュボードにアクセスした際には、利用規約への同意が求められる
  2. プロジェクトの新規作成
  3. 使用するAPIの有効化
  4. 認証情報の作成
  5. OAuth認証時の同意画面に表示する情報の設定
    • サービス名は「My OCAMLDrive」としている
  6. アプリケーションの種類は「その他」とする
  7. クライアントIDが生成され、表示もしくはjson形式でダウンロードできるようになる
    {"installed":{"client_id":"732618592028-28no107k9v98trf6meb8eegdpvjlr53o.apps.googleusercontent.com",
    "project_id":"fabled-frame-162115",
    "auth_uri":"https://accounts.google.com/o/oauth2/auth",
    "token_uri":"https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs",
    "client_secret":"ndaIX_3FQqHssFDwUAwOZdpi",
    "redirect_uris":["urn:ietf:wg:oauth:2.0:oob",
    "http://localhost"]}}
    
  8. このクライアントIDとシークレットを用いて認証要求を行うと、以下のように表示される

aur:google-drive-ocamlfuse

  1. デフォルトでは作者 alessandro.strada@gmail.com が用意したクライアントIDが用いられる
  2. 認証画面
  3. 「アカウントにアクセスできるアプリ」から確認できる

aur:gdrivefs

  • 作者が用意したクレデンシャルが埋め込まれており、コード書き換え以外に変更する手段が存在しない
  • gdrivefs 0.14.8-2に対するパッチ
    • PKGBUILD.diff
      • PKGBUILD

        diff --git a/PKGBUILD b/PKGBUILD
        index dec95ef..2af649c 100644
        a b build() { 
        2828  # Fix for oauth2client.util library 
        2929  patch -p1 < ../../issue_166.patch 
        3030 
         31  # change api_credentials 
         32  patch -p1 < ../../cred.patch 
         33 
        3134  python2 setup.py build 
        3235} 
        3336 
    • cred.patch
      • gdrivefs/conf.py

        diff --git a/gdrivefs/conf.py b/gdrivefs/conf.py
        index 5310a3d..1496df3 100644
        a b class Conf(object): 
        1111    """Manages options.""" 
        1212 
        1313    api_credentials = { 
        14         "web": { "client_id": "1056816309698.apps.googleusercontent.com", 
        15                  "client_secret": "R7FJFlbtWXgUoG3ZjIAWUAzv", 
         14        "web": { "client_id": "564155291697-r72paq515fukt1uoc0bjofjl9fvsoerb.apps.googleusercontent.com", 
         15                 "client_secret": "WVcC9DJTJzLdbjByhMJmwA68", 
        1616                 "redirect_uris": [], 
        1717                 "auth_uri": "https://accounts.google.com/o/oauth2/auth", 
        1818                 "token_uri": "https://accounts.google.com/o/oauth2/token" 

Attachments (18)

Download all attachments as: .zip