উত্পাদনে আমার সুবিধাগুলি হ্রাস করার বিষয়ে কোনও নির্দেশক কিন্তু আমার কাজকে অত্যধিক কঠিন করে তুলছেন না


9

উইন্ডোজ 2008 আর 2 এ এসকিউএল সার্ভার 2005 এবং 2008 চলছে।

আমরা বিকাশকারীদের জন্য উত্পাদনের সুবিধাগুলি হ্রাস করতে যাচ্ছি - এবং আমি নিজের জন্য ডিবিএ হিসাবে একই কাজ করতে চাই, উত্পাদনের অধিকার সীমাবদ্ধ করে এবং প্রয়োজনে উন্নত করতে চাই

আমার প্রাথমিক লক্ষ্য হ'ল বোকা ভুলগুলি নির্মূল করা - ডিবিএ দ্বারা তৈরি , ডিভোপাররা সর্বাধিক উত্পাদনে অ্যাক্সেস পড়তে পারবে। আমরা এমন সুপারহিরোদের মতো অভিনয় করতে পছন্দ করি যা ভুল করতে পারে না, তবে সারাক্ষণ উত্পাদন অধিকার না থাকা অর্থহীন এবং এটি একটি সেরা অনুশীলন, যা কেউ কেউ সুপারিশ করেছেন।

সেরা পদ্ধতির কি? প্রতিদিন এবং ইনস্টলেশনের সময় ব্যবহার করা সবচেয়ে কম বেদনাদায়ক কী হবে?

বর্তমানে আমাদের ডিবিএর জন্য একটি উইন্ডোজ গ্রুপ রয়েছে যা আমাদের সার্ভার এবং ডেটাবেসগুলির সকলের অধিকার রয়েছে has

আমি ওএস / রিমোট লগইন অনুমতিগুলি হ্রাস করতে আগ্রহীও - তবে আমি ডিবি অধিকার নিয়ে সবচেয়ে বেশি উদ্বিগ্ন।

আমি অনুমান করছি যে আমাদের পুরানো লগইন-এর এসএ অধিকারগুলি কেড়ে নেওয়ার আগে আমাদের সাউন্ড ট্রেসগুলি চালানোর জন্য উন্নত প্রাইভেস এবং সম্ভবত কিছু মালিকানা পরিষ্কারের দরকার হবে। আমরা অন্য কোন সমস্যা আশা করতে পারি?

আপনার পরামর্শ এবং আপনার অভিজ্ঞতা ভাগ করে নেওয়ার জন্য ধন্যবাদ!


আপনি কোন ডাটাবেস প্ল্যাটফর্ম (গুলি) ব্যবহার করছেন (এসকিউএল সার্ভার, ওরাকল, ডিবি 2, মাইএসকিউএল, ইত্যাদি)? আপনি কি ডাটাবেস সুবিধার কথা বলছেন? নাকি অপারেটিং সিস্টেমের সুবিধা?
জাস্টিন গুহ

এটা সাহায্য করবে, তাই না? এসকিউএল সার্ভার 2005/2008। ডিবি এবং ওএস উভয় ক্ষেত্রেই আগ্রহী।
স্যাম

আমরা এখানে কোন ধরনের বোকা ভুল বলছি? আমি যে একমাত্র মূল্যবান সুরক্ষা ব্যবস্থাটি পেয়েছি সেটি হ'ল PRODহলুদ বর্ণযুক্ত সমস্ত উত্পাদন মেশিনে ডেস্কটপ ব্যাকগ্রাউন্ড সেট করা । কারণ আমার দীর্ঘ অভিজ্ঞতায় "সুরক্ষা" পদক্ষেপগুলি যা কেবলমাত্র মানুষকে বিরক্ত করে তা কেবল চারপাশে কাজ করা হবে এবং যখন কোনও সংকট দেখা দেয় তখন কেবল আপনাকে ধীর করে দেবে। আপনি যে অবস্থানে অ্যাকাউন্টের প্রয়োজন সেখানে আপনি সত্যিই থাকতে চান না saএবং পাসওয়ার্ডটি কেউ মনে করতে পারে না ...
গাইস

হ্যাঁ, আমি আমার ডেস্কটপটি সার্ভারে লাল এবং ডেভের উপরে সবুজ রেখেছি। আমি বেশিরভাগ এসএসএমএসে ডেটা পরিবর্তন সংক্রান্ত ভুল সম্পর্কে ভাবছি।
স্যাম

উত্তর:


2

