2

Pythonをコーディングしています-GoogleAppEngineアプリケーション。このアプリがしなければならない2つの重要なことがあります:

  • ユーザーのカレンダーに書き込みます。
  • ユーザーのプロファイルを書き込む(Google Appsドメインのユーザーと連携する)

最初の操作は簡単です。OAuthを理解した場合、これは古典的な3本足のシナリオです。OAuthが最初に開発されたシナリオ。ログに記録されたユーザーは、クライアント(マイアプリ)に資格情報を提供して、ユーザーに代わってユーザーのデータ(カレンダー)にアクセスします。したがって、これは、ログに記録されたユーザーの資格情報だけで実行できます。

2番目の操作はそれほど簡単ではありません。ログに記録されたユーザーの資格情報だけでは実行できません。これは2本足のOAuthシナリオです。そのため、Google Profiles APIを使用して(Googleデータライブラリを介して)ユーザーのプロファイルにアクセスするには、GoogleAppsドメイン管理者のアカウントを委任する必要があります。これまでのところ、管理者ユーザー/パスワードをjsonファイルにハードコーディングし、アプリがそのファイルをロードします。しかし、それは私にはちょっと汚いように聞こえます。

最後に、私のアプリは、従来の3本足のOAuthシナリオ(問題ありません。ログに記録されたユーザーのクレデンシャルが必要です)と2本足のOAuthシナリオ(管理者のクレデンシャルが必要)を処理する必要があります。

管理者の資格情報をハードコーディングする、Google Appsドメインと連携して、Google App Engineで両方のシナリオを処理するための公式またはより洗練された方法はありますか?

よろしくお願いします

4

1 に答える 1

2

私の知る限り、2-legged OAuth を使用して Google Contacts Data API への書き込み操作を承認する方法はありません。

Google のドキュメントでは、2-legged OAuth を介してアクセスできる API を指定していますが、Google の誰かが、それらの一部が読み取り専用であることを指定するのを忘れているようです:-S

一部の人々は、ここここで同じ問題を抱えていました。

Google の誰かがこれを修正してくれることを楽しみにしています。それまでは、管理者レベルの認証情報をハーコーディングすることが、私が知っている唯一のオプションです。私はそれがまったく好きではありません:それは汚いですが効果的です. 誰かがよりエレガントな禅レベルの方法を知っている場合は、私たちを照らしてください!

于 2012-12-27T18:45:47.873 に答える