تحديثات منتج لوغتو
🎉 نقدم لكم إصدار يوليو: حزمة تطوير API للوغتو، خزنة سرية لتخزين رموز الاتحاد، إدارة رموز TOTP ورموز النسخ الاحتياطي عبر واجهة حساب البرمجة (API)، والمزيد!
🎉 نقدم لكم إصدار يوليو: حزمة تطوير API للوغتو، خزنة سرية لتخزين رموز الاتحاد، إدارة رموز TOTP ورموز النسخ الاحتياطي عبر واجهة حساب البرمجة (API)، والمزيد!
حزمة TypeScript للتفاعل مع واجهة إدارة لوغتو باستخدام مصادقة بيانات الاعتماد للعملاء.
كيفية العمل:
npm install @logto/apicreateManagementApi() لإنشاء عميل واجهة إدارة API مع بيانات اعتماد تطبيقك.أبرز المميزات:
الخزنة السرية هي حل تخزين آمن في لوغتو لإدارة بيانات المستخدم الحساسة، بما في ذلك رموز الوصول، مفاتيح API، الرموز السرية، وغيرها من المعلومات السرية. تُستخدم هذه الأسرار عادةً للوصول إلى خدمات الجهات الخارجية نيابةً عن المستخدمين، مما يجعل التخزين الآمن أمرًا بالغ الأهمية.
أصبح تخزين الرموز مدعومًا الآن لوصلات تسجيل الدخول الأحادي (SSO) الاجتماعية والمهنية. عند تفعيلها، يخزن لوغتو مجموعة الرموز التي يصدرها موفر الهوية بعد المصادقة الناجحة. يمكن للتطبيقات بعد ذلك استرجاع رمز الوصول لاحقًا—دون الحاجة إلى إعادة مصادقة المستخدم—لاستدعاء واجهات برمجة التطبيقات للجهات الخارجية.
الوصلات المدعومة:
كيفية العمل:
لمزيد من التفاصيل، اطلع على توثيق الخزنة السرية.
يمكن للمستخدمين الآن إضافة رموز TOTP ورموز النسخ الاحتياطي عبر واجهة حساب البرمجة (API).
POST /api/my-account/mfa-verifications/totp-secret/generate: توليد رمز سري لـ TOTP.POST /api/my-account/mfa-verifications/backup-codes/generate: توليد رموز نسخ احتياطي.POST /api/my-account/mfa-verifications: إضافة رمز TOTP أو رمز نسخ احتياطي باستخدام السر أو الرموز التي تم توليدها.GET /api/my-account/mfa-verifications/backup-codes: استرجاع رموز النسخ الاحتياطي.scope مخصصة عند توليد رابط التخويل لوصلات التواصل الاجتماعي. يتيح لك ذلك طلب أذونات إضافية من مزود الخدمة الاجتماعية عند استدعاء نقطة تحقق التواصل الاجتماعي للوغتو. إذا تم توفير النطاق فسيُستخدم في طلب التخويل؛ وإلا فسيتم استخدام النطاق الافتراضي المُعد في إعدادات الموصل.قيود المفتاح الأجنبي الواعية للمستأجر لجدول organization_user_relations
المشكلة
كان المطورون قد يخطئون في تعيين user_id من مستأجر آخر لمنظمة، مما يؤدي إلى ظهور أخطاء 500 في نقاط API لمستخدمي المنظمة. كان جدول organization_user_relations الأصلي يحتوي فقط على قيد مفتاح أجنبي على users (id)، مما يسمح بتعيين أي معرف مستخدم موجود بغض النظر عن عزل المستأجر.
جذر المشكلة
يطبق لوغتو أمان الصفوف (RLS) على جميع الجداول لعزل وصول البيانات بين المستأجرين. عند ربط جدول المستخدمين بـ organization_user_relations، تصبح بيانات المستخدم الفعلية غير متاحة للمستأجر الحالي بسبب قيود RLS، مما يؤدي إلى عودة بيانات المستخدم بقيمة فارغة وحدوث أخطاء خادم 500.
الحل
تمت إضافة قيد مفتاح أجنبي مركب (tenant_id, user_id) يشير إلى users (tenant_id, id) لضمان أن معرف مستأجر المنظمة يطابق معرف مستأجر المستخدم. يفرض هذا القيد العزل المناسب للمستأجر على مستوى قاعدة البيانات.