আদর্শভাবে, একটি অপারেশনাল প্রোডাকশন ডাটাবেসের জন্য, আপনি বিকাশকারীদের সার্ভার বা এটিতে কোনও ডাটাবেসের কোনও অ্যাক্সেস থাকতে চান না। এই ধরণের জিনিসটি SOX সম্মতি জন্য আপনাকে প্রথমে করতে হবে ।

হয় অধিকার সাজানোর যে userIDs অধীনে চালানোর জন্য, শুধুমাত্র অধিকার তারা সত্যিই থাকা উচিত db_datareader, db_datawriterএবং স্পষ্ট GRANT EXECUTE ON x TO y(প্রতিটি সঞ্চিত proc এবং ব্যবহারকারী সংজ্ঞায়িত ফাংশন জন্য xআইডি জন্য y)।

যদি আপনাকে প্রযোজনায় ট্রেস চালানোর দরকার হয় তবে আপনার কিছু সমস্যা রয়েছে এবং এটিকে সমস্ত ব্যাখ্যা করতে এটি একটি দুর্দান্ত প্রাচীর take গ্রন্থটি লাগবে। আমার প্রথম সুপারিশটি হ'ল একটি QA পরিবেশ যা ঠিক যেমন উত্পাদনের মতো লক হয়ে যায় এবং যদি ট্রেসগুলি চালানোর দরকার হয় তবে প্রোড ডিবি এর ব্যাক-আপটি কিউএতে পুনরুদ্ধার করুন এবং সেখানে ট্রেসগুলি চালান। আবার আপনার যদি SOX, HIPAA বা PCI-DSS প্রয়োজনীয়তা থাকে তবে আপনি প্রোড ডেটা কিউএতে পুনরুদ্ধার করার আগে আরও ভাল করে স্যানিটাইজ করবেন।

বর্তমানে আমাদের ডিবিএর জন্য একটি উইন্ডোজ গ্রুপ রয়েছে যা আমাদের সার্ভার এবং ডেটাবেসগুলির সকলের অধিকার রয়েছে has

তাদের লগন দিন এবং ডেটা অধিকার দেখুন; তবে ডিবিএলি দায়িত্ব পালনের জন্য, উন্নত সুবিধাসমূহের সাথে একটি পৃথক লগইন ব্যবহার করুন। আমি একজন আর্থিক গ্রাহককে জানি যা এটি করে - নিয়মিত উইন্ডোজ প্রমাণীকরণ ভিত্তিক লগইনগুলি অসাবধানতাবশত তারা করতে পারে এমন ক্ষতির মধ্যে সীমাবদ্ধ ছিল। পুনরুদ্ধার এবং ডিএমএল চালনার জন্য পৃথক এসকিউএল প্রমাণীকরণ লগইন সহ চলমান প্রয়োজন।

একটি সরকারী সংস্থা আমি প্রতিটি সার্ভার / ডিবি প্রশাসকের জন্য পৃথক 2 টি পৃথক লগইন নিয়ে কাজ করি। সুতরাং যদি Tangurenaআমার ডোমেন লগইন হয় (এই লগইনটিতে নিয়মিত Userসুযোগ-সুবিধাগুলি TangurenaAdminথাকত ), তবে আমার পৃথক Administratorলগইন হবে। আপনি যদি সর্বদা আপনার অ্যাডমিন অ্যাকাউন্টটি ব্যবহার করেন তবে আপনি সমস্যার মধ্যে পড়েছেন তবে তারপরে এটি অন্য জিনিসের কাছে অনুমতিের অভাব রয়েছে (যেমন কোনও ইমেল নেই Oh ওহ, আপনি বলেন যে এটি একটি খারাপ জিনিস ... )।

আমি যে বর্তমান সরকারী এজেন্সি নিয়ে কাজ করছি তাতে প্রতিটি সার্ভার / ডিবি অ্যাডমিন রয়েছে স্ট্যান্ডার্ড ব্যবহারকারীর উপরে উন্নতি করার অধিকারী, তবে বেশিরভাগ অ্যাডমিন নয় (এটিকে PowerUserগ্রুপ হিসাবে ভাবেন ) think ডোমেন অ্যাডমিন ফাংশনগুলি একটি ভাগ করা ডোমেন অ্যাডমিন অ্যাকাউন্ট দিয়ে সম্পাদিত হয়।

