GRANT
গুলি বিভিন্ন বস্তুর উপর পৃথক। GRANT
একটি ডাটাবেসের GRANT
মধ্যে লিঙ্ক স্কিমার অধিকার নেই । অনিচ্ছাকৃতভাবে, GRANT
একটি স্কিমাতে অন্তর্ভুক্ত থাকা টেবিলগুলিতে অধিকার মঞ্জুরি দেয় না।
যদি SELECT
কোনও টেবিল থেকে আপনার অধিকার থাকে তবে এটিতে থাকা স্কিমাটিতে এটি দেখার অধিকার নেই তবে আপনি টেবিলটি অ্যাক্সেস করতে পারবেন না।
অধিকার পরীক্ষা যথাযথভাবে করা হয়:
Do you have `USAGE` on the schema?
No: Reject access.
Yes: Do you also have the appropriate rights on the table?
No: Reject access.
Yes: Check column privileges.
আপনার বিভ্রান্তি এ থেকে উদ্ভূত হতে পারে যে public
স্কিমার GRANT
ভূমিকার সমস্ত অধিকারের একটি ডিফল্ট রয়েছে public
, যা প্রতিটি ব্যবহারকারী / গোষ্ঠীর সদস্য। সুতরাং প্রত্যেকের ইতিমধ্যে সেই স্কিমে ব্যবহার রয়েছে।
বাক্য:
(ধরে নিলাম যে বস্তুর নিজস্ব বিশেষাধিকারের প্রয়োজনীয়তাও মেটানো হয়েছে)
বলছে যে USAGE
এটির মধ্যে থাকা অবজেক্টগুলি ব্যবহার করার জন্য আপনার অবশ্যই একটি স্কিমা থাকা উচিত , তবে USAGE
স্কিমা থাকা নিজেরাই স্কিমার মধ্যে থাকা অবজেক্টগুলি ব্যবহার করার পক্ষে পর্যাপ্ত নয়, আপনার নিজেরও বস্তুগুলির অধিকার থাকতে হবে।
এটি ডিরেক্টরি গাছের মতো। যদি আপনি এর মধ্যে somedir
ফাইল সহ একটি ডিরেক্টরি তৈরি করেন somefile
তবে এটি সেট করে রাখুন যাতে আপনার নিজের ব্যবহারকারী কেবল ডিরেক্টরি বা ফাইল অ্যাক্সেস করতে পারেন (ফাইলের rwx------
মোড়ে মোড়, মোড rw-------
) তারপরে অন্য কেউ ডিরেক্টরিটি তালিকাভুক্ত করতে পারবেন না যে ফাইলটি উপস্থিত রয়েছে তা দেখতে।
আপনি যদি ফাইল (মোড rw-r--r--
) এ বিশ্ব-পঠিত অধিকারগুলি প্রদান করতে পারেন তবে ডিরেক্টরি অনুমতিগুলি পরিবর্তন না করে এটি কোনও পার্থক্য করে না। ফাইলটি পড়ার জন্য কেউই ফাইলটি দেখতে পেল না, কারণ তাদের ডিরেক্টরিতে তালিকার অধিকার নেই।
আপনি যদি পরিবর্তে rwx-r-xr-x
ডিরেক্টরিতে সেট করেন, এটি সেট করে যাতে লোকেরা ডিরেক্টরিটি তালিকাভুক্ত করতে পারে এবং ফাইলের অনুমতি পরিবর্তন না করে, লোকেরা ফাইলটি তালিকাভুক্ত করতে পারে তবে এটি পড়তে পারে না কারণ তাদের ফাইলে অ্যাক্সেস নেই।
লোকেরা ফাইলটি দেখতে সক্ষম হতে আপনাকে উভয় অনুমতি সেট করতে হবে।
পিজিতে একই জিনিস। কোনও টেবিলের USAGE
মতো কোনও বস্তুর উপর ক্রিয়া সম্পাদনের জন্য আপনার উভয় স্কিমা অধিকার এবং অবজেক্টের অধিকারের প্রয়োজন SELECT
।
(সাদৃশ্যটি কিছুটা নিচে নেমে গেছে যে পোস্টগ্রেএসকিউএলটিতে এখনও সারি-স্তরের সুরক্ষা নেই, সুতরাং ব্যবহারকারীটি এখনও "দেখতে" দেখতে পারেন যে টেবিলটি স্কিমায় সরাসরি উপস্থিত SELECT
থেকে স্কিনে রয়েছে pg_class
They তারা কোনওভাবেই এটির সাথে যোগাযোগ করতে পারে না can't যদিও, তাই এটি কেবল "তালিকার" অংশ যা সম্পূর্ণ এক নয় that)
CREATE EXTENSION
। আপনি থাকাকালীন লিনাক্সে তৈরি ফাইলগুলির সাথে কমবেশি একই সমস্যাsu
।sudo -e
পিকিএসএল-তে বিবৃতি দেওয়ার জন্য যদি এখানে থাকে তবে ভাল হবে ।