What is privilege?
Privilege হচ্ছে পারমিশন বা অনুমোদন। ডাটাবেস বা সিস্টেম ব্যহহারের অনুমতি। সিস্টেমে বা ডাটাবেসে আপনার যে সকল কাজ করার পারমিশন (Facilities) আছে, তা হচ্ছে- privilege. যেমন ধরা যাক, আপনার কোন USER ID নেই। তাহলে আপনার কম্পিউটার বা সিস্টেম ব্যাবহারের কোন উপায় নেই। এখানে আপনার কাজ করার পারমিশন নেই। সিকিউরিটি নিশ্চিত করতে ওরাকলে ৮০ টিরও বেশী privilege আছে। আবার ধরা যাক- আপনি USER হিসাবে Log On করলেন, এবং একটি টেবিলে Select কমান্ড দিয়ে ডাটা দেখলেন। কিন্তু ডাটা এন্ট্রি করতে গিয়ে দেখা গেল -ডাটা এন্ট্রি হচ্ছে না। যেমন পূর্বে আমরা DATA ENTRY করার সময় user ACC_DEPT lacks CREATE SESSION privilege; logon denied ম্যাসেজ পেয়েছিলাম, কারণ আমাদের Log on permission ছিল না এবং এখন আপনার ডাটা এনিট্্র করার পারমিশন নেই বা সকল কাজ করার পারমিশন নেই। সুতরাং এক এক করে পারমিশন / privilege বিষয়টি শিখবো।
GRANT PRIVILEGE
নিচের মত করে কমান্ড দিয়ে User Previlege
Issue করা যেতে পারে।
SQL> grant create session
to takshal
Grant succeeded.
আর যাকে আমরা এই পারমিশন দিলাম সেই ইউজার ডাটা বেসে কানেক্ট হতে পারবে। যেমন আমরা পুর্বে কানেক্ট হওয়ার চেষ্টা করেছি। কিন্তু পারিনি। এখন চেষ্টা করুন অবশ্যই কানেক্ট হবে।
তৈরীকৃত USER এ CONNECT ev LOG ON করা যাক নিচের মত কমান্ড দিয়ে।
SQL> connect takshal/gazipur@salim
Connected.
SQL> connect system/himel@salim
Connected.
SQL> connect scott/tiger@salim
Connected.
নিচের মত করে কমান্ড দিয়ে "Takshal" এর জন্য EMP টেবিলে কাজ করার (ডাটা দেখার বা কুয়েরী করার) পারমিশন দিলাম।
SQL> grant select on emp
to takshal;
Grant succeeded.
নিচের মত করে কমান্ড দিয়ে "Takshal" এর জন্য EMP টেবিলে কাজ করার (ডাটা এনিট্র, ডাটা আপডেট ও ডাটা মোছার পারমিশন দিয়ে দেখা যাক।
SQL>grant insert, update, delete
on emp
to takshal;
Grant succeeded.
With Option Commnad
আমরা User কে Previlege Issue করলাম। সুতরাং উক্ত ইউজার প্রদত্ত কাজগুলি করতে পারবে অর্থাৎ Previlege ব্যবহার করতে পারবে। কিন্তু অন্য কাউকে Previlege Issue করতে পারবে না। সেই কারনে নিচের মত করে With Option mn Previlege
Issue করলে উক্ত ইউজারও Previlge Issue করার ক্ষমতা লাভ করবে।
SQL> grant select
on emp
to takshal
with grant option;
Grant succeeded.
নিচে কয়েকটি সিস্টেম Previlege নিয়ে আলোচনা করা যাক-
|
CREATE NEW USER |
নতুন ইউজার তৈরী করার জন্য |
|
REMOVE USER |
ইউজার মোছার জন্য |
|
REMOVE TALBE |
টেবিল মোছার জন্য |
|
TALBE BACKUP |
টেবিলে ব্যাকআপ তৈরীর জন্য |
|
CREATE SESSION |
ডাটাবেসে কানেক্ট হওয়ার জন্য |
|
CREATE TABLE |
টেবিল তৈরী ও ইউজার স্কীমা তৈরীর জন্য |
|
CREATE SEQUENCE |
সিকুয়েন্স তৈরীর জন্য |
|
CREATE VIEW |
ভিউ তৈরীর জন্য |
|
CREATE PROCEDURE, FUNCTION & PACKAGE |
Procedure, Function and Package তৈরীর জন্য |
উপরে উল্লেখিত বামপাশে বর্ণিত এই সকল privilege আপনার না থাকলে আপনি ডানপাশে উল্লেখিত কাজগুলি করতে পারবেন না।
সকল Privilege সাধারনত DBA কর্তৃক প্রদত্ত হয়ে থাকে এবং DBA কে High level System Privilege দেওয়া আছে এবং it is a pre defined roll. (System কর্তৃক প্রদত্ত Role.) আরো দুটি সিস্টেম Role এর কথা আমরা জানি। They are "System" and "Scott"
কোন মন্তব্য নেই:
একটি মন্তব্য পোস্ট করুন