3

Google App Engine の Python SDK でメールベースのアプリケーションを作成しようとしています。Googleでは API を介してメールを受信できるようにしており、From、To、Body などの標準フィールドに簡単にアクセスできることに気付きました。それが誰から来たと言ったか (Posterous があなたのためにそれを行うような方法で)、どうすればいいですか? 私はどの電子メール ヘッダーにもアクセスできないので、送信側サーバーの IP アドレスの MX レコードやそのような凝ったものを確認することはできません。

何か案は?

4

5 に答える 5

2

実際、十分に文書化されていませんが、ここのソースは、取得する便利なオブジェクトの元となる元の MIME メッセージが、便利なオブジェクトのプロパティとして利用できることを示唆しています。これはemail.message.Message.originalのインスタンスです。そこからメールヘッダーを取得できます。ただし、検証の探求をさらに進めるかどうかはわかりません。

于 2009-12-03T16:18:28.607 に答える
1

アレックスはヘッダーにアクセスすることについては正しいですが、これでは電子メールの実際の送信者を確認することはできません。誰でも希望する「送信元」アドレスを使用して電子メールを送信できるため、信頼できる証拠として送信元アドレスに依存しないでください。誰が送ったか。

于 2009-12-04T14:42:23.467 に答える
1

PGP または S/MIME で署名しない限り、電子メールは通常、検証可能な媒体ではありません。ヘッダーがない場合、確認するものは何もありません。

あなたができる唯一のことは、アドレスを電子メールで送信し、その人が本当にメッセージを送信したかどうかを確認することです. これは、詐欺的な電子メールの送信者が偽造するのがはるかに困難です (ただし、不可能ではありません)。

または、すべてのメッセージにパスワードを入力するようにユーザーに依頼することもできます。

于 2009-12-03T16:05:44.577 に答える
0

これが登録プロセスなどの一部である場合は、「チャレンジ」(たとえば、登録を継続するための URL など、一意の期限付きキーを使用) を (おそらく) 発信者に送り返してみませんか? これにより、メールアドレスが偽造されていないかどうかを確認できます。

「大物」(Google など) はこのプロセスを頻繁に使用しますが、それには理由があるはずです。

ユースケースに合わない場合は、私の提案を無視してください。


更新: GAE アプリケーションに到達する前に、電子メールを別の Web サービス (未定) を通過させることができますか? このようにして、別の場所で行われる電子メール検証などの処理オーバーヘッドの低いジョブを使用しながら、GAE を引き続き活用できますか?

于 2009-12-03T16:01:36.737 に答える