PDA

View Full Version : حرفه ای: تبدیل دیتا بیس به فایل غیر قابل دیدن دیتا اما امکان استفاده در برنامه



mohammad33
پنج شنبه 16 مهر 1388, 21:15 عصر
من یه برنامه نوشتم که توش دیتا بیس SQL پسورد ها رو ذخیره کردم حالا اگه فایل اصلی دیتابیس رو منتشر کنم که هر کی یاد داشته باشه دیتابیس رو باز کنه پسورد هارو میبینه یه راه به من نشون بدید که بتونم دیتابیس رو کاری کنم که این مشکل حل بشه.
برنامه یه برنامه هستش که برا وارد شدن رمز میخاد واسه همین مهمه.:افسرده:
ممنونم.

اَرژنگ
پنج شنبه 16 مهر 1388, 21:21 عصر
من یه برنامه نوشتم که توش دیتا بیس SQL پسورد ها رو ذخیره کردم حالا اگه فایل اصلی دیتابیس رو منتشر کنم که هر کی یاد داشته باشه دیتابیس رو باز کنه پسورد هارو میبینه یه راه به من نشون بدید که بتونم دیتابیس رو کاری کنم که این مشکل حل بشه.
برنامه یه برنامه هستش که برا وارد شدن رمز میخاد واسه همین مهمه.:افسرده:
ممنونم.

با توضیحی که دادید تنها استنباطی که میشه کرد است که روشی که استفاده شده اشتباه است.
اگر توضیح بیشتر بدید روش درست ، راه حل را شاید بتونیم پیدا کنیم

mohammad33
پنج شنبه 16 مهر 1388, 22:15 عصر
ببینید من این برنامه رو نوشتم واسه مدیریت یه جایی حاللا نمیشه که همه برن و اطلاعاتو ببینن منم خاستم که رمز بزارم گفتم شاید این راه خوبی باشه که یه جدول واسه کاربران بزارم و یوزر پسورد ها رو توش ذخیره کردم حالا مشکل اینه که همه میتونن در صورتی که یاد داشته باشن رمز ها و نام ها رو ببینن حالا باید دیتا بیس من طوری باشه که کسی نتونه با غیره برنامه ویرایش کنه چه کنم؟؟؟؟پ
من با SQL server 2005 va visual studio 2005 ba zabane c# kar karadm va neveshtam.

esmartiz_red
جمعه 17 مهر 1388, 01:02 صبح
خوب پسوردهاتو hash کن که اگرم کسی تونست ببینه نتونه تشخیص بده که پسورد اصلی چیه

اَرژنگ
جمعه 17 مهر 1388, 02:02 صبح
ببینید من این برنامه رو نوشتم واسه مدیریت یه جایی حاللا نمیشه که همه برن و اطلاعاتو ببینن منم خاستم که رمز بزارم گفتم شاید این راه خوبی باشه که یه جدول واسه کاربران بزارم و یوزر پسورد ها رو توش ذخیره کردم حالا مشکل اینه که همه میتونن در صورتی که یاد داشته باشن رمز ها و نام ها رو ببینن حالا باید دیتا بیس من طوری باشه که کسی نتونه با غیره برنامه ویرایش کنه چه کنم؟؟؟؟پ
من با SQL server 2005 va visual studio 2005 ba zabane C#‎ kar karadm va neveshtam.

نگهداری یوزر پسورد ها هیچ وقت کار خوبی نیست، چونکه وقتی که کاربرا اضافه،کم و یا پسوردشان را عوض کنند چی میشه؟ استفاده از اکتیو دایرکتوری راه اصولی این کار است. متاسفانه هر جوری که بخواهید با نگهداری یوزر پسورد در داتابیس خودتان پیش برید به یک مشکل برخواهید خورد.

mohammad33
جمعه 17 مهر 1388, 13:27 عصر
خب چطور از اکتیو دایرکتوری استفاده کنم؟؟؟

