مقالات
| 2006/01/02 - i |
| ارسال MailMessage توسط SmtpMail.Send با امکان authentication |
|
اول از همه ببخشید که خیلی عنوان مطلب عجیب قریب شد. بهتر از این به ذهنم نرسید.
ارسال ایمیل در ASP.NET پروسه بسیار ساده ای دارد که علاقه مندان همه می دانند و دوباره متذکر نمی شوم. اما اگر بخواهید که پارامترهای بیشتری را برای این عملکرد تنظیم کنید، راه حل چیست؟ به عنوان مثال اگر ارسال ایمیل مستلزم تعیین شناسه و رمز معتبر بروی شبکه باشد ، آنگاه دیگر کار به این راحتی نیست. مطمئنا اگر برنامه شما بروی شبکه ای با پیچیدگی کمتر ( مانند شبکه محلی ) قرار داشته باشد، با این محدودیتها برخورد نمی کنید ولی در شرایطی که Web Server که برنامه شما بروی آن نصب است با Mail Server که می خواهد ایمیل شمارا ارسال کند در یک Security Zone نباشد آنگاه نیاز به تنظیمات authentication برای ارسال ایمیل پیدا میکنید. و اما راه حل: از آنجائی که ارسال ایمیل توسط SmtpMail.Send در ASP.NET از Microsoft CDO استفاده می کند، شما می توانید تمام پارامترهای مورد نیاز را در "Fields Property" یک MailMessage قرار دهید و سپس درخواست SmtpMail.Send را فراخوانی نمایید. فرض کنید که یک Object از نوع MailMessage با نام msg به ترتیب زیر ایجاد کرده ایم. MailMessage msg = new MailMessage();
msg.Fields
["http://schemas.microsoft.com/cdo/configuration/sendusing"] = 2; اگر بخواهید Port را برای SMTP Server تعیین کنید msg.Fields
["http://schemas.microsoft.com/cdo/configuration/ smtpserverport"] = 25; msg.Fields
["http://schemas.microsoft.com/cdo/configuration/ smtpauthenticate"] = 1; در آخر باید userid و password کاربر معتبری که مجوز ارسال ایمیل را دارد تعیین کنید. msg.Fields
["http://schemas.microsoft.com/cdo/configuration/ sendusername"] = userid; msg.Fields ["http://schemas.microsoft.com/cdo/configuration/ sendpassword"] = password; حال با دو خط زیر و با مقدار دهی smtpServer با آدرس SMTP Server می توانید msg را که شامل تنظیمات ایمیل شما است ( از جمله موضوع و بدنه ایمیل) ارسال کنید. SmtpMail.SmtpServer = smtpServer;
SmtpMail.Send(msg); |
نوشته شده در ساعت 08:08
ايميل به دوستان
نظر خوانندگان
|
| 2006/01/01 - i |
| کد کردن Connection String |
|
اطلاعات
Connection String
در پروژه های
Web Based
از مهمترین مواردی است که برای مخفی ماندن آن از دید دیگران باید اهتمام ویژه ای به خرج داد. برای حفظ امنیت این اطلاع در
ASP.NET
راه کارهای مختلفی وجود دارد که در اینجا به یکی از آنها اشاره می کنم که کد کردن
Connection String
و سپس قرار دادن آن در
web.config
و یا
متن
برنامه است.
. شاید این روش در نگاه اول روش بسیار امنی به نظر بیاید اما در واقع این طور نیست زیرا به راحتی
Decode
می شود
ولی به هر حال مسکنی موقت است.
برای کد کردن یک رشته کاراکتری ابتدا لازم است System.Text را using کنید. using System.Text;
string strConnectionString =
"server=127.0.0.1;database=db;uid=user;pwd=pass"; string strToEncode = Convert.ToBase64String (ASCIIEncoding.ASCII.GetBytes(strConnectionString)); string Decoder(string strToEncode)
{ return ASCIIEncoding.ASCII.GetString (Convert.FromBase64String(strToEncode)); } |
نوشته شده در ساعت 08:11
ايميل به دوستان
نظر خوانندگان
|
مقالات من
آخرين مطالب
| نقل از مطالب اين سايت با ذكر منبع مجاز ميباشد |
|
( Summery ) |



