2016-06-21 4 views
3

ユーザーの操作を許可せずに特定のユーザーの電子メールを読み取ろうとしているいくつかのアプリケーションでは、いくつかのジレンマがあります。このアプローチの鍵は、ユーザーとのやりとりが不要で、Googleデベロッパーコンソールからダウンロードした適切なJSON資格情報をクライアントサーバーアプリケーションに読み込むことです。Gmail APIアクセスドメインワイドデリゲーションなしのシングルユーザー

デベロッパーコンソールでサービスアカウントを作成し、適切なスコープアクセス権を持つアカウントにドメイン全体の権限を委任するプログラムでは、このアプローチが有効です。しかし、私たちが望んでいるのは、ドメイン全体の権限を委任する必要はなく、この開発者コンソールプロジェクトを作成したユーザーの電子メールを読むだけです。私はこれに対して多くの異なるタイプのソリューションを試しましたが、常にドメインの広範なアクセスを許可する必要がある同じ制限があります。

私は、サーバーからサーバーへのアプローチを使用して単一のユーザーのメールボックスにアクセスする方法があり、ドメイン全体のアクセスを許可する必要がないと考えていますか?

この問題はありがとうございます。

答えて

0

サポートしている権限フローはありません。ドメイン全体の権限が委任されているサービスアカウントを使用するか、ユーザーの同意が必要な3LOのフローを使用する必要があります。

+0

ありがとうございます。それは私が思ったことですが、私は何かを見落とさないようにしたいと思っていました。ありがとうございました。 –

+0

@Jamesconnorこの問題の最新情報はありましたか? – omittones

-1

OAuth for Server to Server Applicationを探しているようです。また、サービスアカウントを使用します。しかし、サービスアカウントのドメイン全体の権限を付与することはオプションです。あなたがしたくない場合は、有効にする必要はありません。

サーバー間のやりとりをサポートするには、まずDevelopers Consoleで プロジェクトのアカウントを作成します。 にGoogle Appsドメインのユーザーのユーザーデータにアクセスする場合は、 サービスアカウントにドメイン全体のアクセスを委任します。

サービスアカウントの資格情報を使用して OAuth 2.0認証サーバーからアクセストークンをリクエストすることで、アプリケーションは許可API呼び出しを準備します。

最後に、アプリケーションでアクセストークンを使用してGoogle APIを呼び出すことができます。

関連する問題