Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

المصادقة

يستخدم OpenPR JWT (JSON Web Tokens) لمصادقة المستخدم ورموز البوت للوصول عبر مساعد الذكاء الاصطناعي وخادم MCP.

مصادقة المستخدم (JWT)

التسجيل

أنشئ حساباً جديداً:

bash
curl -X POST http://localhost:8080/api/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "name": "John Doe",
    "password": "SecurePassword123"
  }'

الاستجابة:

json
{
  "code": 0,
  "message": "success",
  "data": {
    "user": {
      "id": "uuid",
      "email": "[email protected]",
      "name": "John Doe",
      "role": "user"
    },
    "access_token": "eyJ...",
    "refresh_token": "eyJ..."
  }
}

أول مستخدم

أول مستخدم يسجل يتلقى دور admin تلقائياً. جميع المستخدمين اللاحقين user افتراضياً.

تسجيل الدخول

bash
curl -X POST http://localhost:8080/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "password": "SecurePassword123"
  }'

تتضمن الاستجابة access_token وrefresh_token ومعلومات المستخدم مع role.

استخدام رمز الوصول

أدرج رمز الوصول في رأس Authorization لجميع الطلبات المُصادَق عليها:

bash
curl -H "Authorization: Bearer eyJ..." \
  http://localhost:8080/api/workspaces

تحديث الرمز

عند انتهاء صلاحية رمز الوصول، استخدم رمز التحديث للحصول على زوج جديد:

bash
curl -X POST http://localhost:8080/api/auth/refresh \
  -H "Content-Type: application/json" \
  -d '{"refresh_token": "eyJ..."}'

الحصول على المستخدم الحالي

bash
curl -H "Authorization: Bearer eyJ..." \
  http://localhost:8080/api/auth/me

يُعيد ملف المستخدم الحالي بما في ذلك role (admin/user).

إعداد الرمز

مدة حياة رمز JWT مُهيَّأة عبر متغيرات البيئة:

المتغيرالافتراضيالوصف
JWT_SECRETchange-me-in-productionالمفتاح السري لتوقيع الرموز
JWT_ACCESS_TTL_SECONDS2592000 (30 يوم)مدة حياة رمز الوصول
JWT_REFRESH_TTL_SECONDS604800 (7 أيام)مدة حياة رمز التحديث

أمان الإنتاج

اضبط دائماً JWT_SECRET إلى قيمة قوية وعشوائية في الإنتاج. القيمة الافتراضية غير آمنة.

مصادقة رمز البوت

توفر رموز البوت مصادقة لمساعدي الذكاء الاصطناعي والأدوات الآلية. هي مُقيَّدة بمساحة العمل وتستخدم بادئة opr_.

إنشاء رموز البوت

تُدار رموز البوت من خلال واجهة إعدادات مساحة العمل أو API:

bash
curl -X POST http://localhost:8080/api/workspaces/<workspace_id>/bots \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <admin_token>" \
  -d '{"name": "Claude Assistant"}'

استخدام رموز البوت

تُستخدم رموز البوت بنفس طريقة رموز JWT:

bash
curl -H "Authorization: Bearer opr_abc123..." \
  http://localhost:8080/api/workspaces/<workspace_id>/projects

خصائص رمز البوت

الخاصيةالوصف
البادئةopr_
النطاقمساحة عمل واحدة
نوع الكيانينشئ كيان مستخدم bot_mcp
الصلاحياتنفس عضو مساحة العمل
سجل التدقيقجميع الإجراءات مُسجَّلة تحت مستخدم البوت

ملخص نقاط نهاية المصادقة

نقطة النهايةالطريقةالوصف
/api/auth/registerPOSTإنشاء حساب
/api/auth/loginPOSTتسجيل الدخول والحصول على الرموز
/api/auth/refreshPOSTتحديث زوج الرموز
/api/auth/meGETالحصول على معلومات المستخدم الحالي

الخطوات التالية

Released under the Apache-2.0 License.