ايس ايم ايس ۾ صارفين ۽ روڊن لاء رسائي ڪنٽرولس

سيڪيورٽي کي ڊيٽابيس جي منتظمين جو اهو ڄاڻايو ويو آهي ته پنهنجي گيگا بائيوٽيڪل ڪاروبار ڊيٽا کي بچائڻ جي اکين مان غير معياري ٻاهران ۽ ان جي حاڪمن کي پنهنجو اختيار وڌائڻ جي ڪوشش کان بچائڻ لاء. تمام لاڳاپو ڊيٽابيس مينيجمينٽ سسٽم انهن خطرن کي گهٽائڻ لاء ڊزائين ڪيل سيڪيورٽي حفاظتي طريقي سان مهيا ڪن ٿا. اهي Microsoft Access جي پيچيده صارف / رول جي تعمير ڏانهن پيش ڪيل سادي پاسورڊ حفاظت کان حد تائين ترقي يافته ڊيٽابيسس وانگر Oracle ۽ Microsoft SQL Server. اهو مقالو سڀني ڊيٽابيسس ۾ عام سيڪيورٽي ميڪانيزم تي ڌيان ڏئي ٿو جيڪو منظم ڪيل سوال ٻولي (يا ايس ايس پي ) کي لاڳو ڪندو. گڏو گڏ، اسين توهان جي ڊيٽا جي سنڀال سنڀالڻ ۽ توهان جي ڊيٽا جي حفاظت کي يقيني ڪرڻ جي عمل جي ذريعي هلندا سين.

صارفين

سرور جي بنياد تي ڊيٽابيس سڀني سڀني صارفن جو تصور انهي جي حمايت ڪري ٿو جيڪو ڪمپيوٽر آپريٽنگ سسٽم ۾ استعمال ٿيندو آهي. جيڪڏهن توهان Microsoft / ون يونٽ ۽ ونڊوز 2000 ۾ ملندڙ صارف / گروپ جو دارومدار سان واقف آهيو، ته توهان ڳولي سگھو ٿا ته صارف / رول گروپون جيڪو SQL Server ۽ Oracle طرفان سهڪار سان بلڪل ساڳيا آهن.

اهو انتهائي صلاح ڏني وئي آهي ته توهان پنهنجي ذاتي ڊيٽابيس جي صارف وارو اڪائونٽ ٺاهي هر ماڻهو لاء جيڪو توهان جي ڊيٽابيس تائين رسائي ڪري سگهندو. ٽيڪنيڪل طور تي ممڪن آهي صارفين جي وچ ۾ اڪائونٽن کي حصيداري ڪرڻ يا هر قسم جي صارف لاء توهان جي ڊيٽابيس تائين پهچائڻ جي ضرورت هوندي آهي، پر مان هن پروسيس کي ٻه سببن جي لاء حوصلا افزائي ڪري ٿو. سڀ کان پهريان، انفرادي احتساب کي ختم ڪنداسين- جيڪڏهن صارف توهان جي ڊيٽابيس ۾ تبديلي آڻي (پاڻ کي هڪ $ 5،000 وڌائي ڇڏيندي) کي ڏيو، ته توهان ان جي ڳولا جي حساب جي استعمال وسيلي ڪنهن مخصوص شخص کي واپس ڪرڻ جي قابل نه هوندا. ان کان علاوه، جيڪڏهن هڪ مخصوص صارف توهان جي تنظيم کي ڇڏي ٿو ۽ توهان پنهنجي ڊيٽابيس مان سندس رسائي کي ختم ڪرڻ چاهيندا، توهان کي اهو پاسورڊ تبديل ڪرڻو پوندو جيڪو سڀني صارفن تي ڀروسو آهي.

صارف جو اڪائونٽ ٺاهڻ لاء طريقا پليٽ فارم پليٽ فارم تان مختلف آهن ۽ توهان کي درست طريقي سان توهان جي ڊي بي ايس خاص دستاويزن سان صلاح ڪرڻو پوندو. Microsoft SQL سرور صارفين کي اسپ_ڊورسر ذخيرو ٿيل طريقي جي استعمال جي تحقيق ڪرڻ گهرجي. اورلڪس ڊيٽابيس منتظمين کي CREATE USER ڪنٽمنٽ مددگار ملندا. توهان شايد شايد متبادل جي تصديق جي منصوبن جي تحقيقات ڪرڻ چاهيندا. مثال طور، Microsoft SQL سرور ونڊوز NT انٽيليٽيڊ سيڪيورٽي جي استعمال جي حمايت ڪري ٿو. هن منصوبي جي تحت، صارفين پنهنجي ونڊوز NT صارف اڪائونٽس جي طرفان ڊيٽابيس جي سڃاڻپ ڪري رهيا آهن ۽ ڊيٽابيس تائين رسائي لاء اضافي صارف ID ۽ پاسورڊ داخل ڪرڻ جي ضرورت نه هوندي آهي. اها طريقي سان ڊيٽابيس منتظمين جي وچ ۾ انتهائي مقبول آهي ڇو ته اها اڪائونٽ انتظام جي نيٽورڪ انتظاميه اسٽاف کي تبديل ڪري ٿي ۽ اهو صارفين کي هڪ سائن ان جي آسان بڻائي ٿو.

