كيفية تمكين مصادقة SMTP باستخدام System.Web.Mail

ترجمات الموضوعات ترجمات الموضوعات
معرف المقالة: 555287 - عرض المنتجات التي تنطبق عليها هذه المقالة.
Author: Carlos Walzer MVP
توسيع الكل | طي الكل

الموجز

وصف هذا المقالة كيفية إرسال رسائل البريد الإلكتروني من تطبيق.NET عبر ملقم SMTP التي تتطلب المصادقة.

الأعراض

Exchange Server يتطلب, بشكل افتراضي، مصادقة مستخدمين لإرسال رسائل البريد عبر SMTP. إذا الذي يتم تطوير تطبيق ذو نهاية خلفية.NET ستجد التي لا تحتوي على System.Web.Mail API الذي يسمح لك لتوفير أوراق الاعتماد من أجل الاتصال إلى ملقم SMTP. System.Web.Mail داخليًا المكالمات Microsoft « CDOSYS كائنات بيانات التعاون. مصادقة SMTP الممكن بواسطة تعريف إعدادات التكوين باستخدام كائن تكوين المقترن إلى كائن CDO رسالة .
 

معلومات أخرى

يوفر مساحة الاسم System.Web.Mail API يمكّنك من إنشاء وإرسال الرسائل باستخدام مكون الرسالة CDOSYS (المساهمة Data Objects لـ Windows 2000). يتم تسليم رسالة البريد عبر ملقم SMTP.
تتطلب معظم من تثبيتات ملقمات SMTP المصادقة. reasoning الرئيسي عن هذا هو تبعاً الأشخاص abusing ملقمات SMTP لـ SPAMing (مثال، المرسل خارج البريد غير الهام غير المعتمدة).
فئات مساحة System.Web.Mail لا يعرّض API لتوفير أوراق الاعتماد إلى ملقم SMPT. رغم يمكنك تحقيق ذلك بواسطة تعريف إعدادات التكوين في كائن تكوين المقترن إلى CDO رسالة . إعدادات التكوين تتكون من مجموعة من الحقول (خصائص) الموجودة زوج الاسم / القيمة ببساطة. معظم الحقول التكوين المستخدمة من أجل المراسلات موجودة http://schemas.microsoft.com/cdo/configuration/ مساحة الاسم.
يمكنك تعيين حقول إلى الرسالة بواسطة إضافتها إلى مجموعة System.Web.Mail.MailMesage.Fields .
 
حقول CDO لتكوين AuthenticationTo SMTP تكوين وضع الكائنات يقوم تعديل حقول في كائن التكوين المقترنة. معظم من أسماء الحقول الموجودة http://schemas.microsoft.com/cdo/configuration/ مساحة الاسم:
  • smtpserver : اسم ملقم SMTP.
  • smtpserverport : منفذ ملقم SMTP (الافتراضي: 25).
  • sendusing : cdoSendUsingPort أو القيمة 2, في إرسال الرسالة باستخدام شبكة الاتصال.
  • smtpauthenticate : تحديد آلية استخدامه عند مصادقة إلى خدمة SMTP عبر شبكة الاتصال. القيم المحتملة هي:
    -cdoAnonymous أو القيمة 0. غير مصادقة.
    -cdoBasic أو القيمة 1. استخدام المصادقة الأساسية ذات النص الواضح . عند استخدام هذا الخيار لديك لتوفير اسم المستخدم وكلمة المرور خلال حقول sendusername و sendpassword .
    -cdoNTLM أو القيمة 2. يتم استخدام في سياق أمان العملية الحالية لمصادقة مع الخدمة.
  • sendusername : اسم المستخدم
  • sendpassword : كلمة المرور

 
مثال
يُظهر المثال التالي كيفية إرسال بريد إلكتروني خلال ملقم SMTP تتطلب ملقم المصادقة على شبكة الاتصال عن طريق توفير أوراق الاعتماد في النص الواضح-.
 
using System;
using System.Web.Mail;
namespace SMTPAuthentication
{
 public class SMTPAuthenticationExample
 {
  public static void SendMail()
  {
   string smtpServer = "smtp.domain.com";
   string userName = "johnDoe";
   string password = "pass";
   int cdoBasic = 1;
   int cdoSendUsingPort = 2;
   MailMessage msg = new MailMessage();
   if (userName.Length > 0)
   {
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", smtpServer);
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25) ;
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", cdoSendUsingPort) ;
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", cdoBasic);
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", userName);
    msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", password); 
   }
   msg.To = "someone@domain.com";
   msg.From = "me@domain.com";
   msg.Subject = "Subject";
   msg.Body = "Message";
   SmtpMail.SmtpServer = smtpServer;
   SmtpMail.Send(msg);
  }
 }
}
 
ملاحظة: تأكد من مراجع المشروع التجميع System.Web.dll . يمكن استخدام الفئات في System.Web.Mail مساحة من ASP.NET أو من أي تطبيق تتم إدارته.
 
مراجع:
للحصول على مزيد من المعلومات حول كائنات بيانات التعاون زيارة:
http://msdn.microsoft.com/library/en-us/exchanchor/htms/msexchsvr_cdo_top.asp
 
للحصول على مزيد من المعلومات حول System.Web.Mail يمكنك زيارة مساحة الاسم:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwebmail.asp

الخصائص

معرف المقالة: 555287 - تاريخ آخر مراجعة: 28/صفر/1426 - مراجعة: 1.0
تنطبق على
  • Microsoft .NET Framework 1.1
كلمات أساسية: 
kbpubmvp kbpubtypecca kbhowto KB555287 KbMtar kbmt
ترجمة آلية
هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية. إذا ما وجدت أحد الأخطاء وترغب في المساعدة في هذا المجهود، الرجاء اتمام الاستطلاع الموجود أسفل هذه المقالة
اضغط هنا لرابط المقالة باللغة الانجليزية555287
COMMUNITY SOLUTIONS CONTENT DISCLAIMER
MICROSOFT CORPORATION AND/OR ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY, RELIABILITY, OR ACCURACY OF THE INFORMATION AND RELATED GRAPHICS CONTAINED HEREIN. ALL SUCH INFORMATION AND RELATED GRAPHICS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT AND/OR ITS RESPECTIVE SUPPLIERS HEREBY DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THIS INFORMATION AND RELATED GRAPHICS, INCLUDING ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, WORKMANLIKE EFFORT, TITLE AND NON-INFRINGEMENT. YOU SPECIFICALLY AGREE THAT IN NO EVENT SHALL MICROSOFT AND/OR ITS SUPPLIERS BE LIABLE FOR ANY DIRECT, INDIRECT, PUNITIVE, INCIDENTAL, SPECIAL, CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF USE, DATA OR PROFITS, ARISING OUT OF OR IN ANY WAY CONNECTED WITH THE USE OF OR INABILITY TO USE THE INFORMATION AND RELATED GRAPHICS CONTAINED HEREIN, WHETHER BASED ON CONTRACT, TORT, NEGLIGENCE, STRICT LIABILITY OR OTHERWISE, EVEN IF MICROSOFT OR ANY OF ITS SUPPLIERS HAS BEEN ADVISED OF THE POSSIBILITY OF DAMAGES.

إرسال ملاحظات