الدرس الخامس عشر
الدرس الخامس عشر
السلام عليكم ورحمة الله وبركاته
في هذا الدرس سنتحدث عن ROLES وكيفية انشائها وسنشرح بعض النقاط المهمه بها
ROLES هو عبارة عن مجموعة من الشروط يتم انشائها ليتم الزام المستخدم بها وهي
Creating a Role
لانشاء ال Role يجب انشاء Role system privileges وليتم ذلك نتبع الخطوات التالية
CODE
CREATE ROLE role_name
[ NOT IDENTIFIED |
IDENTIFIED {BY password | USING [schema.] package | EXTERNALLY | GLOBALLY };
حيث
role_name هو اسم ال role
NOT IDENTIFIED : توضع في حال تعريف ال role حيث تفعل الrole ولا يحتاج لكلمة سر لتفعيل ال role
IDENTIFIED هنا يجب ان تقوم بتعريف خصائص ال role قبل تفعيلها
BY password هنا تعني ان المستخدم يجب ان يضع كلمة سر قبل تفعيل ال role
USING package هنا انك قد انشأت مجموعة من role ويجب تطبيقها من خلال البرنامج
EXTERNALLY وهذا يعني انك تحتاج الى تعريف خصائص EXTERNALLY قبل تشغيل ال role
GLOBALLY يعني ان المستخدم يستطيع تعريف او الاطلاع على اليوزر عن طريق مجلدات ال enterprise
مع ملاحظة اننا اذا لم نضع NOT IDENTIFIED او نضع IDENTIFIED سوف يتم انشاء ال role على اساس انها NOT IDENTIFIED
مثال
ننشئ role ونسميها test_role
CODE
CREATE ROLE test_role;
هنا ننشئ role ولكن نستخدم الباسوورد حيث يطلب الباسوورد عند تشغيلها
CODE
CREATE ROLE test_role
IDENTIFIED BY test123;
Grant Privileges (on Tables) to Roles
اعطاء الصلاحيات على الجداول ل role باستخدام privilege
وهناك انواع من الصلاحيات على الجداول
* Select لاعطاء صلاحية الاستعلام باستخدام جملة select
*Insert هو اعطاء صلاحية اضافة سجل جديد على الجداول
*Update اعطاء صلاحية التحديث على سجل في الجدول
*Delete اعطاء صلاحية الحذف لسجل من الجدول
*References اعطاء صلاحية لانشاء ال Constraints
* Alter اعطاء صلاحية التعديل على الجدول
*Index اعطاء صلاحية لانشاء ال index على الجدول
القاعدة
CODE
grant privileges on object to role_name
مثال على اعطاء بعض الصلاحيات ل Roles
CODE
grant select, insert, update, delete on suppliers to test_role;
مثال على اعطاء الصلاحيات لجميع ال Roles
CODE
grant all on suppliers to test_role;
إلغاء الصلاحيات عن Roles
Revoke Privileges (on Tables) to Roles
هذه الخاصية هي كيفية الغاء الصلاحية عن Roles
CODE
revoke privileges on object from role_name;
مثال الغاء عن مجموعة من الصلاحيات
CODE
revoke delete on suppliers from test_role;
مثال على الغاء جميع الصلاحيات
CODE
revoke all on suppliers from test_role;
اعطاء الصلاحية ل Roles لCompilation Procedure /Functions
Grant Privileges (on Functions/Procedures) to Roles
الصلاحية تسمى ب Execute
وهي تمكن الRoles من عمل ترجمة وتشغيل للبروسيجر والفانكشن بشكل مباشر
CODE
grant execute on Find_Value to test_role;
الغاء الصلاحية عن ال roles
CODE
revoke execute on object from role_name;
مثال
CODE
revoke execute on Find_Value from test_role;
اعطاء صلاحيات ال Roles الى المستخدم
Granting the Role to a User
وهي تمكن من السيطرة على صلاحيات المستخدم للنظام
القاعدة
CODE
GRANT role_name TO user_name;
مثال
CODE
GRANT test_role to smithj;
استخدام ال The SET ROLE statement
هذه الخاصية التي تدعى ال Set Role لتفعيل او عدم تفعيل ال Roles
قاعدة الاستخدام
CODE
SET ROLE
( role_name [ IDENTIFIED BY password ]
| ALL [EXCEPT role1, role2, ... ]
| NONE );
role_name اسم ال Role
IDENTIFIED BY password هنا لوضع كلمة سر على ال Role
ALL تعني تفعيل جميع ال Roles والتي تكون داخل قائمة ال Except
NONE لعدم تفعيل ال Role
مثال
CODE
SET ROLE test_role IDENTIFIED BY test123;
خصائص تحويل ال role مثل ال DefualtRole
Setting a role as DEFAULT Role
قاعدة ....
CODE
ALTER USER user_name
DEFAULT ROLE
( role_name
| ALL [EXCEPT role1, role2, ... ]
| NONE );
role_name اسم ال Role
ALL تعني تفعيل جميع ال Roles والتي تكون داخل قائمة ال Except
NONE لعدم تفعيل ال Role
مثال
CODE
ALTER USER smithj
DEFAULT ROLE
test_role;
مثال 2
CODE
ALTER USER smithj
DEFAULT ROLE
ALL EXCEPT test_role;
Dropping a Role
حذف ال Role
القاعدة
CODE
DROP ROLE role_name;
امثلة
CODE
DROP ROLE test_role
انتهى الدرس
في هذا الدرس سنتحدث عن ROLES وكيفية انشائها وسنشرح بعض النقاط المهمه بها
ROLES هو عبارة عن مجموعة من الشروط يتم انشائها ليتم الزام المستخدم بها وهي
Creating a Role
لانشاء ال Role يجب انشاء Role system privileges وليتم ذلك نتبع الخطوات التالية
CODE
CREATE ROLE role_name
[ NOT IDENTIFIED |
IDENTIFIED {BY password | USING [schema.] package | EXTERNALLY | GLOBALLY };
حيث
role_name هو اسم ال role
NOT IDENTIFIED : توضع في حال تعريف ال role حيث تفعل الrole ولا يحتاج لكلمة سر لتفعيل ال role
IDENTIFIED هنا يجب ان تقوم بتعريف خصائص ال role قبل تفعيلها
BY password هنا تعني ان المستخدم يجب ان يضع كلمة سر قبل تفعيل ال role
USING package هنا انك قد انشأت مجموعة من role ويجب تطبيقها من خلال البرنامج
EXTERNALLY وهذا يعني انك تحتاج الى تعريف خصائص EXTERNALLY قبل تشغيل ال role
GLOBALLY يعني ان المستخدم يستطيع تعريف او الاطلاع على اليوزر عن طريق مجلدات ال enterprise
مع ملاحظة اننا اذا لم نضع NOT IDENTIFIED او نضع IDENTIFIED سوف يتم انشاء ال role على اساس انها NOT IDENTIFIED
مثال
ننشئ role ونسميها test_role
CODE
CREATE ROLE test_role;
هنا ننشئ role ولكن نستخدم الباسوورد حيث يطلب الباسوورد عند تشغيلها
CODE
CREATE ROLE test_role
IDENTIFIED BY test123;
Grant Privileges (on Tables) to Roles
اعطاء الصلاحيات على الجداول ل role باستخدام privilege
وهناك انواع من الصلاحيات على الجداول
* Select لاعطاء صلاحية الاستعلام باستخدام جملة select
*Insert هو اعطاء صلاحية اضافة سجل جديد على الجداول
*Update اعطاء صلاحية التحديث على سجل في الجدول
*Delete اعطاء صلاحية الحذف لسجل من الجدول
*References اعطاء صلاحية لانشاء ال Constraints
* Alter اعطاء صلاحية التعديل على الجدول
*Index اعطاء صلاحية لانشاء ال index على الجدول
القاعدة
CODE
grant privileges on object to role_name
مثال على اعطاء بعض الصلاحيات ل Roles
CODE
grant select, insert, update, delete on suppliers to test_role;
مثال على اعطاء الصلاحيات لجميع ال Roles
CODE
grant all on suppliers to test_role;
إلغاء الصلاحيات عن Roles
Revoke Privileges (on Tables) to Roles
هذه الخاصية هي كيفية الغاء الصلاحية عن Roles
CODE
revoke privileges on object from role_name;
مثال الغاء عن مجموعة من الصلاحيات
CODE
revoke delete on suppliers from test_role;
مثال على الغاء جميع الصلاحيات
CODE
revoke all on suppliers from test_role;
اعطاء الصلاحية ل Roles لCompilation Procedure /Functions
Grant Privileges (on Functions/Procedures) to Roles
الصلاحية تسمى ب Execute
وهي تمكن الRoles من عمل ترجمة وتشغيل للبروسيجر والفانكشن بشكل مباشر
CODE
grant execute on Find_Value to test_role;
الغاء الصلاحية عن ال roles
CODE
revoke execute on object from role_name;
مثال
CODE
revoke execute on Find_Value from test_role;
اعطاء صلاحيات ال Roles الى المستخدم
Granting the Role to a User
وهي تمكن من السيطرة على صلاحيات المستخدم للنظام
القاعدة
CODE
GRANT role_name TO user_name;
مثال
CODE
GRANT test_role to smithj;
استخدام ال The SET ROLE statement
هذه الخاصية التي تدعى ال Set Role لتفعيل او عدم تفعيل ال Roles
قاعدة الاستخدام
CODE
SET ROLE
( role_name [ IDENTIFIED BY password ]
| ALL [EXCEPT role1, role2, ... ]
| NONE );
role_name اسم ال Role
IDENTIFIED BY password هنا لوضع كلمة سر على ال Role
ALL تعني تفعيل جميع ال Roles والتي تكون داخل قائمة ال Except
NONE لعدم تفعيل ال Role
مثال
CODE
SET ROLE test_role IDENTIFIED BY test123;
خصائص تحويل ال role مثل ال DefualtRole
Setting a role as DEFAULT Role
قاعدة ....
CODE
ALTER USER user_name
DEFAULT ROLE
( role_name
| ALL [EXCEPT role1, role2, ... ]
| NONE );
role_name اسم ال Role
ALL تعني تفعيل جميع ال Roles والتي تكون داخل قائمة ال Except
NONE لعدم تفعيل ال Role
مثال
CODE
ALTER USER smithj
DEFAULT ROLE
test_role;
مثال 2
CODE
ALTER USER smithj
DEFAULT ROLE
ALL EXCEPT test_role;
Dropping a Role
حذف ال Role
القاعدة
CODE
DROP ROLE role_name;
امثلة
CODE
DROP ROLE test_role
انتهى الدرس
ahmed- المساهمات : 20
تاريخ التسجيل : 08/11/2007
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى