Symfony 2アプリケーションからGoogleのサービス(Google Analyticsなど)にアクセスする必要があったため、Google apiクライアント(バージョン2)を使用する必要がありました。 Googleアナリティクスの情報にアクセスする前に、Google APIコンソールでAPIキー、クライアントID、サービスアカウントのいずれかを作成する必要がありました。api keyとclient idとservice accountの違いは何ですか?
最後に、サービスアカウントを作成し、ファイルをダウンロードしました。このファイルは、Googleアナリティクスアカウントとそれぞれの収集された情報へのアクセスを許可するためにGoogle APIクライアントによって使用されます。
私の質問は以下のとおりです。
APIキー、クライアントIDとサービスアカウントの違いは何ですか?
もう一方を作成/使用する理由とその理由は何ですか?
私はこの質問で何を求めているのかを説明する徹底的な記事は見ていません。