البدء مع واجهة سطر الأوامر متعددة المنصات لـ Microsoft 365
By Mirko Peters ·
مرحبًا بعودتكم أيها المستمعون والقراء! إذا سبق لك أن وجدت نفسك غارقًا في كومة من المهام الإدارية المتكررة في مركز إدارة Microsoft 365، تنقر عبر قوائم لا تنتهي فقط لتوفير موقع أو تحديث خاصية مستخدم، فهذا الدليل موجّه إليكم على وجه الخصوص. تتطلب إدارة السحابة الحديثة السرعة وقابلية التوسع والدقة. ولّت الأيام التي كان فيها مسؤول النظام الحقيقي أو المطور يعتمد وحده على واجهات المستخدم الرسومية لإدارة
Automatically translated with AI from the original post. Read the English original
مرحبًا بعودتكم أيها المستمعون والقراء! إذا سبق لك أن وجدت نفسك غارقًا في كومة من المهام الإدارية المتكررة في مركز إدارة Microsoft 365، تنقر عبر قوائم لا تنتهي فقط لتوفير موقع أو تحديث خاصية مستخدم، فهذا الدليل موجّه إليكم على وجه الخصوص. تتطلب إدارة السحابة الحديثة السرعة وقابلية التوسع والدقة. ولّت الأيام التي كان فيها مسؤول النظام الحقيقي أو المطور يعتمد وحده على واجهات المستخدم الرسومية لإدارة بيئات المؤسسات الواسعة. اليوم نحتفي بقوة سطر الأوامر. في هذا الغوص المعمّق والشامل، سنستكشف واجهة سطر الأوامر متعددة المنصات لـ Microsoft 365، وهي أداة تتحول بسرعة إلى السلاح السري لمحترفي تقنية المعلومات والمطورين والمستشارين الذين يريدون استعادة وقتهم وأتمتة سير عملهم.
تُعد هذه التدوينة رفيقًا موسّعًا لأحدث حلقة لدينا في البودكاست، Automate Microsoft 365 with the Cross-Platform CLI. إذا أعجبتك الأفكار التي نفصّلها أدناه، فتأكد من الاستماع إلى الحلقة كاملةً للحصول على نصائح وحيل إضافية وأحاديث ممتعة!
مقدمة عن واجهة سطر الأوامر متعددة المنصات لـ Microsoft 365
قبل أن نغوص في خطوات التثبيت والمصادقة، دعونا نتوقف لحظة لفهم ماهية واجهة سطر الأوامر لـ Microsoft 365 تحديدًا، ولماذا تستحق مكانًا دائمًا في أدوات عملك الإدارية. هي في جوهرها واجهة سطر أوامر مرنة ومفتوحة المصدر، تتيح لك إدارة مجموعة متنوعة من الإعدادات والبيانات عبر المستأجر الخاص بك في Microsoft 365. ما يمنحها قوة فريدة يتضح من اسمها: فهي متعددة المنصات. سواء كنت تعمل على نظام Windows في جهازك الرئيسي، أو تعتمد على macOS في تطويرك اليومي، أو تشغّل توزيعة Linux خفيفة على خادم أو حاوية، فإن واجهة سطر الأوامر لـ Microsoft 365 تعمل بشكل متسق على جميع هذه الأنظمة.
تاريخيًا، كان مسؤولو Microsoft غالبًا ما يضطرون إلى التنقل بين أدوات متعددة ومتباينة. كنت تستخدم Azure PowerShell لمهام Azure Active Directory، وSharePoint PnP PowerShell لتوفير مواقع SharePoint Online، وربما استدعاءات Graph API مختلفة تمامًا أو سكربتات مخصصة لخدمات أخرى. تسدّ واجهة سطر الأوامر لـ Microsoft 365 هذه الفجوات من خلال توفير بناء جملة موحّد. تعتمد الواجهة على Microsoft Graph API خلف الكواليس، إذ تغلّف طلبات REST المعقدة في أوامر بديهية وسهلة القراءة. وعلاوةً على ذلك، ولأنها مبنية على Node.js ومفتوحة المصدر، فإنها تتمتع بمجتمع نشط يساهم باستمرار بميزات جديدة وإصلاحات للأخطاء وإضافات. سواء كنت تدير مواقع SharePoint أو Microsoft Teams أو مستخدمي Azure AD أو بيئات Power Platform، تقدّم لك هذه الأداة لوحة تحكم موحدة مباشرةً داخل الطرفية.
تثبيت الواجهة على Windows وmacOS وLinux
تشغيل الواجهة على جهازك أمر بسيط للغاية، بغض النظر عن نظام التشغيل الذي تفضّله. وبما أن الأداة مبنية باستخدام Node.js، فإن المتطلب الأساسي هو وجود إصدار حديث ومستقر من Node.js على نظامك. نوصي عادةً بتثبيت الإصدار LTS (دعم طويل الأمد) من Node.js لضمان أقصى درجات التوافق والاستقرار.
التثبيت على Windows
إذا كنت تستخدم Windows، فلديك خياران رائعان: يمكنك استخدام Windows PowerShell أو PowerShell 7 أو موجّه أوامر Windows. بعد تثبيت Node.js، افتح الطرفية التي تفضّلها بصلاحيات المسؤول ونفّذ الأمر التالي:
npm install -g @pnp/cli-microsoft365
يضمن المعامل -g تثبيت الواجهة عالميًا على نظامك، مما يجعل الأمر m365 متاحًا من أي مجلد داخل الطرفية. ستقوم عملية التثبيت بتنزيل الحزم اللازمة، وترجمة أي ملفات ثنائية مطلوبة، وتسجيل مسارات الأوامر. وعند الانتهاء، يمكنك التحقق من التثبيت بكتابة m365 والضغط على Enter، وهو ما يجب أن يعرض قائمة المساعدة الأساسية ومعلومات الإصدار.
التثبيت على macOS
يتطابق تجربة مستخدمي Mac تمامًا، مع الاستفادة من قوة Terminal أو محاكيات الطرفية البديلة مثل iTerm2. افتح تطبيق الطرفية وتأكد من تثبيت Node.js، إذ يستخدم كثير من مطوّري Mac الأداة Homebrew لإدارة بيئات Node الخاصة بهم. نفّذ أمر التثبيت العام:
npm install -g @pnp/cli-microsoft365
وفقًا لأذونات النظام وطريقة تثبيت Node.js في الأصل، قد تواجه خطأ في الأذونات. في هذه الحالة، يمكنك إما إعادة ضبط مسار تثبيت Node لتجنب مشكلات الأذونات، أو، كحل أخير، إضافة sudo قبل الأمر (على الرغم من أن إدارة أذونات Node بالطريقة الصحيحة هي أفضل ممارسة دائمًا). بعد التنفيذ الناجح، تحقّق من التثبيت بكتابة m365 --version للتأكد من أنك تستخدم أحدث إصدار.
التثبيت على Linux
لمحبي Linux الذين يعملون على Ubuntu أو Fedora أو Debian أو توزيعات أخرى، فإن العملية سلسة بالقدر نفسه. بافتراض أن Node.js وnpm قد ثُبّتا عبر مدير الحزم لديك أو عبر Node Version Manager (NVM)، نفّذ الأمر التالي:
sudo npm install -g @pnp/cli-microsoft365
كثيرًا ما تستخدم بيئات Linux واجهة سطر الأوامر الخاصة بـ Microsoft 365 داخل خطوط أنابيب CI/CD الآلية وحاويات Docker ووكلاء Azure DevOps. فخفّة هذه الأداة وانخفاض استهلاكها للموارد يجعلانها رفيقًا مثاليًا لخوادم الأتمتة بلا واجهة رسومية، حيث يكون تشغيل مجموعة إدارة رسومية كاملة غير ممكن ولا مرغوب فيه.
ضبط البيئة لتحقيق النجاح
الآن بعد أن نجحت في تثبيت الواجهة على جهازك، حان وقت ضبط بيئة العمل قليلًا لضمان أن تكون تجربتك الإدارية سلسة وآمنة قدر الإمكان. صُممت واجهة سطر الأوامر الخاصة بـ Microsoft 365 لتعمل مباشرة بعد التثبيت، لكن تخصيص بعض التفضيلات لبضع دقائق يمكن أن يوفّر عليك ساعات من استكشاف الأخطاء وإصلاحها لاحقًا.
أولًا، لنتحدث عن تنسيقات الإخراج. فالواجهة تُخرج البيانات افتراضيًا بتنسيق JSON منظم، وهذا رائع إذا كنت تمرّر البيانات إلى نصوص برمجية أخرى، أو تحللها باستخدام أدوات مثل jq، أو تبني خطوط أتمتة. غير أنه إذا كنت تعمل أمام الطرفية وتريد قراءة قائمة بالمستخدمين أو المواقع بسرعة، فقد يبدو JSON مطوّلًا بعض الشيء. يمكنك تعيين تنسيق الإخراج الافتراضي باستخدام أوامر الإعدادات. فعلى سبيل المثال، يمكنك ضبط الإخراج المفضل إلى تنسيق الجدول لتسهيل القراءة البشرية أثناء الجلسات التفاعلية:
m365 config set --key output --value text
وإضافةً إلى ذلك، ينبغي أن تستكشف ميزات الإكمال التلقائي. تدعم الواجهة الإكمال التلقائي لـ PowerShell وBash وZsh، وإعداد الإكمال عبر مفتاح Tab يغيّر قواعد اللعبة تمامًا. تخيّل أنك تكتب m365 sp وتضغط مفتاح Tab للتنقل تلقائيًا بين أوامر SharePoint المتاحة. ولتفعيل الإكمال التلقائي لصدفتك الخاصة، يمكنك تنفيذ أمر الإعداد الوارد في التوثيق الرسمي، والذي يُدرج نصوص الإكمال اللازمة في ملف الملف الشخصي الخاص بك.
الأمان جانب حاسم آخر في ضبط البيئة. فبما أن الواجهة قادرة على ممارسة صلاحيات إدارية واسعة على المستأجر، ينبغي أن تكون حذرًا بشأن مكان تخزين ملفات الإعداد والرموز المميزة. تُخزّن الأداة رموز المصادقة محليًا لتجنيبك تسجيل الدخول في كل مرة تفتح فيها نافذة طرفية جديدة. تأكّد من تشفير قرص جهازك المحلي (باستخدام BitLocker على Windows أو FileVault على macOS)، واحرص على تسجيل الخروج أو مسح ذاكرة الجلسة المؤقتة عند العمل على أجهزة مشتركة أو مؤقتة.
المصادقة مع مستأجر Microsoft 365 الخاص بك
بعد تثبيت الواجهة وضبط البيئة، تأتي العقبة التالية وهي المصادقة. كيف نربط هذه الأداة المعتمدة على سطر الأوامر بمستأجر Microsoft 365 المؤسسي بأمان؟ تدعم واجهة سطر الأوامر الخاصة بـ Microsoft 365 عدة طرق للمصادقة، تناسب جلسات الإدارة التفاعلية والنصوص البرمجية الآلية غير المراقبة على حد سواء.
تسجيل الدخول التفاعلي
في عملك اليومي التفاعلي، فإن أسهل الطرق وأكثرها شيوعًا للمصادقة هو استخدام أمر تسجيل الدخول القياسي:
m365 login
عند تنفيذ هذا الأمر، ستطلب منكم واجهة سطر الأوامر فتح متصفح ويب والانتقال إلى عنوان URL محدد، مع عرض رمز جهاز فريد. وهذا هو تدفق رمز الجهاز القياسي في OAuth. بعد إدخال الرمز في المتصفح، سيُطلب منكم تسجيل الدخول باستخدام بيانات اعتماد Microsoft 365 الخاصة بالمؤسسة، واجتياز أي تحديات للمصادقة متعددة العوامل (MFA) تفرضها نهج الوصول المشروط لدى المؤسسة، ومنح واجهة سطر الأوامر الإذن للعمل نيابةً عنكم استنادًا إلى النطاقات المطلوبة.
بعد نجاح المصادقة، ستؤكد الطرفية تسجيل دخولكم، وتعرض اسم المستخدم الرئيسي (UPN) ومعرّف المستأجر الذي أنتم متصلون به حاليًا. وللتحقق من حالة الاتصال في أي وقت، يمكنكم ببساطة تنفيذ:
m365 status
يبرز هذا الأمر أهميته عندما تتنقلون بين عدة مستأجرين أو بيئات برمجية، إذ يطمئنكم إلى أنكم تستهدفون البيئة الصحيحة قبل تنفيذ أوامر مدمرة أو ذات تأثير كبير.
المصادقة باستخدام مبدأ الخدمة والشهادات
ماذا لو كنتم تبنون خط أنابيب آلي، مثل GitHub Action أو خط أنابيب Azure DevOps أو دالة Azure Function مجدولة، يحتاج إلى العمل دون تدخل بشري؟ لن يعمل تسجيل الدخول التفاعلي برمز الجهاز في هذه الحالات. لهذه السيناريوهات، تدعم واجهة سطر الأوامر المصادقة عبر تسجيلات التطبيقات في Azure AD (مبادئ الخدمة Service Principals).
يمكنكم المصادقة باستخدام معرّف العميل والسر السري للعميل، أو باستخدام شهادة تطبيق في Azure AD، وهو خيار أكثر أمانًا:
m365 login --authType certificate --appId YOUR_APP_ID --thumbprint YOUR_CERT_THUMBPRINT --tenant YOUR_TENANT.onmicrosoft.com
باستخدام مبادئ الخدمة، يمكنكم الالتزام بمبدأ الحد الأدنى من الصلاحيات، بحيث تمنحون تسجيل التطبيق الخاص بواجهة سطر الأوامر أذونات الواجهة البرمجية المحددة التي يحتاجها لإتمام مهامه الآلية، مثل قراءة ملفات تعريف المستخدمين أو توفير مجموعات مواقع SharePoint محددة، دون منحه صلاحيات مسؤول عام شاملة.
تشغيل أول أوامر الإدارة
والآن يأتي الجزء الممتع! لقد تم تثبيت واجهة سطر الأوامر وإعدادها والمصادقة عليها. دعونا ننفذ بعض الأوامر الأساسية لنرى واجهة سطر الأوامر لـ Microsoft 365 أثناء العمل، ونتحقق بأنفسنا من مدى سرعتها مقارنةً بالنقر عبر واجهة الويب الرسومية.
لنبدأ بشيء بسيط: استرداد قائمة المستخدمين من المستأجر في Azure Active Directory / Entra ID. بدلًا من الانتقال إلى بوابة Azure، وفتح Microsoft Entra ID، والنقر على Users، وانتظار تحميل القائمة، يمكنكم ببساطة كتابة:
m365 aad user list
بوم! تمتلئ الطرفية فورًا ببيانات المستخدمين. وإذا أردتم تصفية هذه القائمة للعثور على مستخدم محدد، يمكنكم إضافة معلمات استعلام أو توجيه المخرجات عبر الأنابيب. على سبيل المثال، إذا أردتم العثور على المستخدمين في قسم معين، تتيح واجهة سطر الأوامر تصفية النتائج بسهولة وبشكل نظيف.
ننتقل الآن إلى SharePoint Online. لنفترض أنكم بحاجة إلى إنشاء موقع اتصالات حديث جديد لفريق مشروع جديد. إنجاز ذلك عبر مركز إدارة SharePoint يتطلب نقرات متعددة، وتعبئة نماذج، وتعيين المالكين، والانتظار. أما مع واجهة سطر الأوامر، فيمكنكم كتابة ذلك في نص برمجي بأمر واحد قابل للتكرار:
m365 spo site add --type CommunicationSite --title "Project Falcon" --url https://yourtenant.sharepoint.com/sites/projectfalcon --owner admin@yourtenant.onmicrosoft.com
فكّروا في الأثر المترتب على ذلك. يمكنكم دمج هذا الأمر الواحد في نص برمجي للصدفة مع أوامر أخرى تُنشئ فرق Microsoft Teams، وتُعيّن التراخيص، وتضيف المستخدمين إلى مجموعات الأمان. وفجأةً، يتحول تعيين قسم جديد أو إنشاء مساحة لمشروع من مهمة يدوية مرهقة تستغرق ساعتين إلى تنفيذ نص برمجي آلي لا يستغرق سوى خمس ثوانٍ.
يمكنكم أيضًا استكشاف إدارة Microsoft Teams. هل تريدون عرض جميع الفرق في مؤسستكم؟ جرّبوا تنفيذ:
m365 teams team list
إن نطاق الوحدات التي تدعمها واجهة سطر الأوامر مذهل حقًا. سواء كنتم تديرون Power Apps أو تدفقات Power Automate أو إعدادات Exchange Online أو مهام Planner، فإن بنية الأوامر تبقى بديهية ومتسقة: m365 [service] [resource] [action].
الخلاصة والخطوات التالية
كما استعرضنا في هذا الدليل، فإن واجهة سطر الأوامر متعددة المنصات لـ Microsoft 365 أكثر بكثير من مجرد أداة إدارية إضافية، إنها تحوّل جذري في طريقة تفاعلك مع بيئتك السحابية. فمن خلال الابتعاد عن الإدارة بالنقر والاعتماد على أتمتة سطر الأوامر، تحقق مستويات غير مسبوقة من الكفاءة والاتساق وقابلية التوسع. سواء قمت بتثبيتها على Windows لاستكشاف الأخطاء وإصلاحها بسرعة، أو على macOS لتطوير اليومي، أو داخل حاوية Linux لخطوط CI/CD المؤتمتة، توفر الأداة واجهة موحدة وقوية لإتقان إدارة مستأجر Microsoft 365 الخاص بك.
تذكّر أن هذه المدونة ليست سوى غيض من فيض. للحصول على فهم أعمق لكيفية الاستفادة من هذه الأداة في سيناريوهات المؤسسات الواقعية، وإتقان تقنيات البرمجة النصية المتقدمة، والاستماع إلى نقاشات حول استراتيجيات الأتمتة التي نادراً ما تتحدث عنها الإدارة، تأكد من الاستماع إلى حلقتنا البودكاست المرافقة، Automate Microsoft 365 with the Cross-Platform CLI. اضغط على الاشتراك، واترك تقييماً، وابدأ بأتمتة حياتك الإدارية اليوم!