PDA

View Full Version : رمز نگاري ديتابيس و استفاده از آن



سیروس مقصودی
یک شنبه 19 اسفند 1397, 08:04 صبح
با سلام

من از sqlserver 2000 استفاده ميكنم . من چگونه ميتوانم روي ديتابيس رمز گذاشته و هنگام ورود به سيستم از طريق كدنويسي رمز را وارد كرده و وارد سيستم بشوم.
ولي كاربر نتواند بدون استفاده از سيستم يا از طريق خود sql از ديتابيس استفاده كند (كاربري كه رمز را در اختيار ندارد)

با تشكر ... خيلي ضروري است

isaac23
یک شنبه 19 اسفند 1397, 09:02 صبح
روی خود دیتا بیس که نمیشه رمز گذاشت شما باید یه یوزر جدید ایجاد کنید و رمز جدید روایجاد کنید و بعد بانکی که نیاز دارید رو بهش اضافه کنید و بعد با همون یوزر و رمز عبوری که ایجاد کردید وصل بشید

حداقل SQl2008 نصب کنید تا مشکل در نصب روی ویندوزهای جدید نداشته باشید 2000 روی ویندوز های جدید مشکل داره دوست عزیز
نسخه پیشنهادی من
SQL 2008R2

سیروس مقصودی
سه شنبه 03 اردیبهشت 1398, 13:11 عصر
با تشكر

من ميخواهم حتي كاربر كه يا نرم افزار erterprise manager sql sever وارد ديتابيس ميشه با وارد كد ورود ديتابيس مربوطه را بازنمايد بدون رمز نتونه به اطلاعات دست پيدا كنه

با تشكر ...

hp1361
چهارشنبه 04 اردیبهشت 1398, 08:03 صبح
با تشكر

من ميخواهم حتي كاربر كه يا نرم افزار erterprise manager sql sever وارد ديتابيس ميشه با وارد كد ورود ديتابيس مربوطه را بازنمايد بدون رمز نتونه به اطلاعات دست پيدا كنه

با تشكر ...

سلام

زمانیکه از پایگاه داده ای استفاده می کنیم که به اصطلاح DBMS خوانده می شوند، این بدان معنی است که وظیفه مدیریت بانک های اطلاعاتی رو به عهده یک نرم افزار خاص داده ایم که تمام کار رو خودش مستقلا انجام بده و به ما سرویس ارائه بده.
یعنی اینکه تمام موارد مربوط به بانک های اطلاعاتی از این به بعد بر عهده DBMS هست و مثل یک لایه و حوزه مجزا تمام کار ها رو باید انجام بده.
پس موارد امنیتی مورد نظر در داخل این لایه و یا حوزه معنی پیدا میکنه که باید پیاده سازی و اجرا بشه و بازهم این موارد بر عهده ی DBMS است.

در محدوده عملیاتی DBMS ای چون MSSQL، بحث Authentication و Authorize پیاده سازی شده است. به این معنا که برای ورود به پایگاه داده اولا باید شناسایی بشوید(همون رمز عبور و نام کاربری) و سپس بررسی بشه که به چه مواردی دسترسی داشته باشید.

لذا شما با تعریف کاربر و محدوده دسترسی ایشان میتونید کنترل رو انجام بدید.

در مورد رمزنگاری هم به همین منوال، وظیفه اجراش بر عهده DBMS هست که در MSSQL وجود دارد و هم بر روی پایگاه داده و هم بر روی جداول(فیلدها) قابل پیاده سازی است(با مدنظر قرار دادن این نکته که تمام این کارها توسط DBMS و با دستور و تعریف Admin اجرا می شود)

حال اگر منظور شما این است که حتی خود Admin هم نتواند وارد شود و یا اطلاعات Encrypt شده را بخواند، این شدنی نیست.

روال استاندارد بدین صورت است که کاربر Admin یک DBMS به همه چیز دسترسی دارد و در وجود این دسترسی اشکالی وجود ندارد. مهم این است که دسترسی سایر کاربران کنترل و بررسی شود.
لذا برای هر نرم افزاری که قرار است از پایگاه داده استفاده کند و به آن دسترسی داشته باشد، یک کاربر خاص و با دسترسی ها ی مورد نیاز که ضروری است(مثل دسترسی ثبت داده در بانک مربوط به خودش) تعریف شده و در اختیار برنامه نویس و Admin آن نرم افزار(در صورت لزوم) قرار داده می شود.

سیروس مقصودی
چهارشنبه 04 اردیبهشت 1398, 11:19 صبح
با تشكر

منظور من اين است كه وقتي هركاربري چه معمولي چه admin وقتي نرم افزار SQL Server Enterprise Manager را اجرا نمود و وقتي روي database مورد نظر كليك كرد ابتدا رمز را وارد كرده و سپس محتويات ديتابيس باز شود . admin كه رمز را ميدونه ولي يك كاربر معمولي وقتي وارد نرم افزار SQL Server Enterprise Manager ميشه و روي ديتابيس مورد نظر كليك كرد تا رمز را وارد نكرده محتويات ديتابيس باز نشه . چون كاربر معمولي از داخل نرم افزار كه نمي تونه اطلاعات را دستكاري كنه چون در داخل نرم افزار ( اپليكيشن حسابداري ) كنترلهاي خودشو داره . مگر اينكه كاربر بخواد از داخل نرم افزار SQL Server Enterprise Manager خود SqlServer اينكار را انجام بده .

با تشكر ...

یوسف زالی
یک شنبه 08 اردیبهشت 1398, 14:10 عصر
خب این به بخش دلفی چه ارتباطی داره؟ باید در بخش اس کیو ال مطرحش کنید.

سیروس مقصودی
یک شنبه 08 اردیبهشت 1398, 14:52 عصر
اگر موفق بشم به ديتابيس رمز بدم و وقتي كه ميخواهم با برنامه به ديتابيس وصل بشم چگونه ميتوانم از طريق كد نويسي كد كاربري و رمز را به sqlserver بفرستم تا ديتابيس مورد نظر را باز كنم ؟

یوسف زالی
یک شنبه 08 اردیبهشت 1398, 21:07 عصر
پسوردی رو که مثلا برای sa ست کردید برای یوزر جدید ست می کنید و با همون ها هم کانکشن استرینگ درست می کنید.