[{"data":1,"prerenderedAt":148},["ShallowReactive",2],{"seo-verification":3,"blog-stirling-pdf-v3-sso-oauth2-مجاني-بدون-enterprise-ar":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-stirling-pdf-v3-sso-oauth2-مجاني-بدون-enterprise-ar",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":33,"intro":36,"sections":37,"ctaTitle":84,"ctaBody":85,"ctaButton":86,"ctaUrl":87,"relatedPosts":88},422,"stirling-pdf-v3-sso-oauth2-مجاني-بدون-enterprise",{"fr":12,"en":13,"ar":10,"es":14},"stirling-pdf-v3-sso-libre-enterprise-gratuit","stirling-pdf-v3-oauth2-sso-free-no-enterprise","stirling-pdf-v3-oauth2-sso-gratuito-sin-enterprise","Stirling PDF v3: SSO OAuth2 مجاني بدون قيود Enterprise","منذ الإصدار v3.0.0 (سبتمبر 2026)، أصبح SSO OAuth2 في Stirling PDF مجانياً تماماً. هيّئه مع Authentik أو Keycloak في 15 دقيقة عبر ثلاثة كتل في settings.yml.",8,0,false,"2026-10-07T00:00:00+00:00","2026-10-07T23:07:24+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},7,"الاستضافة الذاتية","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fstirling-pdf-v3-sso-libre-enterprise-gratuit-poster.svg",{"categorySlug":34,"appSlug":35},"التعاون-والإنتاجية","stirling-pdf","حتى الإصدار v2، كان SSO OAuth2 في Stirling PDF حكراً على نسخة Enterprise: الفرق التي أرادت تأمين مثيلاتها بمزوّد هوية كانت مجبرة إما على الدفع أو الاستغناء عنه. دمجت PR #8137 في سبتمبر 2026 وشُحنت ضمن v3.0.0، ما أزال هذا القيد — أصبح SSO متاحاً على جميع التثبيتات مجاناً، دون تغيير الباقة. إذا كان مثيلك يعمل اليوم دون مصادقة مركزية، يمكنك إصلاح ذلك في خمس عشرة دقيقة.",[38,42,52,55,68,71,74,78,81],{"type":39,"title":40,"body":41},"h2","SSO الخاص بـ Enterprise أصبح مجانياً في v3","يجمع Stirling PDF أكثر من 50 عملية PDF — دمج، تقسيم، ضغط، تحويل تنسيق، OCR، توقيع، إعادة ترتيب الصفحات — في واجهة ويب مستضافة ذاتياً. منذ إطلاقه، نما الأداة على GitHub (87,000 نجمة، ترخيص MIT) وترسّخ كمرجع المصدر المفتوح لمعالجة المستندات في الفرق.\n\nكانت v2 تقسّم المميزات: العمليات الأساسية كانت مجانية، بينما كان SSO OAuth2 وبعض الوظائف المتقدمة محجوزة لباقة Enterprise. هذا النموذج كان منطقياً تجارياً، لكنه أفرز وضعاً غير مريح للفرق المستضيفة ذاتياً: Stirling PDF متاح دون كلمة مرور على منفذ مفتوح، أو بحسابات محلية يستحيل إلغاؤها من دليل مركزي.\n\nاندمجت **PR #8137** في سبتمبر 2026 وأعادت تنظيم شبكة المميزات. شحنت **v3.0.0** (ملاحظات الإصدار: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FStirling-Tools\u002FStirling-PDF\u002Freleases\u002Ftag\u002Fv3.0.0\">github.com\u002FStirling-Tools\u002FStirling-PDF\u002Freleases\u002Ftag\u002Fv3.0.0\u003C\u002Fa>) هذا التغيير، المؤكد استقراره في **v3.1.0** (5 أكتوبر 2026). النتيجة: `SECURITY_OAUTH2_ENABLED=true` يعمل على أي تثبيت ≥ v3.0.0، دون مفتاح ترخيص، دون باقة مدفوعة.",{"type":43,"title":44,"items":45},"ul","ما الذي يغيّره SSO المجاني عملياً",[46,47,48,49,50,51],"وصول مركزي: يتحقق جميع أعضاء الفريق عبر مزوّد الهوية الحالي لديك (Authentik، Keycloak، Zitadel، Okta…) — لا حسابات محلية للإنشاء أو الإلغاء يدوياً.","إلغاء فوري: تعطيل حساب في IdP الخاص بك يغلق الوصول إلى Stirling PDF في نفس الوقت مع بقية مجموعة أدواتك — لا حسابات يتيمة.","الامتثال: تُسجَّل الوصولات على جانب IdP، لا في Stirling PDF. سجل تدقيق مركزي، دون تهيئة إضافية.","تعطيل النموذج المحلي: متغير واحد (`SECURITY_OAUTH2_AUTO_CREATE_USER=false` مع تعطيل نموذج تسجيل الدخول) يمنع أي تجاوز لـ SSO.","دعم PKCE: تطبّق v3 تدفق PKCE بصورة صحيحة — تعمل IdPs التي تتطلبه (Authentik بالأخص) دون تهيئة استثنائية.","تحديث غير مدمّر: تفعيل SSO على مثيل قائم لا يحذف الملفات المعالجة ولا السجل.",{"type":39,"title":53,"body":54},"المتطلبات الأساسية","قبل البدء:\n\n**Stirling PDF ≥ v3.0.0 منشور مسبقاً.** إذا كان مثيلك يعمل على v2.x، حدّثه (`docker compose pull && docker compose up -d`) وتحقق بـ `docker compose logs stirling-pdf | grep version`.\n\n**مزوّد هوية OIDC يعمل.** يغطي هذا الدليل أكثر IdP شيوعاً في مجموعات الاستضافة الذاتية: **Authentik** (حاوية مخصصة، عادة على نفس الـ VPS) و**Keycloak** (منشور بشكل منفصل، موصى به للبيئات متعددة التطبيقات). إذا لم يكن لديك IdP بعد، يغطي دليل \u003Ca href=\"\u002Fblog\u002Fself-host-authentik-vps\">استضافة Authentik على VPS\u003C\u002Fa> التثبيت الكامل.\n\n**بروكسي عكسي مع TLS نشط.** يجب تقديم Stirling PDF عبر HTTPS — ملفات تعريف الارتباط لجلسة OAuth2 تحمل `Secure` افتراضياً. nginx وCaddy وTraefik تعمل جميعها دون تعديل.\n\n**الموارد: 1 vCPU \u002F 2 جيجابايت RAM كحد أدنى.** OCR وتحويل PDF المعقدة تستهلك الموارد — خطّط لـ 2 vCPU \u002F 4 جيجابايت للاستخدام الجماعي فوق 5 مستخدمين متزامنين.",{"type":56,"title":57,"steps":58},"steps","تفعيل SSO في Stirling PDF",[59,62,65],{"title":60,"body":61},"التحديث إلى v3.0.0 أو أحدث","إذا كان `docker-compose.yml` الخاص بك لا يزال يشير إلى صورة `frooodle\u002Fs-pdf:latest` أو إصدار محدد ≤ 2.x، حدّث الصورة أولاً:\n\n```bash\ndocker compose pull stirling-pdf\ndocker compose up -d stirling-pdf\ndocker compose logs stirling-pdf --tail=20\n```\n\nتحقق من أن سطر `Stirling-PDF version` يعرض `3.0.0` أو أعلى قبل المتابعة.",{"title":63,"body":64},"إضافة متغيرات OAuth2 في settings.yml","يحمّل Stirling PDF تهيئته من `.\u002Fconfigs\u002Fsettings.yml` (مسار الـ volume المُحمَّل في compose). افتح هذا الملف وأضف أو أكمل كتلة `security`:\n\n```bash\nsecurity:\n  enableLogin: true\n  oauth2:\n    enabled: true\n    provider: oidc\n    issuer: https:\u002F\u002Fauthentik.your-domain.com\u002Fapplication\u002Fo\u002Fstirling-pdf\u002F\n    clientId: YOUR_CLIENT_ID\n    clientSecret: YOUR_CLIENT_SECRET\n    scopes: openid,profile,email\n    useAsUsername: email\n    autoCreateUser: true\n```\n\nالمتغيرات الستة إلزامية. يحدد `SECURITY_OAUTH2_USE_AS_USERNAME` أي حقل من رمز OIDC يُستخدم كاسم مستخدم في Stirling PDF — `email` هو الخيار المعتاد، `preferred_username` يعمل أيضاً إذا وفّره IdP الخاص بك.\n\nبدلاً من ذلك، يمكن تمرير هذه المتغيرات مباشرة في `docker-compose.yml` تحت `environment:` بالبادئة `SECURITY_OAUTH2_`:\n\n```bash\nenvironment:\n  SECURITY_OAUTH2_ENABLED: \"true\"\n  SECURITY_OAUTH2_PROVIDER: oidc\n  SECURITY_OAUTH2_ISSUER: https:\u002F\u002Fauthentik.your-domain.com\u002Fapplication\u002Fo\u002Fstirling-pdf\u002F\n  SECURITY_OAUTH2_CLIENT_ID: YOUR_CLIENT_ID\n  SECURITY_OAUTH2_CLIENT_SECRET: YOUR_CLIENT_SECRET\n  SECURITY_OAUTH2_SCOPES: openid,profile,email\n  SECURITY_OAUTH2_USE_AS_USERNAME: email\n  SECURITY_OAUTH2_AUTO_CREATE_USER: \"true\"\n```",{"title":66,"body":67},"إعادة تشغيل الحاوية والتحقق من السجلات","طبّق التهيئة:\n\n```bash\ndocker compose restart stirling-pdf\ndocker compose logs stirling-pdf --follow --tail=30\n```\n\nابحث عن سطر `OAuth2 SSO enabled` في سجلات بدء التشغيل. إذا رأيت `Error loading OAuth2 issuer metadata`، فإن نقطة اكتشاف OIDC (`\u002F.well-known\u002Fopenid-configuration`) غير قابلة للوصول من الحاوية — تحقق من أن URL الـ `issuer` قابل للوصول عبر شبكة Docker.\n\nاختبر بعدها أن نقطة إعادة التوجيه موجودة:\n\n```bash\ncurl -I https:\u002F\u002Fpdf.your-domain.com\u002Foauth2\u002Fauthorization\u002Foidc\n```\n\nالاستجابة المتوقعة: `HTTP\u002F2 302` نحو URL تفويض IdP الخاص بك. الـ `404` يعني أن SSO غير مفعّل (متغير لم يُقرأ أو الحاوية لم تُعد تشغيلها).",{"type":39,"title":69,"body":70},"تهيئة Authentik كمزوّد هوية","في واجهة إدارة Authentik (`https:\u002F\u002Fauthentik.your-domain.com\u002Fif\u002Fadmin\u002F`):\n\n**1. إنشاء Provider من نوع OAuth2\u002FOIDC**\n\nاذهب إلى **Applications → Providers → Create**. اختر **OAuth2\u002FOpenID Connect Provider**. أعطه اسماً (مثلاً `stirling-pdf-provider`). في حقل **Redirect URIs**، أدخل بالضبط:\n\n```bash\nhttps:\u002F\u002Fpdf.your-domain.com\u002Flogin\u002Foauth2\u002Fcode\u002Foidc\n```\n\nفعّل **PKCE** إذا كان مربع الاختيار متاحاً — يتطلبه Authentik افتراضياً منذ الإصدار 2024.x. اترك النطاقات على `openid` و`profile` و`email`.\n\nسجّل **Client ID** و**Client Secret** المُولَّدَين — هذه هي القيم التي ستنسخها في `settings.yml`.\n\n**2. إنشاء التطبيق**\n\nاذهب إلى **Applications → Applications → Create**. سمّه `Stirling PDF`، اختر Provider المُنشأ في الخطوة السابقة. احفظ.\n\n**3. الحصول على URL الـ issuer**\n\nيتبع URL اكتشاف OIDC في Authentik النمط:\n\n```bash\nhttps:\u002F\u002Fauthentik.your-domain.com\u002Fapplication\u002Fo\u002Fstirling-pdf\u002F\n```\n\nحيث `stirling-pdf` هو الـ **slug** للتطبيق (ليس الـ Provider). تحقق بفتح `https:\u002F\u002Fauthentik.your-domain.com\u002Fapplication\u002Fo\u002Fstirling-pdf\u002F.well-known\u002Fopenid-configuration` في متصفح — يجب أن تتلقى JSON صالحاً مع `authorization_endpoint`.",{"type":39,"title":72,"body":73},"تهيئة Keycloak كمزوّد هوية","في وحدة تحكم إدارة Keycloak (`https:\u002F\u002Fkeycloak.your-domain.com\u002Fadmin\u002F`):\n\n**1. اختيار الـ Realm**\n\nاختر الـ realm الذي يستضيف مستخدميك (مثلاً `master` للاستخدام الداخلي، أو realm مخصص `internal-apps`).\n\n**2. إنشاء عميل OIDC**\n\nاذهب إلى **Clients → Create client**. أدخل:\n- **Client ID**: `stirling-pdf` (قيمة حرة، لكن يجب الإبلاغ عنها في `settings.yml`)\n- **Client Protocol**: `openid-connect`\n- **Access Type**: `confidential`\n\nفي تبويب **Settings**، أضف Redirect URI:\n\n```bash\nhttps:\u002F\u002Fpdf.your-domain.com\u002Flogin\u002Foauth2\u002Fcode\u002Foidc\n```\n\nفعّل **Standard Flow** وعطّل **Implicit Flow**.\n\n**3. الحصول على Client Secret**\n\nتبويب **Credentials** ← انسخ قيمة **Secret**.\n\n**4. URL الـ issuer لـ Keycloak**\n\nيتبع URL النمط:\n\n```bash\nhttps:\u002F\u002Fkeycloak.your-domain.com\u002Frealms\u002FYOUR_REALM\n```\n\nتحقق بفتح `https:\u002F\u002Fkeycloak.your-domain.com\u002Frealms\u002FYOUR_REALM\u002F.well-known\u002Fopenid-configuration`.",{"type":75,"title":76,"body":77},"tip","التصليب: عطّل نموذج تسجيل الدخول المحلي بعد SSO","بمجرد التحقق من SSO وهجرة جميع المستخدمين، يُنصح بتعطيل نموذج تسجيل الدخول بكلمة مرور المحلية — الذي يبقى نشطاً افتراضياً حتى مع تفعيل OAuth2. أضف في `settings.yml`:\n\n```bash\nsecurity:\n  enableLogin: true\n  loginMethod: oauth2\n```\n\nتعطيل الطريقة المحلية يمنع أي تجاوز لـ SSO عبر النموذج. احتفظ بحساب إداري طارئ في IdP الخاص بك قبل تطبيق هذه التهيئة — إذا أصبح IdP الخاص بك غير متاح، لن تتمكن من تسجيل الدخول.",{"type":39,"title":79,"body":80},"استكشاف أخطاء الأخطاء الشائعة وإصلاحها","**`redirect_uri mismatch`** — الـ URI المسجّل في المزوّد لا يطابق بالضبط ما يرسله Stirling PDF. القيمة المتوقعة هي `https:\u002F\u002Fpdf.your-domain.com\u002Flogin\u002Foauth2\u002Fcode\u002Foidc`، بدون شرطة مائلة في النهاية، HTTPS إلزامي. تحقق من غياب مسافات أو أحرف غير مرئية في حقل IdP الخاص بك.\n\n**`PKCE required` أو `code_challenge_method unsupported`** — يتطلب Authentik PKCE افتراضياً منذ 2024.x. إذا كان إصدار Stirling PDF الخاص بك \u003C 3.0.0، فإنه لا يدعم PKCE — حدّثه. على v3، تدفق PKCE مدعوم أصلاً.\n\n**ملفات تعريف الارتباط cross-domain تضيع بعد إعادة توجيه IdP** — إذا كان Stirling PDF يُقدَّم على نطاق فرعي مختلف عن IdP الخاص بك، تحقق من أن البروكسي العكسي لا يحقن `SameSite=Strict` على ملفات تعريف ارتباط الجلسة. القيمة الصحيحة هي `SameSite=Lax`. العرَض: يؤدي إعادة التوجيه من IdP إلى صفحة بيضاء أو حلقة إعادة تحميل.\n\n**`Error loading OAuth2 issuer metadata`** عند بدء التشغيل — حاوية Stirling PDF لا تستطيع الوصول إلى نقطة اكتشاف IdP الخاص بك. الأسباب الشائعة: شبكة Docker معزولة، شهادة TLS ذاتية التوقيع غير موثوق بها، أو IdP متوقف. اختبر من الحاوية: `docker compose exec stirling-pdf curl -s https:\u002F\u002Fauthentik.your-domain.com\u002Fapplication\u002Fo\u002Fstirling-pdf\u002F.well-known\u002Fopenid-configuration`.\n\n**المستخدم يسجّل الدخول لكنه يرى `403 Forbidden`** — `SECURITY_OAUTH2_AUTO_CREATE_USER` يساوي `false` (الافتراضي) والمستخدم غير موجود بعد في Stirling PDF. اضبطه على `true` ريثما تُنشأ الحسابات عند أول تسجيل دخول، أو أنشئ المستخدمين يدوياً من واجهة إدارة Stirling PDF.",{"type":39,"title":82,"body":83},"SSO دون تكلفة، كتلة تلو الأخرى","لم يعد SSO ميزة تسويقية لإصدار مدفوع — إنه تهيئة ثلاث كتل في ملف YAML. جعلت v3.0.0 هذا التغيير دائماً، وتؤكد v3.1.0 (5 أكتوبر 2026) استقرار السلوك الجديد.\n\nإذا كان مثيل Stirling PDF الخاص بك معروضاً على فريقك اليوم دون مصادقة مركزية، فإن الإصلاح يتطلب تحديث حاوية واحدة، وثلاثة متغيرات بيئية، وشاشتين من التهيئة في IdP الخاص بك. العائد: إلغاء فوري، وسجل تدقيق مركزي، وناقل وصول غير محكوم مغلق.\n\nللتعمق أكثر في IdPs المصدر المفتوح المغطاة هنا، تغطي الأدلة \u003Ca href=\"\u002Fblog\u002Fself-host-authentik-vps\">استضافة Authentik على VPS\u003C\u002Fa> و\u003Ca href=\"\u002Fblog\u002Fauthentik-vs-authelia-keycloak-sso-vps-2026\">Authentik أو Authelia أو Keycloak: اختيار SSO الخاص بك\u003C\u002Fa> نشر كل حل ومقايضاته.","انشر Stirling PDF مع SSO على VPS الخاص بك","جهّز بيئة Stirling PDF جاهزة للاستخدام — Docker Compose والبروكسي العكسي وإعداد SSO متضمنة. اربط مزوّد OIDC الخاص بك وأمّن وصول الفريق من أول تشغيل.","تفعيل هذا الحل","\u002Fmarketplace\u002Fالتعاون-والإنتاجية\u002Fstirling-pdf",[89,106,129],{"id":90,"slug":91,"slugs":92,"title":96,"excerpt":97,"readTime":98,"views":18,"isPinned":19,"publishedAt":99,"updatedAt":100,"category":101,"categories":102,"featuredImage":30,"bgImage":31,"posterImage":104,"relatedSolution":105},178,"استضافة-stirling-pdf-على-vps-أكثر-من-50-عملية-بلا-سحابة",{"fr":93,"en":94,"ar":91,"es":95},"self-host-stirling-pdf-vps","self-host-stirling-pdf-on-a-vps-50-pdf-operations-no-cloud","alojar-stirling-pdf-en-un-vps","استضافة Stirling PDF على VPS: أكثر من 50 عملية بلا سحابة","استضف Stirling PDF ذاتيًا على خادم VPS — تطبيق PDF رقم 1 على GitHub (87 ألف نجمة، MIT). دمج وتقسيم وضغط وتحويل وOCR وأكثر من 50 عملية. بلا رفع سحابي، بلا اشتراك.",5,"2026-07-13T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[103],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fself-host-stirling-pdf-vps-poster.svg",{"categorySlug":34,"appSlug":35},{"id":107,"slug":108,"slugs":109,"title":113,"excerpt":114,"readTime":115,"views":116,"isPinned":19,"publishedAt":117,"updatedAt":118,"category":119,"categories":124,"featuredImage":30,"bgImage":31,"posterImage":126,"relatedSolution":127},162,"استضافة-authelia-على-vps-مصادقة-ثنائية-ودخول-موحد-لمنظومتك",{"fr":110,"en":111,"ar":108,"es":112},"self-host-authelia-vps","self-host-authelia-on-a-vps-mfa-and-sso-for-your-whole-stack","alojar-authelia-en-un-vps","Authelia على VPS: المصادقة الثنائية وSSO لعمليتك بأكملها","دليل شامل لنشر Authelia على VPS باستخدام Docker Compose: التحكم المتقدم في الوصول، TOTP، WebAuthn\u002Fمفاتيح المرور، OIDC، الانتقال إلى LLDAP، مراقبة Prometheus، ومقارنة مع Authentik.",10,3,"2026-07-04T00:00:00+00:00","2026-09-24T12:27:51+00:00",{"id":17,"name":120,"slug":121,"color":122,"icon":123},"الأمان والمراقبة","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[125],{"id":17,"name":120,"slug":121,"color":122,"icon":123},"\u002Fblog\u002Fcovers\u002Fself-host-authelia-vps-poster.svg",{"categorySlug":123,"appSlug":128},"authelia",{"id":130,"slug":131,"slugs":132,"title":136,"excerpt":137,"readTime":138,"views":139,"isPinned":19,"publishedAt":140,"updatedAt":100,"category":141,"categories":142,"featuredImage":30,"bgImage":31,"posterImage":144,"relatedSolution":145},272,"authentik-أو-authelia-أو-keycloak-اختيار-sso-على-vps",{"fr":133,"en":134,"ar":131,"es":135},"authentik-vs-authelia-keycloak-sso-vps-2026","authentik-authelia-or-keycloak-choosing-your-sso-on-vps","authentik-authelia-o-keycloak-elegir-sso-en-vps","‏Authentik أو ‏Authelia أو ‏Keycloak: اختيار ‏SSO على ‏VPS","‏مقارنة Authentik وAuthelia وKeycloak على VPS: استهلاك الذاكرة الحقيقي، البروتوكولات المدعومة وثغرات Keycloak 26.7.1 لاختيار نظام الهوية الأنسب.",6,1,"2026-08-16T00:00:00+00:00",{"id":17,"name":120,"slug":121,"color":122,"icon":123},[143],{"id":17,"name":120,"slug":121,"color":122,"icon":123},"\u002Fblog\u002Fcovers\u002Fauthentik-vs-authelia-keycloak-sso-vps-2026-poster.svg",{"categorySlug":146,"appSlug":147},"الأمن-السيبراني-والحصن","authentik",1791414734156]