تور لحظه آخری
امروز : چهارشنبه ، 12 دی 1403    احادیث و روایات:  
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

اجاره سند در شیراز

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

خرید بلیط هواپیما

بلیط اتوبوس پایانه

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید از چین

خرید از چین

تجهیزات کافی شاپ

خرید سرور اچ پی ماهان شبکه

کاشت ابرو طبیعی و‌ سریع

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

دوره آموزش باریستا

مهاجرت به آلمان

بهترین قالیشویی تهران

بورس کارتریج پرینتر در تهران

تشریفات روناک

نوار اخطار زرد رنگ

ثبت شرکت فوری

تابلو برق

خودارزیابی چیست

فروشگاه مخازن پلی اتیلن

قیمت و خرید تخت برقی پزشکی

کلینیک زخم تهران

خرید بیت کوین

خرید شب یلدا

پرچم تشریفات با کیفیت بالا و قیمت ارزان

کاشت ابرو طبیعی

پرواز از نگاه دکتر ماکان آریا پارسا

پارتیشن شیشه ای اداری

اقامت یونان

خرید غذای گربه

رزرو هتل خارجی

تولید کننده تخت زیبایی

مشاوره تخصصی تولید محتوا

سی پی کالاف

دوره باریستا فنی حرفه ای

چاکرا

استند تسلیت

تور بالی نوروز 1404

سوالات لو رفته آیین نامه اصلی

کلینیک دندانپزشکی سعادت آباد

پی ال سی زیمنس

دکتر علی پرند فوق تخصص جراحی پلاستیک

تجهیزات و دستگاه های کلینیک زیبایی

 






آمار وبسایت

 تعداد کل بازدیدها : 1848566992




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

تنظیم کانکشن استرینگ بعد از کامپایل با حفظ امنیت


