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