روڊن

جيڪڏهن توهان هڪ ماحول ۾ ننڍن صارفن سان آهيو، ته شايد شايد توهان کي توهان جي ضرورتن لاء ڪافي اڪاؤنٽ ٺاهڻ ۽ انهن کي اجازت ڏيڻ جي اجازت ڏني ويندي. بهرحال، جيڪڏهن توهان وٽ وڏو صارف آهي، توهان سڀ کان وڌيڪ احتساب اڪائونٽ ۽ مناسب اجازت برقرار رکڻ جي بوجھ کان مٿي ڪيو ويندو. هن تڪليف کي آسان ڪرڻ لاء، لاڳاپو ڊيٽابيس جي ڪردار جي تصور کي هٿي ڏئي. ڊيٽابيس جي رول جي جوڙجڪ ساڳي طرح Windows NT گروپ تائين. صارف جو اڪائونٽ ڪردار (ن) کي مقرر ڪيو ويو آهي ۽ اجازت انهيفرادي صارف اڪائونٽس جي ڀيٽ ۾ مجموعي طور تي مقرر ڪيو ويو آهي. مثال طور، اسان هڪ DBA ڪردار ٺاهي سگهو ٿا ۽ پوء اسان جي انتظامي اسٽاف جي صارف اڪائونٽ کي هن ڪردار ڏانهن شامل ڪري سگهون ٿا. هڪ دفعو اسان اهو ڪيو، اسان موجوده (۽ مستقبل جي) منتظمين کي صرف مخصوص اجازت جي اجازت ڏين ٿا جيڪو صرف انهي اجازت جي اجازت کي ترتيب ڏيندي آهي. هڪ ڀيرو ٻيهر، ڪردار ٺاهڻ جي طريقيڪار پليٽ فارم تان پليٽ فارم تان مختلف آهي. ايس ايم ايس اي ايس سرور منتظمين کي سپ_ڊڊيل اسٽوريج طريقيڪار جي تحقيقات ڪرڻ گهرجي جڏهن ته اوراچ ڊي ايف سي کي CREATE ROL نائيڪ استعمال ڪرڻ گهرجي.

اجازت ڏيڻ جي اجازت

هاڻي ته اسان اسان جي ڊيٽابيس ۾ صارف شامل ڪيو، اهو وقت جي حفاظت شامل ڪندي سيڪيورٽي کي مضبوط ڪرڻ جو وقت آهي. اسان جو پهريون قدم اسان جي صارفن لاء مناسب ڊيٽابيس جي اجازت ڏيڻ جي لاء هوندي. اسين هن کي ايس ايم ايس جي گارنٽي بيان جي ذريعي استعمال ڪندي.

هتي بيان جي نحو آهي:

GRANT <اجازت>
[ON <ٽيبل>]
<استعمال ڪندڙ / ڪردار> ڏانهن
[گراهڪ جي اختيارن سان]

هاڻي اچو ته هن بيان جي لڪير تي هڪ نظر وٺو. پهرين لڪير، گرانٽ <اجازت>، اسان کي مخصوص ٽائيم اجازتون مقرر ڪرڻ جي اجازت ڏئي ٿو جيڪا اسان حاصل ڪري رهيا آهيون. اهي يا ته ميبل ميز جي اجازت هجن (جهڙوڪ چونڊيو، انڪوٽ، تازه ڪاري ۽ حذف ڪريو) يا ڊيٽابيس جي اجازتون (جهڙوڪ CREATE جدول، ALTER DATABASE ۽ گريٽ). هڪ کان وڌيڪ اجازت جي اجازت کان وڌيڪ اجازت ڏئي سگهجي ٿو، پر جدول جي سطح جي اجازت ۽ ڊيٽابيس-سطح جي اجازت هڪ واحد بيان ۾ گڏيل نه ٿي سگھي.