واضح آرشیو وب فارسی:سایت ریسک: View Full Version : تنظیم کانکشن استرینگ بعد از کامپایل با حفظ امنیت Payman_6225-09-2009, 04:01 PMسلام. میخوام با استفاده از روشی کانکشن استرینگ رو بعد از کامپایل برنامه ست کنم. تا مجبور نشم هر سری دوباره برنامه رو کامپایل کنم و ستاپ بسازم. روش هایی مثل تنظیم در setting یا خوندن از app.config بعد از تغییر سرور نیاز به کامپایل مجدد دارن. من میخواستم از فایل های udl استفاده کنم. ولی udl هم امنیت بالایی نداره و کاربر اگه دستکاریش کنه ارتباط با سرور قطع میشه. اما امنیت برای من خیلی مهمه. جایی خوندم میشه فایل های udl رو از دسترسی غیر مجاز حفظ کرد. کسی اطلاعی داره؟ در کل چه روشی رو پیشنهاد میکنید؟ MTPROG26-09-2009, 09:25 AMمیخوام با استفاده از روشی کانکشن استرینگ رو بعد از کامپایل برنامه ست کنم. تا مجبور نشم هر سری دوباره برنامه رو کامپایل کنم و ستاپ بسازم یعنی شما Connection string برنامه رو تو یک خط ثابت مینویسید و هر وقت بخواید تغییر بدید باید سورس رو عوض کنید؟ دقیقا نمیدونم میخواهید چکار کنید ولی من خودم از یه کلاس برای بدست آوردن Connection string استفاده میکنم چندین پارامتر میگیره و بر اساس اون Connection string رو میسازه و دستورات مربوطه جهت اتصال از اون استفاده میکنن اگر هم بعضی شرایط سرور و شبکه تغییر کرد مشکلی پیش نماد چون کلاس مربوطه با شرایط جدید دستور جدید میسازه اگر منظور شما چیز دیگه ای هستش لطفا توضیح بدید Payman_6226-09-2009, 05:10 PMسلام. وقتی نام و آدرس سرور تغییر میکنه کلاس شما چطور کانکشن جدید رو میسازه؟ یعنی چطور نام سرور رو گیر میاره؟ بالاخره باید از جایی از بیرون بهش داده بشه. shalineh26-09-2009, 07:28 PMمیتونی تمام پارامترهای لازم برای کانکشن استرینگ رو در یک فایل تکست معمولی بریزی ( بصورت کد شده ) و سپس در هنگام لود برنامه ، این فایل رو بخونی و پارامترها رو در کانکشن استرینگ وارد کنی. کاری که من در برنامه شهر شکلک کردم و اونو در یک فایل تکست کد شده و در یک جای مخفی قرار دادم. فقط کافیه این تکست رو تغییر بدم و دیگه نیاز به کامپایل نداره. Payman_6226-09-2009, 08:46 PMسلام. فایل udl برای همین کار هست که گرفتن اطلاعات سرور و دیتابیس رو کپسوله کرده. اما مشکل من عدم امنیت این فایل هست. به راحتی قابل ویرایش هست و در صورت تغییر محتوای فایل ارتباط با سرور قطع میشه. MTPROG27-09-2009, 09:06 AMوقتی نام و آدرس سرور تغییر میکنه کلاس شما چطور کانکشن جدید رو میسازه؟ یعنی چطور نام سرور رو گیر میاره؟ بالاخره باید از جایی از بیرون بهش داده بشه. موقع ورود به نرم افزار فرم LogIn میاد و اونجا اطلاعات مورد نیاز توش هست http://www.mihanupload.com/images/co31eo1kbcxmuirc8vq.jpg اطلاعات log in رو هم تو یه فایل ذخیره میکنیم اگر می خواید کسی متوجه اون فایل نشه پسوند اونو عوض کنید مثلا Info.dll برنامه هیچ مشکلی با خوندن یا نوشتن توش نداره و کاربر متوجه نمیشه که این فایل یک dll نیست مثلا من قبلا برای برنامه های بانک اطلاعاتی اکسس بخاطر اینکه کسی ندونه بانکم کدونه نام فایل رو از DB.mdb به DB.dll تغییر میدادم و فایل شکل dll به خوش میگرفت و برنامه هم بدون هیچ مشکلی کار میکرد shalineh27-09-2009, 12:54 PMسلام. فایل udl برای همین کار هست که گرفتن اطلاعات سرور و دیتابیس رو کپسوله کرده. اما مشکل من عدم امنیت این فایل هست. به راحتی قابل ویرایش هست و در صورت تغییر محتوای فایل ارتباط با سرور قطع میشه. فکر نکنم راهی داشته باشد. چون ویرایش کردن یک فایل کار چندان مشکلی نخواهد بود. حتی اگر یک فایل در تمام مدت روشن بودن سیستم ، در حال استفاده توسط برنامه یا سیستم باشد. من دقیقا متوجه نشدم. آیا منبع دیتای شما ثابت است؟ ( Path ) یا متغیر است؟ برنامه شما تک کاربره است یا مولتی یوزر؟ اگر اطلاعات دیتا و سرور توسط کاربر تغییر کنه چه اتفاقی برای برنامه یا هدف شما می افته؟ اینها سوالاتی است که باید پاسخ داده شود. اونوقت بهتر میشه هدف شما را ارزیابی کرد وراهنمایی کرد . در ضمن یک فایل کد شده رو کاربر چگونه میخواهد بصورت صحیح دستکاری کند در حالیکه چیزی از محتویات فایل سر در نمی آورد؟!!! مگر اینکه عملیات خرابکارانه داشته باشد. که این هم در برنامه های سینگل یوزر معنا ندارد. به هر حال بهتر است کمی موضوع رو بازتر کنید. shalineh27-09-2009, 01:03 PMیه چیزه دیگه: کالا در هر برنامه ای ، حتما قبل از استفاده از یک فایل خارجی ، باید محتویات اون بررسی بشه و ببینیم که آیا فرمت آن و همچنین مقادیر و پارامترهای آن با قوانین برنامه ما و نوع متغیرهای ما سازگاری دارد یا نه؟ اگر نه که ، باید پیام مناسبی به کاربر داده شود. Payman_6227-09-2009, 04:26 PMسلام. موقع ورود به نرم افزار فرم LogIn میاد و اونجا اطلاعات مورد نیاز توش هست http://www.mihanupload.com/images/co31eo1kbcxmuirc8vq.jpg اطلاعات log in رو هم تو یه فایل ذخیره میکنیم اگر می خواید کسی متوجه اون فایل نشه پسوند اونو عوض کنید مثلا Info.dll برنامه هیچ مشکلی با خوندن یا نوشتن توش نداره و کاربر متوجه نمیشه که این فایل یک dll نیست مثلا من قبلا برای برنامه های بانک اطلاعاتی اکسس بخاطر اینکه کسی ندونه بانکم کدونه نام فایل رو از DB.mdb به DB.dll تغییر میدادم و فایل شکل dll به خوش میگرفت و برنامه هم بدون هیچ مشکلی کار میکرد مشکل من اینه که کاربر اصلا با برنامه ارتباط نداره. برنامه به صورت سرویس ران میشه و پشت پرده کاراش رو میکنه و تا میتونه باید کارش رو مخفیانه انجام بده. فرم یوزر و پس برای کاربر ظاهر نمیشه. البته میشه مثلا هنگام نصب آدرس سرور رو بگیره. ولی میخوام ببینم روش مناسب تری کسی بلده؟ امنیت برنامه هم باید خیلی بالا باشه. طوری که حتی کاربر نتونه برنامه رو ببنده. اینه که باید رو ارتباط با سرور هم دقت زیادی کنم. فکر نکنم راهی داشته باشد. چون ویرایش کردن یک فایل کار چندان مشکلی نخواهد بود. حتی اگر یک فایل در تمام مدت روشن بودن سیستم ، در حال استفاده توسط برنامه یا سیستم باشد. من دقیقا متوجه نشدم. آیا منبع دیتای شما ثابت است؟ ( Path ) یا متغیر است؟ برنامه شما تک کاربره است یا مولتی یوزر؟ اگر اطلاعات دیتا و سرور توسط کاربر تغییر کنه چه اتفاقی برای برنامه یا هدف شما می افته؟ اینها سوالاتی است که باید پاسخ داده شود. اونوقت بهتر میشه هدف شما را ارزیابی کرد وراهنمایی کرد . در ضمن یک فایل کد شده رو کاربر چگونه میخواهد بصورت صحیح دستکاری کند در حالیکه چیزی از محتویات فایل سر در نمی آورد؟!!! مگر اینکه عملیات خرابکارانه داشته باشد. که این هم در برنامه های سینگل یوزر معنا ندارد. به هر حال بهتر است کمی موضوع رو بازتر کنید. فکر نمیکنم این جزییات مهم باشه. برنامه به صورت کلاینت سروری هست که نسخه سرور رو سرور و کلاینت هم روی کلاینت ها نصب میشه. من میخوام از دست کاری تو کارکرد برنامه توسط کاربران جلوگیری کنم. مثلا محتویات udl رو ادیت نکنن و برنامه ارتباطش با سرور قطع بشه. CHAPTER27-09-2009, 06:34 PMالبته در حضور دوستان جسارت نباشه خوب چرا می خواهید کانکشن رو در یک فایل ذخیره کنید خوب می تونید در هر بار اجرای برنامه به صورت خودکار نام سرور و نام دیتابیس رو پیدا کنید و کانکشن رو ست کنید.برای پیدا کردن نام دیتابیس هم از sp_helpdb استفاده کنید. _H2_27-09-2009, 07:11 PMسلام من یک نمونه کد دارم که شاید کمک کند ... در این کد بسیار بسیار ساده برای ذخیره از Settings های خود پروژه استفاده شده ولی قبل از ذخیره سازی و بعد از خواندن فقط به صورت نمادین اطلاعات با Base64 مثلاً رمزنگاری شده. اگر از کدی شبیه همین و با کلاسهای اصلی دات نت برای رمزنگاری در فضای System.Security.Cryptography استفاده کرد، گمانم خوب باشد. بحرحال رمزنگاری را میخواهد چون اطلاعات ConnectionString حاوی user و Pass است که مواردی امنیتی است ولی اگر Settings را هم نخواهید میتوانید در قالب یک فایل با هر پسوندی در کنار برنامه هم ذخیره کنید (bin.* یا dat.* و...) نمونه کد: support.h02.ir/fwlink/?LinkId=1001372507 تاپیک مرتبط: 244429&page=3 MTPROG28-09-2009, 08:52 AMمشکل من اینه که کاربر اصلا با برنامه ارتباط نداره. برنامه به صورت سرویس ران میشه و پشت پرده کاراش رو میکنه و تا میتونه باید کارش رو مخفیانه انجام بده. فرم یوزر و پس برای کاربر ظاهر نمیشه. البته میشه مثلا هنگام نصب آدرس سرور رو بگیره. ولی میخوام ببینم روش مناسب تری کسی بلده؟ خود سرویسها هم میتونن اطلاعات ورودی بگیرند شما میتونید همون اطلاعات log in رو تو properties همون سرویس قرار بدید اگه به تصویر زیر دقت کنید سرویسها توانایی لازم رو دارن http://www.mihanupload.com/images/ajzg1u5tc0ld 6p578bj.jpg _H2_28-09-2009, 09:54 AMسلام میبخشید، من کل تاپیک را مطالعه نکرده بودم و حالا که کاربر MTPROG پست قبلی را دادند متوجه این شدم ... مشکل من اینه که کاربر اصلا با برنامه ارتباط نداره. برنامه به صورت سرویس ران میشه و پشت پرده کاراش رو میکنه و تا میتونه باید کارش رو مخفیانه انجام بده. فرم یوزر و پس برای کاربر ظاهر نمیشه. البته میشه مثلا هنگام نصب آدرس سرور رو بگیره. ولی میخوام ببینم روش مناسب تری کسی بلده؟ اگر اینطور است شاید بد نباشد برنامه و سرویس شما مقدار ConnectionString رمزنگاری شده را از محل مشخص و خواصی بخواند (مثل یک مقدار در رجیستری) سپس یک برنامه کمک فرمدار و با UI هم برای پیکر بندی برنامه در کنار این ویندوز سرویس وجود داشته باشد. بالاخره شما اغلب برنامه های خدماتی کلی را که میبینید ویندوز سرویس دارند یک برنامه UI دار برای تنظیمات هم دارند، چه ضد ویروسها و چه خود SQLServer و... (خود SQLServer ابزار نمایشی و مرتبط با کاربری مثل SQL Server Configuration Manager و SQL Server Surface Area Configuration را دارد. که در واقع ساپورت تنظیمی سرویسهایش را انجام میدهند و حتی برخی تغییرات تنظیمی با Restart سرویس یا Start بعدی آن اعمال میشود و همان لحظه اثر نمیکند. نتیجتاً پیشنهاد من قرار دادن امکان edit و تغییر ان محل مشخص ConnectionString درون یک برنامه خدماتی فرمدار مرتبط با سرویستان است. این برنامه لزوماً نیاز نیست همیشه در RAM و در حال اجرا باشد و همیشه هم جلوی چشم باشد. ( برخی از ابزار خدماتی SQLServer اصلاً Shortcut اش هم در منوی Start وجود ندارد و باید دستی به پوشه مورد نظر بروید و اجرایشان کنید که دیگر اجرا بودن در RAM و وجود Shortcut در منوی Start و... به صلاح دید برنامه نویس و شرایط اجرای آن بستگی دارد. ) Payman_6230-09-2009, 10:20 PMسلام. تشکر از نظرات مفیدتون. جناب MTPROG عکسی که شما گذاشتی مربوط به ران شدن سرویس به صورت عادی یا از طریق یه یوزر خاص هست. اما اگه منظورتون اینترکتیو بودنش هست بله برنامه بنده به صورت اینترکتیو هست. اما این که بخوام از کاربر کانکشن استرینگ رو بگیرم روش مناسبی نیست. پایین توضیح میدم. جناب h2 تو فکر یه همچین روشی بودم که اطلاعات دفعه اول ران شدن از ادمین گرفته بشه و جایی ذخیره بشه. احتیاجی هم به برنامه کمکی نداره. چون نیازی نیست اطلاعات ادیت بشه. به 2 دلیل. اول این که آدرس سرور ثابته و نیازی به ادیت نداره. دوم این که ممکنه کاربران عادی از امکان ادیت کانکشن استرینگ سو استفاده کنند ( حتی اگه پسورد و ... هم در نظر گرفته بشه ) و برنامه به مشکل بر بخوره. سالی 1 بار هم نیاز به ادیت کانکشن استرینگ نیست. اگر بود برنامه پاک و دوباره نصب میشه تا مطمن باشم 100% توسط مسوول پشتیبانی انجام میشه نه خود کاربر. سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 2574]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن