نشر إضافات Visual Studio Marketplace بأمان عبر Trusted Publishing

أعلنت Microsoft عن Trusted Publishing لـ Visual Studio Marketplace، وهي طريقة جديدة لنشر إضافات Visual Studio Code وVisual Studio عبر GitHub Actions أو Azure Pipelines دون الحاجة إلى personal access token (PAT) طويل الأمد من Azure DevOps. تعتمد هذه الطريقة على federated identity لمصادقة سير عمل الإصدار، ما يلغي الحاجة إلى تخزين أسرار النشر أو تدويرها.
لماذا Trusted Publishing؟
تقليديًا، تطلب النشر الآلي إلى Marketplace تخزين PAT كسر في CI/CD. ويوفر Trusted Publishing بديلًا أكثر أمانًا:
- لا أسرار طويلة الأمد—لا حاجة لتخزين بيانات اعتماد النشر أو تدويرها.
- وصول قصير الأمد—بالنسبة إلى GitHub Actions، يصدر Marketplace بيانات اعتماد مؤقتة تنتهي صلاحيتها بعد 15 دقيقة.
- هوية موحدة—يثق Marketplace بسير عمل GitHub المهيأ أو بهوية عبء العمل في Azure Pipelines.
تظل طرق النشر الحالية القائمة على PAT صالحة للعمل، ما يتيح للمستخدمين الانتقال إلى Trusted Publishing في الوقت الذي يناسبهم.
كيف يعمل
- يعرض نظام CI/CD هويته الموحدة على Visual Studio Marketplace.
- يتحقق Marketplace من سياسة Trusted Publishing في GitHub أو من هوية عبء العمل في Azure Pipelines.
- تستخدم أداة النشر الهوية التي تم التحقق منها لنشر الإضافة دون PAT.
تتم هذه العملية تلقائيًا عند النشر باستخدام OIDC، ما يزيل الحاجة إلى إدارة PAT.
مزودو CI/CD المدعومون
| المزود | الحالة | المصادقة والإعداد |
|---|---|---|
| GitHub Actions | مدعوم | أنشئ سياسة في صفحة Trusted Publishing الخاصة بالناشر وانشر باستخدام GitHub OIDC. |
| Azure Pipelines | مدعوم | هيئ اتصال خدمة WIF مدعومًا من Microsoft Entra وأضف هويته كمساهم في الناشر. لا حاجة إلى سياسة Marketplace. |
البدء مع GitHub Actions
للبدء، أنشئ سياسة Marketplace تحدد مستودع GitHub وسير العمل المسموح لهما بالنشر.
1. إنشاء سياسة Trusted Publishing
- سجّل الدخول إلى Visual Studio Marketplace.
- افتح الناشر الذي يملك إضافتك.
- اختر Trusted Publishing.
- وسّع Create، ثم املأ الحقول المطلوبة.
| الحقل | القيمة |
|---|---|
| Policy name | اسم وصفي مثل Release workflow. |
| Repository owner | اسم منظمة GitHub أو المستخدم الدقيق، مثل contoso. |
| Repository | اسم المستودع، مثل sample-extension. |
| Workflow | اسم ملف سير العمل ضمن .github/workflows، مثل publish.yml. |
| Environment (optional) | إن انطبق، أدخل الاسم الدقيق لبيئة GitHub، مثل production. |
بالنسبة إلى المستودعات الخاصة، يجب أن يعمل سير العمل المهيأ خلال 48 ساعة من إنشاء السياسة. أول تبادل ناجح للرمز ينشّط السياسة.
النشر من Azure Pipelines
يستخدم Azure Pipelines اتصال خدمة Azure DevOps مع Workload Identity Federation بدلًا من سياسة Trusted Publishing في GitHub. ينبغي للمستخدمين:
- تهيئة اتصال خدمة Azure Pipelines يستخدم Workload Identity Federation.
- إضافة تلك الهوية إلى ناشر Visual Studio Marketplace الخاص بك ومنحها دور Contributor.
- تهيئة خطوة النشر لاستخدام اتصال خدمة WIF.
يتيح هذا الإعداد لخط الأنابيب نشر الإضافات دون الحاجة إلى PAT من Marketplace.
جرّب Trusted Publishing اليوم
يبسّط Trusted Publishing إصدارات الإضافات الآلية، ما يجعل صيانتها أسهل وأكثر أمانًا بطبيعتها عبر إلغاء الحاجة إلى أسرار نشر طويلة الأمد.
للحصول على تعليمات الإعداد الكاملة وإرشادات استكشاف الأخطاء وإصلاحها، يمكن للمستخدمين زيارة وثائق Trusted Publishing.
رابط ذو صلة: learn.microsoft.com
المصدر: Microsoft Developer Blogs