آموزش

سطوح دسترسی نقش ها در SQL

سطوح دسترسی نقش ها در SQL

در SQL، می توانید از نقش ها برای گروه بندی مجوزها و ساده سازی فرآیند مدیریت دسترسی استفاده کنید.

سطوح دسترسی رایج برای نقش ها عبارتند از:

1. Database Owner:

  • شرح: بالاترین سطح دسترسی است که به نقش اجازه می دهد تمام جنبه های پایگاه داده را مدیریت کند.
  • مجوزها:
    • ایجاد و حذف پایگاه داده
    • ایجاد و حذف کاربران
    • اعطای مجوز به سایر کاربران
    • مدیریت تمام اشیاء پایگاه داده (جداول، نماها، توابع، رویه ها و …)

2. Schema Owner:

  • شرح: به نقش اجازه می دهد تا اشیاء پایگاه داده را در یک schema خاص مدیریت کند.
  • مجوزها:
    • ایجاد و حذف اشیاء در schema (جداول، نماها، توابع، رویه ها و …)
    • اعطای مجوز به سایر کاربران برای کار با اشیاء در schema

3. User:

  • شرح: به نقش اجازه می دهد تا به پایگاه داده متصل شده و با اشیاء پایگاه داده مطابق با مجوزهای اعطا شده کار کند.
  • مجوزها:
    • اجرای کوئری های SELECT، INSERT، UPDATE و DELETE
    • مشاهده داده ها در جداول
    • ذخیره سازی داده ها در جداول
    • ویرایش داده ها در جداول
    • حذف داده ها از جداول

4. Guest:

  • شرح: پایین ترین سطح دسترسی است که به نقش اجازه می دهد فقط به پایگاه داده متصل شده و کوئری های SELECT را اجرا کند.
  • مجوزها:
    • اجرای کوئری های SELECT
    • مشاهده داده ها در جداول

مثال:

SQL
-- ایجاد یک نقش جدید
CREATE ROLE 'sales_manager';

-- اعطای مجوزهای لازم برای مدیریت جداول مربوط به فروش به نقش 'sales_manager'
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA 'sales' TO 'sales_manager';

-- ایجاد یک کاربر جدید و اعطای نقش 'sales_manager' به آن
CREATE USER 'new_user' WITH PASSWORD 'P@ssw0rd';
GRANT ROLE 'sales_manager' TO 'new_user';

-- کاربر 'new_user'  می تواند به جداول مربوط به فروش دسترسی داشته باشد و آنها را مدیریت کند، 
-- اما نمی تواند پایگاه داده را ایجاد یا حذف کند یا به کاربران دیگر مجوز اعطا کند.

نکات:

  • می توانید سطوح دسترسی را به صورت granular تنظیم کنید. به عنوان مثال، می توانید به یک نقش اجازه SELECT و INSERT در یک جدول خاص را بدهید.
  • استفاده از نقش ها به شما کمک می کند تا از اعطای مجوزهای بیش از حد به کاربران جلوگیری کنید.
  • می توانید از ترکیب نقش ها برای ایجاد سطوح دسترسی پیچیده استفاده کنید.

 

نمایش بیشتر

نوشته‌های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

همچنین ببینید
بستن
دکمه بازگشت به بالا