واضح آرشیو وب فارسی:سایت ریسک: mahdi7s24-07-2009, 01:14 AMسلام 1)اگه در ConnectionString رشته ی زیر رو اضافه کنم : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در صورتی که دیتابیس من اصلا یوزر پسورد نداشته باشه یا یه چیز دیگه باشه ولی بدون هیچ اروری کانکت میشه دلیلش چیه؟ 2)چرا برای drop کردن یه لوگین نباید از پسوردش استفاده کنیم؟ 3)چرا وقتی لوگین میسازم server explorer بدون گرفتن هیچ یوزر و پسوردی از من دیتابیس رو باز می کنه و اطلاعات توش رو بهم نشون میده؟ ممنون:11: _H2_24-07-2009, 11:34 AMسلام در صورتی که دیتابیس من اصلا یوزر پسورد نداشته باشه یا یه چیز دیگه باشه ولی بدون هیچ اروری کانکت میشه احتمالاً مشکل شما ناشی از انجا میشود که عبارت Integrated Security=SSPI را در رشته اتصال دارید، این عبارت خودکار امنیت را ویندوز میسپارد و درج User و Pass را نادیده میگیرد! 2)چرا برای drop کردن یه لوگین نباید از پسوردش استفاده کنیم؟ 3)چرا وقتی لوگین میسازم server explorer بدون گرفتن هیچ یوزر و پسوردی از من دیتابیس رو باز می کنه و اطلاعات توش رو بهم نشون میده؟ در این حالت شما به دیتابیس master و هسته اصلی SQLServer وصل میشوید، بدیهی است که رمز ورود master و SQLServer ربطی به رمز ورود دیتابیس شما ندارد !!! شما برای یک دیتابیس رمز گذاشته اید نه برای کل SQLServer ! دیتابیس master شما رمز ندارد تقصیر SQLServer نیست! اگر SSMS هم داشته باشید، حتماً دقت کردید که زمان لوگین user و pass را خالی رها میکنید. User و Pass مورد نیاز برای اتصال به هسته اصلی SQLServer در زمان setup آن قابل تنظیم است و اگر تنظیم نشود، امنیت به ویندوز و اکانتهای آن سپرده خواهد شد ... شما میتوانید در ویندوز چندین اکانت بسازید و برای اکانت های ویندوز مجوز دسترسی (تحت یک لوگین) به SQLServer صادر کنید، و انگاه هر کس با آن اکانت ویندوز وارد شود (و یعنی user و pass ورودی ویندوز را داشته باشد) برای SQLServer هم اهراز هویت میشود و دیگر نیازی به وارد کردن نام و رمز ندارد ... یک حالت امنیت یکپارچه با ویندوز است. اگر شما قصد دارید این روش را غیر فعال کنید و نیز یک user و pass برای دیتابیستان اختصاص دهید، میتوانید دستورات زیر را پیگیری کنید: (اخطار! ترتیب اجرا را تغییر ندهید!) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! شما احتمالاً یک login با نام WinComputerNameWinAccountName در SQLServer دارید که همین لوگین است که اجازه ورود شما بدون user و pass را میدهد. مثلاً اگر نام رایانه شما Vista 3000 باشد(!!!) و نام اکانت شما در ویندوز Mahdi77 باشد(!!!) شما یک لوگین با نام Vista 3000Mahdi77 در SQLServer دارید که باید یا حذف و یا حداقل غیر فعالش کنید. (حتماً اول لوگین sa را فعال و سپس این لوگین را غیر فعال کنید!) با پیگیری دستورات فوق دیگر برای ورود به SQLServer و هرکاری روی پایگاه master نیاز به رمز sa:123 وجود دارد. mahdi7s24-07-2009, 12:34 PMسلام 1)ممنون 2 و 3) در این حالت شما به دیتابیس master و هسته اصلی SQLServer وصل میشوید، بدیهی است که رمز ورود master و SQLServer ربطی به رمز ورود دیتابیس شما ندارد !!! شما برای یک دیتابیس رمز گذاشته اید نه برای کل SQLServer ! دیتابیس master شما رمز ندارد تقصیر SQLServer نیست! مگه همه اطلاعت دیتابیسم توی master هست؟ من نمی فهمم من روی دیتابیس رمز می زارم خوب چه ربطی به master داره؟ اصلا وقتی واسه یه دیتابیس لوگین می سازیم باید منتظر چه تغییری در دیتابیس باشیم؟ اگر شما قصد دارید این روش را غیر فعال کنید و نیز یک user و pass برای دیتابیستان اختصاص دهید، میتوانید دستورات زیر را پیگیری کنید: (اخطار! ترتیب اجرا را تغییر ندهید!) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! پس ساختن لوگین به چه دردی می خوره؟ _H2_24-07-2009, 01:37 PMسلام مگه همه اطلاعت دیتابیسم توی master هست؟ من نمی فهمم من روی دیتابیس رمز می زارم خوب چه ربطی به master داره؟ اصلا وقتی واسه یه دیتابیس لوگین می سازیم باید منتظر چه تغییری در دیتابیس باشیم؟ ربطش آنجاست که اطلاعات خود SQLServer در دیتابیس master ذخیره میشود! یعنی sqlserver برای ذخیره اطلاعات خود از خودش استفاده میکند. مثلاً کلیه اطلاعات بانک های attach شده (نام و فایل ها و...) ... اطلاعات امنتیتی شامل لوگین ها و... البته برخی موارد هم در جداول مخفی هر دیتابیس ذخیره میشوند.) پس ساختن لوگین به چه دردی می خوره؟ جهت امنیت دیتابیس ها ... مشکل شما با رمز خود sqlserver است؟ مشابه این سیستم امنیتی در ویندوز و سایر نرم افزارها هم وجود دارد! مثال: شما و برادرتان میتوانید هر کدام یک acount در ویندوز داشته باشید و هر کدام desktop و mydoc خودتان را هم داشته باشید و... و ظاهراً هیچ یک هم نمیتوانید بدون داشتن رمز دیگری وارد acount دیگری شوید... ولی معمولاً وقتی account ای اضافه میکنید گزینه administrator را هم فعال میکنید و هر دو شما در رایانه اختیارات administrator ای دارید (البته میشوید این اختیار را نداشته باشید) ... در این حالت و با داشتن اختیار فوق هر کدام در رایانه میتوانید هر کاری کنید! مثلاً نمیتوانید رمز دیگری را متوجه شوید ولی میتوانید رمز account او را حذف کنید یا عوضش کنید یا کل account اش را حذف کنید و... پس حتماً این هم مسخره خواهد بود! وقتی میتوانید رمز دیگری را عوض کنید خوب ... اما ... مشکل تفکر شما آن است که رایانه شخصی دارید و یا نمیدانید که آزادی عملتان در رایانه خودتان ناشی از چیست و یا گمان میکنید در هر رایانه ای اختیارات administrator ای پشت شماست! ===== اگر یک شبکه رایانه را در نظر بگیرید که سرور بانک sqlserver خود را به اشتراک سایر رایانه ها قرار داده و اکانت های administrator ای و سایر اکانتها همه رمز ورودی دارند و sqlserver هم خودش برای محکم کاری رمز دارد ... یک کلاینت بدون مجوز سرور نمیتوالند یک فیلد را تغییر دهد. (یادآور میشوم مجوزهای sqlserver برای تک تک فیلدهای جداول قابل تنظیم هستند.) ===== مطمئن باشید قابلیت های sqlserver را هنوز نشناختید، این بانک اطلاعاتی میتواند سرورهای مختلاف را در نقاط مختلف جهان به هم پیوند دهد و به کلاینت های از قطب جنوب تا شمال سرویس دهد ... مکانیزم های امنیتی آن هم برای این عمل طراحی و بهینه شده اند و اگر دنبال password ای مثل فایلهای zip و... میگردید، sqlserver از رمزهای عبوری مثل مدل access و فایلهای mdb.* و یا zip و... که درون خود فایلب دیتا صلی ذخیره میشوند پشتیبانی نمیکند. سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 711]