কোনও ব্যবহারকারীকে নির্বাচন করুন এবং তাদেরকে db_datareader ভূমিকাতে যোগ করার মধ্যে কি পার্থক্য রয়েছে?


9

আমি দান করতে অনুরোধ করা হয়েছে SELECT, INSERTএবং UPDATEএকটি ডাটাবেসের মধ্যে সমস্ত টেবিলের জন্য কোনো নির্দিষ্ট ব্যবহারকারীর জন্য। আমি ব্যবহারকারীকে যুক্ত করা db_datareaderএবং তাদের INSERTএবং UPDATEডেটাবেস স্তরে মঞ্জুরি দিয়ে শেষ করেছি ।

কিন্তু এটি আমাকে ভাবতে পেরেছিল, SELECTএকটি ডাটাবেস পর্যায়ে ব্যবহারকারীর অনুমতি দেওয়ার বা তাদের db_datareaderভূমিকায় যুক্ত করার মধ্যে পার্থক্য কী (যদি থাকে) ? এবং কোন উপায় বা অন্য কোন ভাল অনুশীলন আছে?

উত্তর:


7

রিক বাইহামের একটি WIKI পোস্ট রয়েছে যা স্থির সার্ভার এবং স্থির ডাটাবেসের ভূমিকা এবং তারা কীভাবে মানচিত্র দেখায়। আপনি এখানে দেখতে পারেন: http://social.technet.microsoft.com/wiki/contents/articles/database-engine-fixed-server-and-fixed-database-roles.aspx

চার্টটি দেখায় যে db_datareader ভূমিকা গ্রান্ট সিলেক্ট অন [ডাটাবেস] এর সমান । সুতরাং এটি ব্যবহার করা এখনও ঠিক আছে, তবে পরামর্শটি হ'ল সেই ভূমিকাগুলি থেকে আরও দানাদার কমান্ডগুলিতে সরে যাওয়া। অন্যান্য কিছু স্থির ডাটাবেসের ভূমিকা বেশিরভাগ মানুষের জন্য কম স্পষ্টভাবে সংজ্ঞায়িত করা হয়। অধিকারের প্রতিবেদন করার সময় সুস্পষ্ট কমান্ড ব্যবহারের ফলে আরও বেশি স্পষ্টতা পাওয়া যায়।

স্পষ্টতই আপনি জানেন যে কীভাবে সূক্ষ্ম দান করা অনুমতি দেওয়া হয়। আমি যখনই সম্ভব পুরানো ভূমিকাগুলি থেকে breakিলে .ালা চেষ্টা করছি, তবে db_owner (উদাহরণস্বরূপ) ভাঙা একটি কঠিন অভ্যাস।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.