اَرژنگ
جمعه 17 مهر 1388, 13:42 عصر
خب چطور از اکتیو دایرکتوری استفاده کنم؟؟؟
منتها قبل اینکه از اکتیو دایرکتوری استفاده کنید ببین اون به کارت میاد یا windows role based security :
لینک برایه یک پروژه اکتیو دایرکتوری:
http://www.codeproject.com/KB/system/everythingInAD.aspx
ولی یکمی در مورد اینکه چی رو باید چجوری مدیریت کنید توضیح بده، شاید اصلا به یک چیزه دیگری ربط داشته باشد.

mohammad33
جمعه 17 مهر 1388, 13:52 عصر
منتها قبل اینکه از اکتیو دایرکتوری استفاده کنید ببین اون به کارت میاد یا windows role based security :
لینک برایه یک پروژه اکتیو دایرکتوری:
http://www.codeproject.com/KB/system/everythingInAD.aspx
ولی یکمی در مورد اینکه چی رو باید چجوری مدیریت کنید توضیح بده، شاید اصلا به یک چیزه دیگری ربط داشته باشد.

من که گفتم عزیز میخام تو یه برنامه .net2.00 برا وارد شدن به برنامه کاربر تعریف کنم یه چیزی شبیه برنامه هایی مثل Folder guard

mohammad33
جمعه 17 مهر 1388, 14:02 عصر
خوب پسوردهاتو hash کن که اگرم کسی تونست ببینه نتونه تشخیص بده که پسورد اصلی چیه


خب اولا hash ماله وبه بدم فوقشم اگه هش کنم بازم اپه دیتا بیس رو باز کنه کاربرا رو میتونه حذف کنه که!!! تازه بقیه اطلاعات چی؟؟؟

اَرژنگ
جمعه 17 مهر 1388, 14:37 عصر
من که گفتم عزیز میخام تو یه برنامه .net2.00 برا وارد شدن به برنامه کاربر تعریف کنم یه چیزی شبیه برنامه هایی مثل Folder guard
منظورتان را از 'وارد شدن به برنامه کاربر' دقیقا متوجه نمیشم، این برایه یک کاربر و یک کامپیوتر است و یا برایه تعدادی کاربر بر رویه شبکه؟
Folder guard رو پژوهش کردید؟ که ببنید چطوری کار میکنه؟ چه جاهایی ایراد دارد، چه جاههایی خوبه؟

مهدی رحیم زاده
جمعه 17 مهر 1388, 18:29 عصر
والا منم دنبال همچین چیزیم اما نه برا کاری مثل شما.
به نتیجه رسیدی حتما من رو هم خبر کن
با تشکر

اَرژنگ
جمعه 17 مهر 1388, 18:42 عصر
والا منم دنبال همچین چیزیم اما نه برا کاری مثل شما.
به نتیجه رسیدی حتما من رو هم خبر کن
با تشکر
شما برایه چه کاری لازم دارید؟

مهدی رحیم زاده
جمعه 17 مهر 1388, 19:11 عصر
والا یک سری داده هست که کاربرا فقط باید بتونن از اونا استفاده کنن. دو تا راه داشتم :
1- کاربرا از طریق وب به این داده ها دسترسی داشته باشن
2- داده ها رو رمز گذاری کنم .
راهاول نمیشه . چون خیلی از کاربرا یه وب دسترسی ندارن پس منتفی شد
راه دوم هم مشکل دسترسی کاربرا به داده ها رو داره.یعنی حذف اونا.البته امکان ویرایش از اونا گرفته شده . چون بازیابی اطلاعات رمز گذاری شده به این راحتیا نیست فقط میمونه مشکل حذف!
شما راه دیگه ای سراغ دارین؟
در ضمن یک نکته رو هم بگم که سیستم کاربرا یک ویندوز معمولی داره . محیط شبکه نیست و فوض بگیرید که برنامه باید توی چند تا استان بین چند هزار تا کاربر اجرا بشه .
با تشکر