একটি সাধারণ ত্রুটিটি ভুল ডাটাবেস পুনরুদ্ধার করা (যেমন QA উত্পাদন সার্ভারের উপর পুনরুদ্ধার করা), এবং এটি সীমাবদ্ধ অধিকার বা একাধিক লগইনের মাধ্যমে সমাধান করা যাচ্ছে না। সম্ভাব্য ধ্বংসাত্মক জিনিসগুলি জোড়ায় জোড় করা ঝুঁকি হ্রাস করার একটি উপায়।

আমি অনুমান করছি যে সা হিসাবে ট্রেস চালানোর জন্য আমাদের উন্নত মিক্স দরকার

না। আপনার কেবলমাত্র বিকল্প ট্র্যাকের অনুমতি প্রয়োজন:
http://msdn.microsoft.com/en-us/library/ms187611.aspx


প্রশ্নে সাহসী বিভাগটি পড়ুন দয়া করে।
স্যাম

একটি ভাল উত্তর সরবরাহ করার জন্য ধন্যবাদ - এবং আপনার অতীত থেকে নির্দিষ্ট। অনেক প্রশংসিত.
স্যাম

আপনি সম্ভবত ট্র্যাক্ট অল্টারেট মানে?
স্যাম

@ সাম, স্থির ....
টাঙ্গুরেনা

3

প্রথমে, আমি আপনাকে এমন কোনও উন্নয়ন বা কিউএ পরিবেশে সমস্ত সুবিধাযুক্ত খেলা করার পরামর্শ দিচ্ছি যেখানে অ্যাক্সেস কিছু সময়ের জন্য সরানো থাকলে কোনও সমস্যা নেই। অ্যাপ্লিকেশনগুলিতে সুরক্ষা নিয়ে কোনও সমস্যা নেই কিনা তা আপনাকে দেখতে হবে।

আমি আপনাকে আমাদের অভ্যন্তরীণ পদ্ধতির কথা বলব:

  • সমস্ত অ্যাপ্লিকেশন একটি একক ডোমেন ব্যবহারকারীর ব্যবহার করে যা একটি ডাটাবেসে প্রয়োজনীয় অনুমতি দেওয়া হয় (সাধারণত db_owner ডাটাবেস ভূমিকা)।

  • মাঝে মাঝে ডেটা পড়ার জন্য আমরা একটি এসকিউএল লগইন ব্যবহার করি। এই ব্যবহারকারীর জন্য আমরা ডাটাবেস ভূমিকা অর্পণ করি - db_datareader। এটি এখানে মূল ডেটাবেস ক্লাস্টারের বিকাশকারীদের অ্যাক্সেস শেষ করে। তাদের কাছে থাকা অন্য যে কোনও ধারণার জন্য, তারা মধ্যরাতে সম্পন্ন প্রধান সার্ভার ডাটাবেসের অনুলিপি (লগ শিপিং ব্যবহার করে সম্পন্ন) রিপোর্টিং সার্ভার ডাটাবেস ব্যবহার করবে। হত্যাকারী অ্যাডহক কোয়েরিগুলির সাথে প্রতিবেদনকারী সার্ভারটিকে হত্যা না করার জন্য আমরা মেমরি এবং সিপিইউর জন্য সংস্থান গ্রুপগুলি বরাদ্দ ব্যবহার করি।

  • ডিবিএ দলের জন্য আমাদের একটি ডোমেন গ্রুপ রয়েছে যার মেশিন এবং সার্ভারে সমস্ত সুবিধা রয়েছে (উইন্ডোজ মেশিনে অ্যাডমিন এবং এসকিউএল সার্ভারে সিসাদমিন)

  • ইনস্টলেশনের জন্য আমাদের কাছে একটি এসকিউএল ব্যবহারকারী রয়েছে যা আপডেটগুলি চালনার সময় আমরা যে ডেটাবেজে ব্যবহার করি সেগুলিতে db_owner - আমরা স্কিমা পরিবর্তনগুলি নিরীক্ষণ করতে ডিডিএল ট্রিগার ব্যবহার করি এবং আমাদের দেখতে হবে যে ইনস্টলেশনের সময় বা পৃথক পরিবর্তন হিসাবে কোন পরিবর্তনগুলি করা হয়েছিল

  • অভিজ্ঞ বিকাশকারীদের জন্য মাঝে মাঝে কিছু ব্যতিক্রম রয়েছে, তবে তাদের প্রয়োজনীয়তা পূরণের পরে আমরা তাদের অ্যাক্সেস সরিয়ে ফেলি - তারা তাদের ডোমেন লগইনের ভিত্তিতে অনুমতি গ্রহণ করে, তাই আমরা ট্রেস / ডিডিএল ভিউতে সংযোগগুলি এবং ডিডিএল ট্রিগারগুলির সাথে কোনও সম্ভাব্য পরিবর্তন পর্যবেক্ষণ করতে পারি।