ٻيو لڪير، پر <ٽيبل>، ميز جي سطح جي اجازت لاء متاثر ميز کي خاص ڪرڻ لاء استعمال ڪيو ويندو آهي. هي لڪير ختم ٿي ويو آهي جيڪڏهن اسان ڊيٽابيس-سطح جي اجازت ڏنيون آهن. ٽيون لائن صارف يا ڪردار بيان ڪري ٿو جيڪا اجازت ڏني وئي آهي.

آخرڪار، چوٿون لڪير، گارنٽ جي اختيارن سان، اختياري آهي. جيڪڏهن هن قطار جي بيان ۾ شامل آهي، صارف متاثر پڻ ٻين صارفن کي ساڳئي اجازت ڏيڻ جي اجازت ڏئي ٿي. اهو نوٽ ڪريو ته گريٽ جي اختيارن سان واضح نه ٿي ڪري سگهجي جڏهن اجازت ڏني وئي آهي هڪ ڪردار کي.

مثال

اچو ته ڪجھ مثالن تي نظر اچن. اسان جي پهرين منظر ۾، اسان تازو 42 ڊيٽا داخلا آپريٽرز جو هڪ گروپ مقرر ڪيو آهي جيڪو صارفين رڪارڊ کي شامل ۽ برقرار رکڻ وارو هوندو. انهن کي صارفين جي جدول ۾ معلومات تائين رسائي جي ضرورت پوندي، انهي ڄاڻ کي تبديل ڪري ۽ ٽيبل تي رڪارڊ شامل ڪرڻ جي ضرورت آهي. انهن کي مڪمل طور تي ڊيٽابيس مان رڪارڊ ختم ڪرڻ جي قابل نه هجي. پهريون، اسان هر آپريٽر لاء صارف اڪائونٽ ٺاهڻ گهرجي ۽ پوء انهن سڀني کي نئين ڪردار ڏانهن شامل ڪرڻ گهرجي، DataTntry. اڳيون، اسان هيٺين SQL اجازت ڏيڻ لاء مناسب اجازت ڏيڻ لاء استعمال ڪرڻ گهرجي:

گریعت منتخب ڪريو، انٽرويو، تازه ڪاري
صارفن تي
ڊيٽا ڏانهن وڃڻ لاء

۽ اهو سڀ ڪجهه اهو ئي آهي! هاڻي اچو ته هڪ مقدمو کي معائنو ڪريون جتي اسان ڊيٽابيس-سطح جي اجازت ڏني آهي. اسان کي DBA جي ميمبرن جي اجازت ڏيڻ چاهيندا ته اسان جي ڊيٽابيس ۾ نئين جدول شامل ڪرڻ لاء. ان کان علاوه، اسين انهن چاهيندا آهيون ته ٻين ساڳين صارفن جي اجازت ڏيڻ جي اجازت ڏينداسين. هتي SQL بيان آهي:

گانٽ ٺاهيو ٽيبل
DBA ڏانهن
گارنٽ جي منصوبه بندي سان

اها ڳالهه آهي ته اسان گارنٽ OPTION لائن سان شامل ڪيو آهي انهي جي پڪ ڪرڻ لاء اسان جي ڊي بي بي ٻين صارفن کي هن اجازت کي تفويض ڪري سگهي ٿو.

ختم ڪرڻ جي اجازت

هڪ دفعو اسان کي اجازت ڏني وئي آهي، اهو عام طور تي ان کي آخري تاريخ ۾ ان کي رد ڪرڻ ضروري آهي. خوش قسمت، SQL اسان کي منظور ٿيل اجازتن کي ختم ڪرڻ لاء ريورسيو آرڊر سان مهيا ڪري ٿو. هتي نحو آهي:

جائزو وٺو [گريجوشن جي لاء طريقيڪار] <اجازتون
پر <ٽيبل>
<صارف / ڪردار> کان

توهان کي خبر پوي ٿي ته هن حڪم جي نحو هن جي جيتري حيثيت جي برابر آهي. رڳو فرق اهو آهي ته گارنٽ OPTION جي حڪم جي آخر ۾ رييووڪ ڪنڊر لائن تي بيان ٿيل آهي. مثال طور، اچو ته تصور ڪريون ٿا ته اسين مريم جي اڳ ۾ اجازت ڏني وئي آهي ته صارف جي ڊيٽابيس جي رڪارڊ کي ختم ڪرڻ جي اجازت ڏينداسين. اسان ھيٺ ڏنل حڪم استعمال ڪيو ٿا:

ريويو ختم ڪريو
صارفن تي
مريم کان

۽ اهو سڀ ڪجهه اهو ئي آهي! هتي هڪ اضافي ميڪانيزم آهي جيڪا مائڪروسافٽ ايس ايس ايس سرور سرور جي حمايت ڪئي جيڪا DENY حڪم ڏنل آهي. اهو حڪم واضح طور تي صارف جي اجازت کان انڪار ڪرڻ لاء استعمال ڪري سگهجي ٿو جيڪا شايد ٻي صورت ۾ موجوده يا مستقبل جي ڪردار جي رڪنيت ذريعي هجي. هتي نحو آهي:

DENY <اجازت>
پر <ٽيبل>
<استعمال ڪندڙ / ڪردار ڏانهن

مثال

اسان جي پوئين مثال ڏانهن موٽڻ، اچو ته سوچيو ته مريم مينيجر ڪردار جو ميمبر پڻ هو، جيڪو پڻ توهان جي مرچنز جي ٽيبل تائين رسائي هئي. پوئين ريارويو بيان ميز تائين پهچ تائين پهچائڻ لاء ڪافي نه هجن ها. اهو اجازت اجازت ڏئي ته هن جي صارف حساب کي ھدف بنائڻ واري گرينٽٽٽيٽٽٽٽٽٽٽٽٽ جي ذريعي، پر منفيجر رول ۾ ان جي رڪنيت جي ذريعي اجازت حاصل نه ٿيندي. تنهن هوندي، جيڪڏهن اسين هڪ بيان ڪيل بيان کي استعمال ڪنداسين ته ان جي اجازت جي هن وراثت کي روڪيندي. هتي حڪم ڪيو ويو آهي:

DENY DELETE
صارفن تي
مريم ڏانھن

DENY حڪم لازمي طور تي ڊيٽابيس جي رسائي ڪنٽرول ۾ "منفي اجازت" پيدا ڪري ٿي. جيڪڏهن اسان بعد ۾ واپارين جي ميز تان قطار کي ختم ڪرڻ جي اجازت ڏني ته اسان مريم کي استعمال نٿا ڪري سگهون. اهو حڪم موجوده DENY طرفان فوري طور تي ختم ڪيو ويندو. ان جي بدران، اسين پهريون ڀيرو منفي اجازت داخلا کي هٽائڻ لاء ريويويو حڪم استعمال ڪري سگهون ٿا:

ريويو ختم ڪريو
صارفن تي
مريم کان

توهان کي اها خبر پوي ٿي ته هي حڪم هڪ ئي صحيح آهي جنهن کي مثبت اجازت ختم ڪرڻ لاء استعمال ڪيو ويندو آهي. ياد رهي ته DENY ۽ GRANT ٻنهي طرح ساڳي فيشن ۾ ڪم ڪري ٿو * ميڊيڪ؛ اهي ٻنهي کي اجازت (مثبت يا منفي) ٺاهي وٺن ته ڊيٽابيس جي رسائي ڪنٽرول واري ميکانيزم ۾. رييوويو آرڊر مخصوص صارف لاء تمام مثبت ۽ منفي اجازت ختم ڪري ٿو. هڪ دفعو هي حڪم جاري ڪيو ويو آهي، مريم ميز جي قطار کي ختم ڪرڻ جي قابل ٿي ويندا آهن که چيرته اها اجازت آهي. ٻيو، هڪ GRANT جو حڪم DELETE اجازت سڌو سنئون پنهنجي اڪائونٽ فراهم ڪرڻ لاء جاري ڪري سگهجي ٿو.

هن مضمون جي دوران، توهان رسائي ڪنٽرول ميڪانيزم جو معياري سوال ٻولي جي حمايت سان سٺو سودا ڪيو آهي. اهو تعارف توهان کي سٺو ٿيندڙ نقطي فراهم ڪرڻ گهرجي، پر مان توهان کي توهان جي ڊي ڊي ايس ايس دستاويزن کي توهان جي سسٽم پاران ڪيل بهتر ڪيل حفاظتي تدابير کي سکڻ لاء حوصلہ افزائي ڪري ٿو. توهان کي ڏسندا ته ڪيترا ئي ڊيٽابيسس وڌيڪ ترقي يافته رسائي ڪنٽرول جي حمايت ڪن ٿيون، جهڙوڪ مخصوص کالم تي اجازت ڏيو.