سلام.....
دوستان چطور میشه database, یا جداولی از اون رو Read only کرد که امکان تغییر در داده ها توسط کاربر وجود نداشته باشد.(راهی غیر از تعریف user برای database)
ممنون از همه....
سلام.....
دوستان چطور میشه database, یا جداولی از اون رو Read only کرد که امکان تغییر در داده ها توسط کاربر وجود نداشته باشد.(راهی غیر از تعریف user برای database)
ممنون از همه....
سلام
غیر از بحث مجوزهای امنیتی و User و login و password فقط میتوان کل دیتابیس را ReadOnly کرد.
دستور SQL:
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
سلام ...
ولی اگه کاربر به databasename->properties->option->state->database readonly برود میتواند database readonly را false کند..
سلام
بله این روند دستوری که گفتید در واقع اجرای همان SQL را سبب میشود.ولی اگه کاربر به databasename->properties->option->state->database readonly برود میتواند database readonly را false کند..
من هم دست نمیدانم منظورتان چیست ولی در همانطور که در آن تاپیک دیگرتان کاربر rz_assar هم گفتند، امنیت SQLServer محتاج امنیت سرور است، یعنی در نهایت برای کسی که به رایانه سرور دسترسی دارد چندان نمیتوان امنیت درستی پیاده سازی کرد و فرد اگر sqlserver بلد باشد نمیتوان در رایانه سرور جلوی او را گرفت!
ولی برای رایانه های دیگر متصل در شبکه که از رایانه سرور استفاده میکنند، میتوان در سرور، محدودیت های شدید و قوی و تقریباً غیر قابل شکستن و نفوذی را پیاده سازی کرد.
سلام..
من برای اینکه نسخه نرم افزار رو trial کنم اولین تاریخی که برنامه روی سیستم اجرا میشود را کد کرده و در database ذخیره میکند و در تاریخهای بعدی اجرای نرم افزار مدت استفاده محاسبه و کد میشود و با مدت مد نظر مثلا 30 روز چک میشود ...و چنانچه هنوز مدت استفاده تمام نشده باشد نرم افزار کار میکند...اطلاعاتی که در database ذخیره میشوند کد میشوند..اما اگر فیلد اطلاعات را در جدول در sql server دستی حذف کنیم تاریخ اولی و کلا هر کاری که برنامه برای محاسبه مدت زمان کرده از بین میرود...
لطفا کمکم کنید که برای حل این مشکل چه کار کنم...مرسی
سلام
برای همچین عملی پیشنهاد میکنم حتماً برنامه و دیتاهایتان را رمز نگاری قوی کنید و فقدات دیتا را پایان کار برنامه در نظر بگیرید که باید مشکل حل شود.
مشکل بعدی که میماند بحث uninstall و install مجدد برنامه است که البته خیلی از برنامه های تجاری و حرفه ای سعی هم نکرده اند در نسخه های آزمایشی خود جلو این کار را بگیرند ولی اگر قصد دارید جلوی این کار را هم بگیرد، مشکل در این بخش وجود دارد و باید از روشهای تلفیقی استفاده کنید و مثلاً دو کلید خاص در رجیستری را تغییر دهید و یا کپی یک فایل به دو نقطه مشخص سیستم که وجود هر یک دلیلی بر نصب مجدد برنامه باشد و البته باید امیدوار باشید کسی این دیتا ها را پیدا نکند!
البته آن هم راههایی اساسی با فعال سازی اینترنتی دارد... که باید سایتی داشته باشید و برنامه آزمایشی برای همان کار کردن هم به سایت وصل شود و مشخصاتی مثل شماره هارد را بدهد و کد رمزی شروع کار را تحویل بگیرد، در این حالت به راحتی و با داشتن یک بانک کوچک در سایت میتواند از دادن کد رمز شروع فعالیت برای رایانه های تکراری جلو گیری کنید.
برای رمزنگاری دیتا ها سری به تاپیک زیر بزنید:
forum.p30world.com/showthread.php?p=2721747#post2721747
سلام...
من تمام اطلاعات را کد میکنم(رمزنگاری)اما مشکل من در ذخیره این دادههاست که کجا ذخیره کنم که از database پاکشون نکنند ,.در غیر فعال کردن و فعال کردن مجدد برنامه هیچ اشکالی ندارم...
ممنون...
سلام
برای این قبیل اطلاعات غیر بانکی و جدولی نیاز حتمی به بانک اطلاعاتی نیست، میتوانید دیتا را به صورت یک فایل با پسوندی غیر معمول در کنار برنامه نگاه داری کنید ولی بالاخره این فایل هم قابل پاک شدن است...... اما مشکل من در ذخیره این دادههاست که کجا ذخیره کنم که از database پاکشون نکنند ...
چیزی که من گفتم آن بود که پاک شدن و فقدان وجود این اطلاعات اجازه نامه ای هم جزء فیوزهای از کار اندازی برنامه باشد!
یعنی در صورتی که کسی فایل مربوطه را که در کنار exe شما بوده پاک کند و برنامه در بالا آمدن خود فایل را پیدا نکند، از ادامه کار جلوگیری کند.
هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)