最近、Google は、Gmail IMAP/SMTP の OAUth をサポートしていると発表しました。複数のドキュメントを閲覧しましたが、インストールされたアプリケーションの OAuth をサポートしているかどうかについてまだ混乱しています。
1.このドキュメントでは、次のように述べています。
注: OAuth プロトコルはデスクトップ/インストール済みアプリケーションのユース ケースをサポートしていますが、Google はウェブ アプリケーションの OAuth のみをサポートしています。
ただし、インストール済みアプリケーションの OAuth に関するドキュメントもあります。
2.彼らが指摘するOAuth 仕様を読むと、次のように書かれています (セクション 11.7):
多くのアプリケーションでは、コンシューマ アプリケーションは潜在的に信頼できない関係者の制御下にあります。たとえば、消費者が自由に利用できるデスクトップ アプリケーションである場合、攻撃者は分析のためにコピーをダウンロードできる可能性があります。このような場合、攻撃者は、サービス プロバイダに対してコンシューマを認証するために使用されるコンシューマ シークレットを復元できます。
また、上記のポイント 1 の免責事項はGoogle Data APIに関するものであり、IMAP/SMTP はそれらの一部ではありません。
インストールされたアプリケーションの場合、次のような設定ができることを理解しています:
私のアプリケーション用に、たとえば example.com に小さな Web アプリを用意します。この Web アプリは Google と対話し、アクセス トークンを取得します。
インストールされたアプリケーションは、アクセス トークンを取得するためだけに example.com と通信します。
インストールされたアプリケーションは、アクセス トークンを使用して Google と通信します。
私は今混乱しています。これが唯一の方法ですか?また、デスクトップ アプリケーションから OAuth を実行する場合、コンシューマー シークレット キーをアプリと一緒に出荷する必要があります。その場合、コンシューマ キーの機密性を維持できません。