كيفية التحقق من مرسل عنوان البريد الإلكتروني الوارد في محرك تطبيق Google؟

StackOverflow https://stackoverflow.com/questions/1840858

سؤال

أحاول كتابة طلب قائم على البريد الإلكتروني بشدة في Python SDK لمحرك تطبيقات Google. لقد لاحظت أن جوجل يسمح لك بتلقي البريد الإلكتروني عبر API, ، وأنه يتيح لك بسهولة الوصول إلى الحقول القياسية مثل من، إلى، الجسم، إلخ. ومع ذلك، إذا كنت أحاول التحقق من أن عنوان بريد إلكتروني جاء من من قال إنه جاء من (نوع في الطريق إلى هذا الموضوع هل من أجلك)، كيف يمكنني؟ لا يمكنني الوصول إلى أي من رؤوس البريد الإلكتروني، لذلك لا يمكنني التحقق من سجل MX لعنوان IP الخاص بالملقم أو أي شيء يتوهم بهذا الشكل.

أيه أفكار؟

هل كانت مفيدة؟

المحلول

في الواقع، في حين أن غير موثقة جيدا، المصادر هنا تشير إلى أن رسالة MIME الأصلية التي تتلاشى منها الكائنات المفيدة التي تحصل عليها هي .original خاصية الكائن المفيد - هذا مثال البريد الإلكتروني.message.message., ، لذلك يجب أن تكون قادرا على الحصول على رؤوس البريد الإلكتروني من هناك. لست متأكدا من أن تأخذك كثيرا في سعيك في التحقق من الصحة، على الرغم من ذلك.

نصائح أخرى

البريد الإلكتروني ليس وسيطا واضحا، إلا إذا قمت بالتوقيع عليه باستخدام PGP أو S / MIME. إذا لم يكن لديك رؤوس، فلن تحصل على أي شيء للتحقق.

الشيء الوحيد الذي يمكنك القيام به هو البريد الإلكتروني العنوان واطلب من الشخص أن يؤكد أنهم أرسلوا الرسالة حقا. هذا أصعب كثيرا لمرسل البريد الإلكتروني الاحتيالي المزيف (ولكن ليس مستحيلا).

أو يمكنك أن تطلب من المستخدم وضع كلمة مرور في كل رسالة.

أليكس هو الصحيح في الوصول إلى الرؤوس، لكن هذا لا يسمح لك بالتحقق من المرسل الفعلي للبريد الإلكتروني: يمكن لأي شخص إرسال بريد إلكتروني مع أي عنوان "من" يرغبن، لذلك لا تعتمد على العنوان من العنوان الودي من أرسلها.

إذا كان هذا جزءا من عملية التسجيل أو على حد سواء، فلماذا لا ترسل "تحديا" (مثل عنوان URL للذهاب إلى التسجيل المستمر أو أيا كان، بمفتاح فريد من نوعه ومضمونا) إلى المنشئ (المفترض)؟ بهذه الطريقة يمكنك التحقق مما إذا لم يتم دمج عنوان البريد الإلكتروني.

يستخدم "الرجال الكبار" (مثل Google) هذه العملية كثيرا، يجب أن يكون هناك سبب.

تجاهل اقتراحي إذا كان هذا لا يناسب حالة استخدامك.


محدث: يمكن أن يكون لديك رسائل البريد الإلكتروني عبور من خلال خدمة ويب أخرى (المراد تحديدها) قبل الوصول إلى تطبيق GAE الخاص بك؟ وبهذه الطريقة، لا يزال بإمكانك الاستفادة من GAE أثناء وجود وظيفة علوية منخفضة معالجة مثل التحقق من البريد الإلكتروني التي تم إجراؤها في مكان آخر؟

يمكنك التحقق من المرسل فقط باستخدام DKIM فقط. توقع GAE تلقائيا على رسائل البريد الإلكتروني حسابات Google مع DKIM ولكنك تحتاج إلى خدمة خارجية (التي يجب الوصول إليها من خلال HTTP / HTTPS) للاستعلام عن DNS وتوفر لك حقول TXT DNS.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top