[{"data":1,"prerenderedAt":726},["ShallowReactive",2],{"guide:ar:authorization":3},{"id":4,"title":5,"body":6,"description":718,"extension":719,"meta":720,"navigation":721,"path":722,"seo":723,"stem":724,"__hash__":725},"guide_ar/ar/user/authorization/index.md","التفويض",{"type":7,"value":8,"toc":701},"minimark",[9,12,16,21,32,55,58,62,65,70,141,146,166,172,176,187,190,196,220,225,234,237,269,273,279,285,302,307,321,325,331,337,340,346,352,355,361,367,370,374,380,385,391,397,401,412,416,421,435,440,446,451,465,469,475,480,496,501,512,516,525,530,535,541,546,552,557,563,566,570,576,582,586,591,602,607,618,623,634,639,650,655,666,671,682,687],[10,11,5],"h1",{"id":5},[13,14,15],"p",{},"يحدد التفويض ما يمكن للمستخدمين فعله وما لا يمكنهم فعله بعد المصادقة. يستخدم Aptli نموذج تفويض مرن من طبقتين يجمع بين حقوق الإدارة المتساهلة والقيود الصارمة المفروضة على الأدوار.",[17,18,20],"h2",{"id":19},"نظرة-عامة-على-نموذج-التفويض","نظرة عامة على نموذج التفويض",[22,23,28],"pre",{"className":24,"code":26,"language":27},[25],"language-text","Four-Layer Security Model:\n\nLayer 1: Authentication\n    ↓\n Who you are? (Password, 2FA, OAuth)\n    ↓\nLayer 2: Admin Rights (Permissive)\n    ↓\n What CAN you modify? (usersUpdate, pointsCreate, etc.)\n    ↓\nLayer 3: Role Restrictions (Restrictive)\n    ↓\n What CANNOT you see? (Field filters: owner, status, category)\n    ↓\nLayer 4: Server-Side Rendering (SSR)\n    ↓\n Enforcement at API (unauthorized data never sent to client)\n","text",[29,30,26],"code",{"__ignoreMap":31},"",[13,33,34,38,39,42,43,46,47,50,51,54],{},[35,36,37],"strong",{},"أمن من أربع طبقات:","\n١. ",[35,40,41],{},"المصادقة"," - هويتك (تمت تغطيتها في قسم المصادقة)\n٢. ",[35,44,45],{},"حقوق الإدارة"," - ما يمكنك تعديله (منح متساهلة)\n٣. ",[35,48,49],{},"قيود الأدوار"," - ما لا يمكنك رؤيته (مرشحات تقييدية)\n٤. ",[35,52,53],{},"التنفيذ من جانب الخادم"," - البيانات غير موجودة فعليًا للمستخدمين غير المصرح لهم",[13,56,57],{},"يوفر هذا النموذج مرونة هائلة مع الحفاظ على الأمان.",[17,59,61],{"id":60},"حقوق-الإدارة-متساهلة","حقوق الإدارة (متساهلة)",[13,63,64],{},"تمنح حقوق الإدارة الإذن بتعديل المعلومات أو تغيير الحالة. بدون هذه الحقوق، يمكن للمستخدمين فقط عرض البيانات وتحرير ملفهم الشخصي.",[13,66,67],{},[35,68,69],{},"حقوق الإدارة الشائعة:",[71,72,73,80,86,92,98,111,123,129,135],"ul",{},[74,75,76,79],"li",{},[29,77,78],{},"usersUpdate"," - تحرير ملفات تعريف المستخدمين الآخرين (الاسم، اللقب، القسم - وليس البريد الإلكتروني/كلمة المرور)",[74,81,82,85],{},[29,83,84],{},"usersLogout"," - فرض تسجيل الخروج أو قفل حسابات المستخدمين",[74,87,88,91],{},[29,89,90],{},"usersDelete"," - حذف حسابات المستخدمين",[74,93,94,97],{},[29,95,96],{},"usersCreate"," - إنشاء مستخدمين جدد أو استعادة الحسابات المحذوفة",[74,99,100,103,104,103,107,110],{},[29,101,102],{},"pointsCreate","، ",[29,105,106],{},"pointsUpdate",[29,108,109],{},"pointsDelete"," - تعديل ميزات النقاط",[74,112,113,103,116,103,119,122],{},[29,114,115],{},"ordersCreate",[29,117,118],{},"ordersUpdate",[29,120,121],{},"ordersDelete"," - إدارة أوامر العمل",[74,124,125,128],{},[29,126,127],{},"assignmentsCreate"," - إنشاء مهام العمل",[74,130,131,134],{},[29,132,133],{},"reportsCreate"," - إرسال تقارير العمل",[74,136,137,140],{},[29,138,139],{},"transactionsCreate"," - إنشاء معاملات المخزون",[13,142,143],{},[35,144,145],{},"حقوق فائقة (تتجاوز جميع الحقوق الأخرى):",[71,147,148,154,160],{},[74,149,150,153],{},[29,151,152],{},"appSettingSchemasModify"," - تعديل إعدادات مستوى التطبيق (المجالات، فترات الانتظار، الأمان)",[74,155,156,159],{},[29,157,158],{},"adminRightsModify"," - منح حقوق الإدارة لمستخدمين آخرين",[74,161,162,165],{},[29,163,164],{},"viewDeleted"," - عرض السجلات المحذوفة (شبه شاملة، يتم تجاوزها جزئيًا بواسطة قيود الدور)",[13,167,168,171],{},[35,169,170],{},"التحقق من حقوق الإدارة للمستخدم:","\n١. انتقل إلى الإدارة → المستخدمون\n٢. افتح ملف تعريف المستخدم\n٣. يسرد قسم \"حقوق الإدارة\" جميع الأذونات الممنوحة",[17,173,175],{"id":174},"قيود-الأدوار-تقييدية","قيود الأدوار (تقييدية)",[13,177,178,183],{},[179,180],"img",{"alt":181,"src":182},"قائمة الأدوار","/guide/authorization/roles-list.png",[184,185,186],"em",{},"صفحة إدارة الأدوار تعرض قيود الأدوار التي تم تكوينها",[13,188,189],{},"الأدوار هي مجموعات من القيود التي تمنع عرض وتعديل السجلات ذات الخصائص المحددة. تؤدي عضوية المستخدم في دور ما إلى تطبيق جميع القيود على ذلك المستخدم.",[13,191,192,195],{},[35,193,194],{},"مكونات الدور:","**",[71,197,198,204,214],{},[74,199,200,203],{},[35,201,202],{},"الأعضاء"," - المستخدمون الذين تنطبق عليهم هذه القيود",[74,205,206,209,210,213],{},[35,207,208],{},"المالك"," - المستخدم الذي يتحكم في العضوية (أو المستخدمون الذين يتمتعون بحق المسؤول ",[29,211,212],{},"rolesUpdate",")",[74,215,216,219],{},[35,217,218],{},"قيود الدور"," - عوامل تصفية على مستوى الحقل تخفي بيانات محددة",[221,222,224],"h3",{"id":223},"هيكل-قيود-الدور","هيكل قيود الدور",[13,226,227,231],{},[179,228],{"alt":229,"src":230},"تفاصيل الدور","/guide/authorization/role-detail.png",[184,232,233],{},"صفحة تفاصيل الدور التي تعرض تكوين القيود على مستوى الحقل",[13,235,236],{},"يحدد كل قيد ما يلي:",[71,238,239,245,251,257,263],{},[74,240,241,244],{},[35,242,243],{},"النموذج"," - نوع البيانات (النقاط، المضلعات، التخصيصات، إلخ)",[74,246,247,250],{},[35,248,249],{},"الحقل"," - الخاصية التي سيتم التصفية بناءً عليها (المالك، الحالة، الفئة، الحقول المخصصة)",[74,252,253,256],{},[35,254,255],{},"المقارنة"," - كيفية المطابقة (=، !=، >، \u003C، يحتوي على، إلخ)",[74,258,259,262],{},[35,260,261],{},"قيمة التصفية"," - القيمة المطلوب مطابقتها",[74,264,265,268],{},[35,266,267],{},"الأذونات"," - ما الذي تم حظره (قراءة، تعديل، إنشاء، حذف)",[221,270,272],{"id":271},"مثال-على-حالة-الاستخدام-فصل-المقاولين","مثال على حالة الاستخدام: فصل المقاولين",[13,274,275,278],{},[35,276,277],{},"السيناريو:"," منع المقاول \"أ\" من رؤية عمل المقاول \"ب\"",[13,280,281,284],{},[35,282,283],{},"الإعداد:","\n١. إنشاء دور: \"المقاول أ\"\n٢. إضافة تقييد الدور:",[71,286,287,290,293,296,299],{},[74,288,289],{},"النموذج: نقطة (ميزات)",[74,291,292],{},"الحقل: المالك",[74,294,295],{},"المقارنة: =",[74,297,298],{},"قيمة التصفية: المقاول ب",[74,300,301],{},"الأذونات: قراءة ✓، تعديل ✓، إنشاء ✓، حذف ✓ (كلها صحيحة = لا يمكن القيام بأي من هذه)\n٣. إضافة مستخدمي المقاول أ كأعضاء",[13,303,304],{},[35,305,306],{},"النتيجة:",[71,308,309,312,315,318],{},[74,310,311],{},"لا يمكن لأعضاء المقاول أ رؤية أي نقاط حيث المالك = \"المقاول ب\"",[74,313,314],{},"ليس مجرد إخفاء في واجهة المستخدم - تعيد واجهة برمجة التطبيقات (API) البيانات كما لو أن السجلات غير موجودة",[74,316,317],{},"لا يمكن رؤيتها عن طريق الخطأ عبر لقطة شاشة أو استدعاء واجهة برمجة التطبيقات (API) أو التصدير",[74,319,320],{},"يتم فرضها بالكامل من جانب الخادم",[221,322,324],{"id":323},"حالات-استخدام-إضافية","حالات استخدام إضافية",[13,326,327,330],{},[35,328,329],{},"حسب مرحلة العمل:","\nمنع العاملين الميدانيين من رؤية تقارير التحقق من الجودة:",[22,332,335],{"className":333,"code":334,"language":27},[25],"Role: \"Field Workers\"\nRestriction:\n  Model: Validation\n  Field: status\n  Comparison: !=\n  Filter Value: \"\" (any value)\n  Permissions: Read ✓\n",[29,336,334],{"__ignoreMap":31},[13,338,339],{},"لا يمكن للعاملين الميدانيين رؤية عمليات التحقق على الإطلاق.",[13,341,342,345],{},[35,343,344],{},"حسب نوع الأصول:","\nفصل فرق البنية التحتية (الأعمدة/القنوات مقابل المعدات النشطة):",[22,347,350],{"className":348,"code":349,"language":27},[25],"Role: \"Civil Team\"\nRestriction:\n  Model: Point\n  Field: category\n  Comparison: =\n  Filter Value: \"Active Equipment\"\n  Permissions: Read ✓, Edit ✓, Create ✓, Delete ✓\n",[29,351,349],{"__ignoreMap":31},[13,353,354],{},"لا يمكن لفريق الهندسة المدنية رؤية نقاط المعدات النشطة أو تعديلها.",[13,356,357,360],{},[35,358,359],{},"حسب المادي/المنطقي:","\nفصل الوصول إلى بيانات المكاتب (علاقات السعة مقابل مواقع المكاتب):",[22,362,365],{"className":363,"code":364,"language":27},[25],"Role: \"Capacity Analysts\"\nRestriction:\n  Model: Point\n  Field: layer\n  Comparison: =\n  Filter Value: \"Office Locations\"\n  Permissions: Edit ✓, Create ✓, Delete ✓\n",[29,366,364],{"__ignoreMap":31},[13,368,369],{},"يمكن للمحللين عرض المكاتب ولكن لا يمكنهم تعديل المواقع (للقراءة فقط).",[17,371,373],{"id":372},"الجمع-بين-حقوق-الإدارة-قيود-الأدوار","الجمع بين حقوق الإدارة + قيود الأدوار",[13,375,376,379],{},[35,377,378],{},"السلوك الافتراضي:","\nيمكن لجميع المستخدمين رؤية كل شيء ولكن لا يمكنهم تغيير أي شيء (بدون حقوق الإدارة).",[13,381,382],{},[35,383,384],{},"إضافة حق الوصول للكتابة مع قيود:",[13,386,387,390],{},[35,388,389],{},"مثال:"," يمكن للعاملين الميدانيين تعديل أعمالهم الخاصة ولكن لا يمكنهم تعديل أعمال الآخرين",[22,392,395],{"className":393,"code":394,"language":27},[25],"Admin Rights:\n  - reportsCreate: true\n  - reportsUpdate: true\n\nRole Restrictions:\n  Model: Report\n  Field: reportedBy\n  Comparison: !=\n  Filter Value: [current user ID]\n  Permissions: Edit ✓\n",[29,396,394],{"__ignoreMap":31},[13,398,399],{},[35,400,306],{},[71,402,403,406,409],{},[74,404,405],{},"يمكن للعاملين إنشاء تقارير (تم منح حق الإدارة)",[74,407,408],{},"يمكن للعاملين تعديل تقاريرهم الخاصة فقط (تقوم قيود الدور باستبعاد الآخرين)",[74,410,411],{},"لا يمكنهم رؤية أو تعديل تقارير العاملين الآخرين",[17,413,415],{"id":414},"التنفيذ-من-جانب-الخادم-ssr","التنفيذ من جانب الخادم (SSR)",[13,417,418],{},[35,419,420],{},"كيفية العمل:",[71,422,423,426,429,432],{},[74,424,425],{},"يتم تصفية جميع استعلامات واجهة برمجة التطبيقات (API) قبل البحث في قاعدة البيانات",[74,427,428],{},"يتم تطبيق قيود الأدوار من جانب الخادم (وليس مجرد إخفاء واجهة المستخدم)",[74,430,431],{},"لا يمكن للمستخدم التجاوز عبر استدعاءات واجهة برمجة التطبيقات (API) المباشرة أو أدوات المتصفح أو عمليات التصدير",[74,433,434],{},"البيانات غير موجودة فعليًا للمستخدمين غير المصرح لهم",[13,436,437],{},[35,438,439],{},"مثال على الاستعلام:",[22,441,444],{"className":442,"code":443,"language":27},[25],"User requests: GET /api/points\n\nWithout restrictions:\n  SELECT * FROM points WHERE deletedAt IS NULL\n\nWith role restriction (owner != \"Contractor B\"):\n  SELECT * FROM points \n  WHERE deletedAt IS NULL \n  AND (owner IS NULL OR owner != \"Contractor B\")\n",[29,445,443],{"__ignoreMap":31},[13,447,448],{},[35,449,450],{},"الآثار الأمنية:",[71,452,453,456,459,462],{},[74,454,455],{},"لن تساعدك لقطة شاشة لشاشة شخص آخر (لن يتم تحميل البيانات لك)",[74,457,458],{},"لا يمكن تصدير البيانات المقيدة (تفرض واجهة برمجة التطبيقات (API) الفلاتر)",[74,460,461],{},"لا يمكن \"تخمين\" معرّفات السجلات (يتم تصفية قبل البحث عن المعرّف)",[74,463,464],{},"حتى إذا رأى المهاجم معرّف السجل في حركة مرور الشبكة، فإن عملية الاسترداد تعود بـ ٤٠٤",[17,466,468],{"id":467},"إدارة-الأدوار","إدارة الأدوار",[13,470,471,474],{},[35,472,473],{},"إنشاء الأدوار:","\n١. انتقل إلى الإدارة → الأدوار\n٢. انقر على \"إنشاء دور\"\n٣. أدخل اسم الدور ووصفه\n٤. أضف الأعضاء (اسحب المستخدمين إلى حقل الأعضاء)\n٥. أضف قيود الدور (يمكن أن يكون هناك أكثر من واحدة)\n٦. حفظ",[13,476,477],{},[35,478,479],{},"تحرير الأدوار:",[71,481,482,487,490,493],{},[74,483,484,485],{},"فقط مالك الدور أو المستخدمون الذين لديهم حق الإدارة ",[29,486,212],{},[74,488,489],{},"يمكن إضافة/إزالة الأعضاء",[74,491,492],{},"يمكن تعديل القيود",[74,494,495],{},"يمكن حذف الدور (تحرير الأعضاء من القيود)",[13,497,498],{},[35,499,500],{},"عضوية الدور:",[71,502,503,506,509],{},[74,504,505],{},"يمكن للمستخدمين أن يكونوا في أدوار متعددة (تُجمع القيود)",[74,507,508],{},"مغادرة المؤسسة: إزالة من جميع الأدوار قبل حذف الحساب",[74,510,511],{},"العضوية الجماعية: سحب عدة مستخدمين دفعة واحدة",[17,513,515],{"id":514},"تخصيص-التفويض-للمستخدمين-الجدد","تخصيص التفويض للمستخدمين الجدد",[13,517,518,524],{},[35,519,520,521,523],{},"تكوين إعدادات التطبيق (يتطلب ",[29,522,152],{},"):","\n١. انتقل إلى إعدادات التطبيق → المصادقة\n٢. \"أدوار للمستخدمين الجدد\" - تعيين الأدوار تلقائيًا للحسابات الجديدة\n٣. \"حقوق الإدارة للمستخدمين الجدد\" - منح الأذونات الافتراضية\n٤. حفظ",[13,526,527],{},[35,528,529],{},"التكوينات النموذجية:",[13,531,532],{},[35,533,534],{},"الإعدادات الافتراضية للعامل الميداني:",[22,536,539],{"className":537,"code":538,"language":27},[25],"Roles: [\"Field Workers\"]\nAdmin Rights: {\n  reportsCreate: true,\n  assignmentsRead: true\n}\n",[29,540,538],{"__ignoreMap":31},[13,542,543],{},[35,544,545],{},"الإعدادات الافتراضية لمنسق المكتب:",[22,547,550],{"className":548,"code":549,"language":27},[25],"Roles: []\nAdmin Rights: {\n  assignmentsCreate: true,\n  ordersCreate: true,\n  stockItemsView: true\n}\n",[29,551,549],{"__ignoreMap":31},[13,553,554],{},[35,555,556],{},"لا منح تلقائي (مراجعة يدوية):",[22,558,561],{"className":559,"code":560,"language":27},[25],"Roles: []\nAdmin Rights: {} (none)\n",[29,562,560],{"__ignoreMap":31},[13,564,565],{},"يقوم المسؤولون بالتعيين يدويًا بعد مراجعة الحساب.",[17,567,569],{"id":568},"عرض-الأذونات-السارية","عرض الأذونات السارية",[13,571,572,575],{},[35,573,574],{},"لمستخدم معين:","\n١. انتقل إلى ملف تعريف المستخدم\n٢. قسم \"حقوق المسؤول\" - ما يمكنهم فعله\n٣. قسم \"الأدوار\" - ما لا يمكنهم رؤيته (عبر القيود)\n٤. يعرض العرض المدمج الأذونات السارية",[13,577,578,581],{},[35,579,580],{},"اختبار الأذونات:","\n١. قم بتسجيل الدخول كمستخدم (أو انتحل شخصية المستخدم باستخدام أذونات المسؤول)\n٢. تصفح بشكل طبيعي\n٣. البيانات المقيدة ببساطة لا تظهر\n٤. الإجراءات التي تتطلب أذونات المسؤول معطلة/مخفية",[17,583,585],{"id":584},"أفضل-الممارسات","أفضل الممارسات",[13,587,588],{},[35,589,590],{},"ابدأ بالتقييد، ومنح الأذونات حسب الحاجة:",[71,592,593,596,599],{},[74,594,595],{},"يحصل المستخدمون الجدد على أذونات محدودة",[74,597,598],{},"أضف أذونات المسؤول حسب متطلبات الأدوار",[74,600,601],{},"منح الأذونات أسهل من إلغائها (يتجنب \"تجاوز الأذونات\")",[13,603,604],{},[35,605,606],{},"استخدام الأدوار لرؤية البيانات:",[71,608,609,612,615],{},[74,610,611],{},"فصل المتعاقدين (لمنع استخبارات المنافسة)",[74,613,614],{},"فصل مراحل العمل (مراقبة الجودة عن العاملين الميدانيين)",[74,616,617],{},"فصل أنواع الأصول (البنية التحتية عن المعدات العاملة)",[13,619,620],{},[35,621,622],{},"استخدام حقوق الإدارة للقدرات:",[71,624,625,628,631],{},[74,626,627],{},"من يمكنه إنشاء المهام",[74,629,630],{},"من يمكنه تعديل المخزون",[74,632,633],{},"من يمكنه منح الأذونات",[13,635,636],{},[35,637,638],{},"توثيق الغرض من الدور:",[71,640,641,644,647],{},[74,642,643],{},"اسم دور واضح (\"المقاول أ\" أفضل من \"الدور ١\")",[74,645,646],{},"الوصف يشرح القيود",[74,648,649],{},"يساعد المسؤولين المستقبليين على فهم المقصد",[13,651,652],{},[35,653,654],{},"تدقيقات منتظمة للأذونات:",[71,656,657,660,663],{},[74,658,659],{},"مراجعة ربع سنوية لحقوق المسؤولية الخاصة بالمستخدم",[74,661,662],{},"إزالة الحقوق غير المستخدمة (تغيير أدوار المستخدم)",[74,664,665],{},"التحقق من عضويات الأدوار (المستخدمون الذين غادروا المؤسسة)",[13,667,668],{},[35,669,670],{},"مراقبة محاولات الوصول:",[71,672,673,676,679],{},[74,674,675],{},"تسجيل محاولات التفويض الفاشلة",[74,677,678],{},"نمط الرفض = محاولة المستخدم الوصول غير المصرح به",[74,680,681],{},"التحقيق وتعديل الأذونات أو توعية المستخدم",[13,683,684],{},[35,685,686],{},"مبدأ أقل الامتيازات:",[71,688,689,692,695],{},[74,690,691],{},"منح الحد الأدنى من الأذونات المطلوبة لأداء الوظيفة",[74,693,694],{},"وصول مؤقت بامتيازات أعلى للمشاريع (إزالته بعد ذلك)",[74,696,697,698,700],{},"حقوق فائقة (",[29,699,158],{},") للمسؤولين الموثوق بهم فقط",{"title":31,"searchDepth":702,"depth":702,"links":703},2,[704,705,706,712,713,714,715,716,717],{"id":19,"depth":702,"text":20},{"id":60,"depth":702,"text":61},{"id":174,"depth":702,"text":175,"children":707},[708,710,711],{"id":223,"depth":709,"text":224},3,{"id":271,"depth":709,"text":272},{"id":323,"depth":709,"text":324},{"id":372,"depth":702,"text":373},{"id":414,"depth":702,"text":415},{"id":467,"depth":702,"text":468},{"id":514,"depth":702,"text":515},{"id":568,"depth":702,"text":569},{"id":584,"depth":702,"text":585},"حقوق المسؤول، وقيود الأدوار، والأمان على مستوى الحقول، والتحكم في الوصول","md",{},true,"/ar/user/authorization",{"title":5,"description":718},"ar/user/authorization/index","xBAMRkFyGsVYsWRBQybTOnkxNr9VcfHugMBPk-ZtveI",1780539276329]