secrets
استخدم openclaw secrets لإدارة SecretRefs والحفاظ على صحة لقطة وقت التشغيل النشطة. أدوار الأوامر:
reload: نداء RPC للبوابة (secrets.reload) يعيد حل المراجع ويبدل لقطة وقت التشغيل فقط عند النجاح الكامل (بدون كتابة في التكوين).audit: مسح للقراءة فقط لمخازن التكوين/المصادقة/النماذج المُنشأة والمخلفات القديمة للبحث عن النص العادي، والمراجع غير المحلولة، وانحراف الأسبقية.configure: مخطط تفاعلي لإعداد المزود، وتعيين الهدف، والفحص المسبق (يتطلب TTY).apply: تنفيذ خطة محفوظة (--dry-runللتحقق فقط)، ثم مسح مخلفات النص العادي المستهدفة.
حلقة التشغيل الموصى بها:
openclaw secrets audit --check
openclaw secrets configure
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
openclaw secrets audit --check
openclaw secrets reload
ملاحظة حول رمز الخروج لـ CI/البوابات:
audit --checkيُرجع1عند وجود نتائج.- المراجع غير المحلولة تُرجع
2.
مواضيع ذات صلة:
- دليل الأسرار: إدارة الأسرار
- سطح بيانات الاعتماد: سطح بيانات اعتماد SecretRef
- دليل الأمان: الأمان
إعادة تحميل لقطة وقت التشغيل
أعد حل مراجع الأسرار وبدل لقطة وقت التشغيل بشكل ذري.
openclaw secrets reload
openclaw secrets reload --json
ملاحظات:
- يستخدم طريقة RPC للبوابة
secrets.reload. - إذا فشل الحل، تحتفظ البوابة بآخر لقطة جيدة معروفة وتُرجع خطأ (بدون تنشيط جزئي).
- استجابة JSON تتضمن
warningCount.
مراجعة
امسح حالة OpenClaw للبحث عن:
- تخزين أسرار كنص عادي
- مراجع غير محلولة
- انحراف الأسبقية (بيانات اعتماد
auth-profiles.jsonتحجب مراجعopenclaw.json) - مخلفات في
agents/*/agent/models.jsonالمُنشأة (قيمapiKeyللمزود وعناوين المزود الحساسة) - مخلفات قديمة (إدخالات مخزن مصادقة قديم، تذكيرات OAuth)
ملاحظة حول مخلفات العناوين:
- كشف عنوان المزود الحساس يعتمد على اسم إرشادي (أسماء عناوين المصادقة/بيانات الاعتماد الشائعة وأجزاء منها مثل
authorization,x-api-key,token,secret,password, وcredential).
openclaw secrets audit
openclaw secrets audit --check
openclaw secrets audit --json
سلوك الخروج:
--checkيخرج برمز غير صفري عند وجود نتائج.- المراجع غير المحلولة تخرج برمز غير صفري ذي أولوية أعلى.
أبرز شكل التقرير:
status:clean | findings | unresolvedsummary:plaintextCount,unresolvedRefCount,shadowedRefCount,legacyResidueCount- رموز النتائج:
PLAINTEXT_FOUNDREF_UNRESOLVEDREF_SHADOWEDLEGACY_RESIDUE
تكوين (مساعد تفاعلي)
أنشئ تغييرات المزود و SecretRef بشكل تفاعلي، وقم بالفحص المسبق، وطبقها اختيارياً:
openclaw secrets configure
openclaw secrets configure --plan-out /tmp/openclaw-secrets-plan.json
openclaw secrets configure --apply --yes
openclaw secrets configure --providers-only
openclaw secrets configure --skip-provider-setup
openclaw secrets configure --agent ops
openclaw secrets configure --json
التدفق:
- أولاً إعداد المزود (
add/edit/removeلـsecrets.providersaliases). - ثانياً تعيين بيانات الاعتماد (اختر الحقول وعيّن مراجع
{source, provider, id}). - أخيراً الفحص المسبق والتطبيق الاختياري.
الأعلام:
--providers-only: قم بتكوينsecrets.providersفقط، تخطى تعيين بيانات الاعتماد.--skip-provider-setup: تخطى إعداد المزود وقم بتعيين بيانات الاعتماد إلى المزودين الموجودين.--agent <id>: حدد نطاق اكتشاف الهدف وكتابةauth-profiles.jsonلمخزن وكيل واحد.
ملاحظات:
- يتطلب TTY تفاعلي.
- لا يمكنك الجمع بين
--providers-onlyو--skip-provider-setup. - يستهدف
configureالحقول الحاملة للأسرار فيopenclaw.jsonبالإضافة إلىauth-profiles.jsonلنطاق الوكيل المحدد. - يدعم
configureإنشاء تعيينات جديدة لـauth-profiles.jsonمباشرة في تدفق منتقي الخيارات. - السطح المدعوم الأساسي: سطح بيانات اعتماد SecretRef.
- يقوم بالفحص المسبق للحل قبل التطبيق.
- الخطط المُنشأة تفترض خيارات المسح بشكل افتراضي (
scrubEnv,scrubAuthProfilesForProviderTargets,scrubLegacyAuthJsonمفعلة جميعها). - مسار التطبيق باتجاه واحد لقيم النص العادي الممسوحة.
- بدون
--apply، لا يزال CLI يطالب بـApply this plan now?بعد الفحص المسبق. - مع
--apply(وبدون--yes)، يطالب CLI بتأكيد إضافي لا رجعة فيه.
ملاحظة أمان مزود Exec:
- غالباً ما تعرض التثبيتات عبر Homebrew ملفات ثنائية مرتبطة رمزياً تحت
/opt/homebrew/bin/*. - عيّن
allowSymlinkCommand: trueفقط عند الحاجة لمسارات مدير الحزم الموثوقة، وقم بإقرانها بـtrustedDirs(مثال["/opt/homebrew"]). - على Windows، إذا لم يكن التحقق من ACL متاحاً لمسار مزود، فإن OpenClaw يفشل مغلقاً. للمسارات الموثوقة فقط، عيّن
allowInsecurePath: trueعلى ذلك المزود لتجاوز فحوصات أمان المسار.
تطبيق خطة محفوظة
طبق أو قم بالفحص المسبق لخطة مُنشأة مسبقاً:
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --json
تفاصيل عقد الخطة (مسارات الهدف المسموحة، قواعد التحقق، ودلالات الفشل):
ما قد يقوم apply بتحديثه:
openclaw.json(أهداف SecretRef + عمليات إدراج/حذف المزود)auth-profiles.json(مسح الهدف الخاص بالمزود)- مخلفات
auth.jsonالقديمة ~/.openclaw/.envمفاتيح الأسرار المعروفة التي تم نقل قيمها
لماذا لا توجد نسخ احتياطية للتراجع
secrets apply لا يكتب عمداً نسخاً احتياطية للتراجع تحتوي على قيم النص العادي القديمة. يأتي الأمان من الفحص المسبق الصارم + التطبيق شبه الذري مع استعادة قصوى الجهد في الذاكرة عند الفشل.
مثال
openclaw secrets audit --check
openclaw secrets configure
openclaw secrets audit --check
إذا كان audit --check لا يزال يُبلغ عن نتائج نص عادي، قم بتحديث مسارات الهدف المتبقية المُبلغ عنها وأعد تشغيل المراجعة.