9

電子メール アドレスを匿名化することで購入者を保護したいサイトを開発しています。craigslist のシステムと同様に、販売者が購入者に連絡する必要がある場合、1425415125@mysite などの匿名化されたアドレスに電子メールを送信できる必要があります。 com であり、ユーザーの電子メール アドレスにルーティングされます。

私の今の計画は次のとおりです。

  1. バケット (キャッチオール) 受信トレイを設定する
  2. 電子メール アドレスのユーザー固有 (上記の「1425415125」) セクションとなる各購入者のランダム キーを生成します。
  3. バケットの受信トレイを監視し、このユーザー固有のセクションを解析します。ユーザーがわかれば、メールを正しいアドレスに転送できます

私の質問は次のとおりです。

  1. 上記の解決策に問題はありますか
  2. 既存の問題に対するオープンソースの解決策はありますか
  3. このようなシステムを開発する際に注意すべき点はありますか?

前もって感謝します

JP

4

6 に答える 6

6

まったく同じではありませんが、関連することをしました。既存の pop3 サーバーにキャッチオール受信トレイをセットアップしました (おそらく既にあると思います)。次に、OpenPop.NETを使用して、タイマー (たとえば 30 秒ごと) ですべての新しいメッセージを読み取りました。私の場合、messagse の処理だけにとどまりましたが、新しいメッセージを適切なアドレスに生成し、本文をコピーしてから、新しいメッセージを SMTP サーバーに送信するのは簡単です。

あなたの設定で私が見た問題の 1 つは、これは私の誤解かもしれませんが、ユーザーの元の電子メール アドレスを保護している間、基本的に永遠に 1425415125@mysite.com に到達できることです。craigslist の仕組みを理解していれば、投稿ごとに異なるメール アドレスが割り当てられており、投稿が削除/削除されると (またはその直後)、メール アドレスが機能しなくなります。これにより、他の人がそのメール アドレスを盗聴し続けることができなくなります。この問題の解決策は簡単です。メール アドレスを、データベース内のユーザー ID ではなく、投稿 ID またはその他の ID に対応させるだけです。ルックアップは同じくらい迅速ですが、毎回新しい電子メール アドレスが割り当てられます。

于 2011-07-15T13:42:12.627 に答える
1

このソリューションは理にかなっており、多くの場合に使用されていると思います。最も難しい部分は、実際にメッセージを受信することです。必要に応じて、Web アプリ内でこれらすべてを実際に処理できます。Web アプリでメールを受信するいくつかの方法を強調したブログ投稿を書きました。これは主に Rails に適用されますが、概念は移植可能でなければなりません。

于 2011-07-06T08:30:23.903 に答える
1

メールの「パイピング」を見たいと思うかもしれません - 誰かが電子メールをメールサーバーに送信し、実行可能ファイルにすぐにスローされ、受信者にメールを転送する機能 (サーバーから実際の電子メールアドレスを取得することによって)パイプされたメッセージからの着信アドレスに基づくデータベース)。

私の個人的な推奨事項は、COM API (管理側は PHP で記述されているため、従来の相互運用の要件) を備え、無料でオープンソースであり、十分に文書化されているHMailServerを確認することです。メール パイピングは組み込まれていませんが、API とサーバー側のメッセージ イベントで実行されるスクリプトのサポートにより、簡単に拡張できます。

HTH、

ベンジャミン

于 2011-07-05T16:01:06.157 に答える
0

セットアップに問題はありません。スケジュールされたアプリケーションが失敗した場合でも、電子メールはキャッチオール電子メールボックスに残っているため、これは正しい方法です。電子メールが誰かに正常に配信されたら、その電子メールを削除する必要があります。進行状況と障害を監視するために、独自のアプリケーションのアクティビティを監視およびログに記録することができます。

何らかの理由で配管が正常に実行されたが、exeがクラッシュした場合、電子メールが失われるため、配管はお勧めしません。追跡が困難になります。ジョブをスケジュールすることはできません。

アプリケーションがメールサーバーから独立している場合、それを管理し、可能な場合はいつでもメールサーバーを置き換えるのは簡単です。拡張は簡単です。

この場合、ポップリーダーライブラリを使用し、アプリケーションを頻繁に実行するようにスケジュールする必要があります。

于 2011-07-15T11:11:54.210 に答える
0

あなたがやろうとしている方法は、私が同様のサービスを作成した方法です。独自の smtp サーバーを作成することはお勧めしません。既存のメールサーバーを使用し、ポーリングまたはイベント ベースの API のみを使用します。

サードパーティのメールサーバーを使用する利点は、既存のバックアップおよび管理ツールを使用できることです。

編集:これがより良い説明で回答されていることに気付きました。受信メールを Windows IIS SMTP のスクリプトにパイプしますか?

于 2011-07-12T04:36:59.023 に答える
0

電子メールに加えて、メッセージ センターの Web フロントエンドや RSS フィードなど、プッシュ配信メカニズムではなくプル配信メカニズムを検討することもできます。これは、さまざまな ISP への配信可能性の問題のトラブルシューティングが非常に困難な場合があり、私の経験では、ユーザーはそれが自分の ISP であるとは決して信じないからです。

于 2011-07-16T02:15:46.847 に答える