اَرژنگ
جمعه 17 مهر 1388, 19:36 عصر
والا یک سری داده هست که کاربرا فقط باید بتونن از اونا استفاده کنن. دو تا راه داشتم :
1- کاربرا از طریق وب به این داده ها دسترسی داشته باشن
2- داده ها رو رمز گذاری کنم .
راهاول نمیشه . چون خیلی از کاربرا یه وب دسترسی ندارن پس منتفی شد
راه دوم هم مشکل دسترسی کاربرا به داده ها رو داره.یعنی حذف اونا.البته امکان ویرایش از اونا گرفته شده . چون بازیابی اطلاعات رمز گذاری شده به این راحتیا نیست فقط میمونه مشکل حذف!
شما راه دیگه ای سراغ دارین؟
در ضمن یک نکته رو هم بگم که سیستم کاربرا یک ویندوز معمولی داره . محیط شبکه نیست و فوض بگیرید که برنامه باید توی چند تا استان بین چند هزار تا کاربر اجرا بشه .
با تشکر
سوال ، آیا شما اطلاعاتی مخصوص به هر کاربرد دارید؟ یعنی اینکه قابل هستید که به هر کابر یک داتبیس فقط مخصوص به اون کاربر را بفرستید؟ یا اینکه همه باید یک چیز دریافت کنند و شما اختیار انحصاری کردن داتابیس به هر کاربرد را ندارید؟

مهدی رحیم زاده
شنبه 18 مهر 1388, 06:08 صبح
ما دوتا دیتابیس داریم
یکی مختص کاربره و کاربر هر تغییری که بخواد می تونه روش اعمال کنه و دومی عمومی برای همه کاربراست. همشون از یک داده باید استفاده کنن بدون امکان حذف و ویرایش و فقط باید بتونن که از این دیتابیس اطلاعات رو بخونن.
با تشکر

mohammad33
شنبه 18 مهر 1388, 08:39 صبح
منظورتان را از 'وارد شدن به برنامه کاربر' دقیقا متوجه نمیشم، این برایه یک کاربر و یک کامپیوتر است و یا برایه تعدادی کاربر بر رویه شبکه؟
Folder guard رو پژوهش کردید؟ که ببنید چطوری کار میکنه؟ چه جاهایی ایراد دارد، چه جاههایی خوبه؟


ببينيد منظور از وارد شدن به محيط برنامه دقيقا همون login هست يعني اول اجراي برنامه يه فرم login مياد اگه يوزر پسورد درست باشه ادامه ميده و وارد برنامه ميشه اگه نه يا يوزر درست بايد وارد شه يا خروج!!!!!!!!!!

debugger
شنبه 18 مهر 1388, 11:58 صبح
جناب محمد 33 به نظرم من پسور ها را هش کنید و برای نگهداری از رجیستری استفاده کنید.

راه دوم هم اینه که تو یه فایل txt پسورد ها و نام کاربر ها را ذخیره کن (بازم پسورد ها را هش شده بنویس) و بعد خود فایل را اینکریپت کن (فایل را یه جایی تو سیستم 32 ایجاد کن که نتونه پیدا کنه)

موقع خوندن و چک کردن ابتدا فایل را دکریپت کن و پسورد ها را مقایسه کن اگر درست بود اجازه بده وارد بشه

استفاده از دیتا بیس اصلا کار درستی نیست

spicirmkh
چهارشنبه 20 مرداد 1389, 11:18 صبح
منتها قبل اینکه از اکتیو دایرکتوری استفاده کنید ببین اون به کارت میاد یا windows role based security :
لینک برایه یک پروژه اکتیو دایرکتوری:
http://www.codeproject.com/KB/system/everythingInAD.aspx
ولی یکمی در مورد اینکه چی رو باید چجوری مدیریت کنید توضیح بده، شاید اصلا به یک چیزه دیگری ربط داشته باشد.

مقاله فارسی و مختصر در باره اکتیو دایرکتوری هست