লগইন এবং ব্যবহারকারীদের সাথে এই সমস্ত কাজ করার উপায় হিসাবে - সার্ভার সুরক্ষা ফোল্ডারে ম্যানেজমেন্ট স্টুডিওতে আপনি প্রয়োজনীয় সমস্ত লগইন তৈরি করেন এবং তারপরে, আপনি তাদের আপনার ডাটাবেসের সাথে যুক্ত করে তাদের প্রয়োজনীয় ভূমিকা দিন give আপনি যদি ক্রিয়াটির স্ক্রিপ্ট করেন আপনি দেখতে পাবেন যে প্রাথমিকভাবে এটি একটি সার্ভার লগইন তৈরি করা হবে, তারপরে সেই লগইনের সাথে সংযুক্ত একটি ডাটাবেস ব্যবহারকারী, তারপরে সেই ব্যবহারকারীর জন্য একটি ডাটাবেস ভূমিকা বরাদ্দ করে। আপনি স্ক্রিপ্টটি আপনার স্ক্রিপ্ট সেটে রাখতে পারেন, যাতে আপনি যাচাই করতে পারবেন প্রতিবার ব্যবহারকারীদের কীভাবে লাথি মারা হবে এবং কোনটি হওয়া উচিত নয়।


প্রশ্নটি আবার পড়ুন। আপনার কেউ প্রত্যেকে দূর থেকেও ঘনিষ্ঠ হয়ে উঠছেন না।
স্যাম

আমি বলতে পারি যে আমরা বিষয়ে জবাব দিয়েছি, কারণ কেবল একটি শক্তিশালী নীতিই আপনাকে সুরক্ষিত রাখবে। এমনকি আপনি, ডিবিএ হিসাবে, আপনি কী এবং কখন করেছেন তা জানতে সক্ষম হবেন। সাধারণ ক্রিয়াকলাপের জন্য, আপনার ব্যবহারকারী বা কেবলমাত্র পঠনকারী ব্যবহারকারী ব্যবহার করুন, ইনস্টলেশন কাজের জন্য নির্দিষ্ট ব্যবহারকারীর ব্যবহার করুন, বিকাশকারীদের জন্য কেবলমাত্র পঠনযোগ্য কেবল ব্যবহারকারী, সাধারণ ক্রিয়া পর্যবেক্ষণের জন্য - ডিডিএল ট্রিগার এবং ট্রেস। কর্মের এই লাইনে কী ভুল? আপনি চাইছেন এমন সুবিধাগুলি উন্নয়নের স্বয়ংক্রিয়করণের কোনও উপায় আছে বলে আমি মনে করি না। এমনকি অপারেটিং সিস্টেমে এই ব্যবহার রয়েছে, সাধারণ ক্রিয়াকলাপের জন্য স্বল্প সুবিধাযুক্ত ব্যবহারকারী এবং প্রশাসনিক ক্রিয়াকলাপের জন্য উচ্চ ক্ষমতা সম্পন্ন ব্যবহারকারীরা।
মারিয়ান

0

SQL সার্ভার আপনি একটি ডাটাবেস ব্যবহারকারী তৈরি এবং এটি একটি ধার্য করতে পারেন database roleপঠন / লিখন / মালিকানা অনুমতি (গুলি) সঙ্গে। ব্যবহারকারী একবার উত্পাদনে স্থানান্তরিত হয়ে গেলে, আপনি স্থানান্তরিত ডাটাবেস ব্যবহারকারীর কাছে যেতে পারেন এবং আপনি যে ভূমিকাটি চান না তা চেক করতে পারেন। উদাহরণস্বরূপ, যাক ব্যবহারকারী স্ট্যানটি পরীক্ষায় db_owner (ডাটাবেসের মালিকানা) এর একজন সদস্য is ব্যবহারকারীর স্ট্যানটি একবার উত্পাদনে স্থানান্তরিত হয়ে গেলে, আপনি এটিকে db_owner এর বাইরে নিয়ে যেতে এবং এটিতে কেবল db_datareader (কেবল পঠনযোগ্য) এর ভূমিকা অর্পণ করতে পারেন।

এসকিউএল 2005+ এ আরও দানাদার নিয়ন্ত্রণ করা যেতে পারে schema। পরীক্ষা করে দেখুন এই লিঙ্কে আরো বিস্তারিত জানার জন্য স্কিমা উপর।


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