M365Con 2027 – כנס אונליין חינמי · 11–22 Jan 2027 · 120 sessions→ m365con.net

בלוג · Mirko Peters

התחלה עם ה-CLI חוצה הפלטפורמות עבור Microsoft 365

By ·

ברוכים השבים, מאזינים וקוראים יקרים! אם מצאתם את עצמכם קבורים תחת הר של משימות ניהול חוזרות במרכז הניהול של Microsoft 365, לוחצים בין תפריטים אינסופיים רק כדי להקים אתר או לעדכן מאפיין של משתמש, המדריך הזה נכתב במיוחד בשבילכם. ניהול ענן מודרני דורש מהירות, יכולת הרחבה ודיוק. עברו הימים שבהם מנהל מערכות או מפתח אמיתי הסתמך אך ורק על ממשקים גרפיים לניהול סביבות ארגוניות מסועפות. כיום אנחנו מאמצים את

Automatically translated with AI from the original post. Read the English original

▶ BLOGGetting Started with theCross-Platform CLI for…M365.FM
Titelbild: Getting Started with the Cross-Platform CLI for Microsoft 365

ברוכים השבים, מאזינים וקוראים יקרים! אם מצאתם את עצמכם קבורים תחת הר של משימות ניהול חוזרות במרכז הניהול של Microsoft 365, לוחצים בין תפריטים אינסופיים רק כדי להקים אתר או לעדכן מאפיין של משתמש, המדריך הזה נכתב במיוחד בשבילכם. ניהול ענן מודרני דורש מהירות, יכולת הרחבה ודיוק. עברו הימים שבהם מנהל מערכות או מפתח אמיתי הסתמך אך ורק על ממשקים גרפיים לניהול סביבות ארגוניות מסועפות. כיום אנחנו מאמצים את כוחה של שורת הפקודה. בניתוח המעמיק הזה נבחן את ה-CLI חוצה הפלטפורמות עבור Microsoft 365, כלי שהופך במהירות לנשק הסודי של אנשי IT, מפתחים ויועצים שרוצים להחזיר לעצמם את הזמן ולתאם את תהליכי העבודה שלהם.

פוסט זה משמש כמלווה מורחב לפרק הפודקאסט האחרון שלנו, Automate Microsoft 365 with the Cross-Platform CLI. אם מצאתם חן במושגים שאנחנו מפרקים להלן, כדאי לעבור לשם ולהאזין לפרק המלא לקבלת טיפים, טריקים ועוד שיחה מהנה נוספת!

מבוא ל-CLI חוצה הפלטפורמות עבור Microsoft 365

לפני שנצלול להליכי ההתקנה והאימות, בואו נקדיש רגע להבין מהו בדיוק ה-CLI עבור Microsoft 365 ולמה הוא ראוי למקום קבוע בארגז הכלים הניהולי שלכם. בבסיסו, ה-CLI עבור Microsoft 365 הוא ממשק שורת פקודה רב-תכליתי וקוד פתוח, שמאפשר לנהל הגדרות ונתונים שונים בדייר Microsoft 365 שלכם. מה שהופך אותו לייחודי בעוצמתו נמצא כבר בשם: הוא חוצה פלטפורמות. בין אם אתם עובדים ב-Windows במחשב העבודה הראשי, משתמשים ב-macOS לפיתוח היומיומי, או מריצים הפצת Linux קלה על שרת או בקונטיינר, ה-CLI עבור Microsoft 365 מתנהג באופן עקבי בכל אחת מהן.

היסטורית, מנהלי Microsoft נאלצו לעבוד עם כלים רבים ושונים. השתמשתם ב-Azure PowerShell למשימות של Azure Active Directory, ב-SharePoint PnP PowerShell להקמת אתרי SharePoint Online, ואולי בקריאות Graph API שונות לגמרי או בסקריפטים מותאמים אישית עבור שירותים אחרים. ה-CLI עבור Microsoft 365 מגשר על הפערים האלה באמצעות תחביר אחיד. הוא עושה שימוש ב-Microsoft Graph API מאחורי הקלעים, ועוטף בקשות REST מורכבות בפקודות אינטואיטיביות וקלות לקריאה. יתרה מכך, מכיוון שהוא מבוסס Node ופתוח, יש לו קהילה תוססת התורמת כל הזמן תכונות חדשות, תיקוני באגים והרחבות. בין אם אתם מנהלים אתרי SharePoint, Microsoft Teams, משתמשים ב-Azure AD או סביבות Power Platform, הכלי מציע תצוגה מרכזית אחת ישירות בתוך הטרמינל שלכם.

התקנת ה-CLI ב-Windows, ב-macOS וב-Linux

הפעלת ה-CLI במחשב שלכם פשוטה להפליא, ללא קשר למערכת ההפעלה שבחרתם. מכיוון שהכלי נבנה באמצעות Node.js, הדרישה המקדימה העיקרית היא התקנה של גרסה עדכנית ויציבה של Node.js. בדרך כלל אנחנו ממליצים להתקין את גרסת ה-LTS (Long Term Support) של Node.js כדי להבטיח תאימות ויציבות מרבית.

התקנה ב-Windows

אם אתם עובדים ב-Windows, יש לכם כמה אפשרויות מצוינות. אפשר להשתמש ב-Windows PowerShell, ב-PowerShell 7 או בשורת הפקודה של Windows. לאחר שהתקנתם את Node.js, פתחו את הטרמינל המועדף עליכם עם הרשאות מנהל והריצו את הפקודה הבאה:

npm install -g @pnp/cli-microsoft365

הדגל -g מבטיח שה-CLI יותקן באופן גלובלי במערכת, כך שהפקודה m365 תהיה זמינה מכל תיקייה בטרמינל. תהליך ההתקנה יוריד את החבילות הנדרשות, יקמפל בינאריים נדרשים וירשום את נתיבי הפקודות. לאחר השלמת התהליך, תוכלו לוודא שההתקנה הצליחה על ידי הקלדת m365 ולחיצה על Enter, שאמורה להציג את תפריט העזרה המרכזי ואת מספר הגרסה.

התקנה ב-macOS

משתמשי Mac יגלו שהחוויה זהה, בעזרת הטרמינל או מדמי טרמינל חלופיים כמו iTerm2. פתחו את אפליקציית הטרמינל וודאו ש-Node.js מותקן—מפתחי Mac רבים משתמשים ב-Homebrew לניהול סביבות Node שלהם. הריצו את פקודת ההתקנה הגלובלית:

npm install -g @pnp/cli-microsoft365

בהתאם להרשאות המערכת ולאופן שבו הותקן Node.js במקור, ייתכן שתיתקלו בשגיאת הרשאות. אם זה קורה, תוכלו either לשנות את נתיב ההתקנה של 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 משתמשות לעיתים קרובות ב-CLI for Microsoft 365 בתוך צינורות CI/CD אוטומטיים, קונטיינרים של Docker וסוכני Azure DevOps. אופיו הקל וצריכת המשאבים המינימלית הופכים אותו לבן לוויה אידיאלי לשרתי אוטומציה ללא ממשק גרפי, שבהם הרצת חבילת ניהול גרפית מלאה אינה אפשרית ואינה רצויה.

הגדרת הסביבה להצלחה

כעת, לאחר שהתקנתם בהצלחה את ה-CLI על המחשב שלכם, הגיע הזמן לכוונן מעט את הסביבה, כדי להבטיח שחוויית הניהול שלכם תהיה חלקה ומאובטחת ככל האפשר. ה-CLI for Microsoft 365 תוכנן לעבוד מיד לאחר ההתקנה, אך הקדשת כמה דקות להגדרת ההעדפות שלכם יכולה לחסוך שעות של פתרון בעיות בהמשך הדרך.

ראשית, נדבר על פורמטי הפלט. כברירת מחדל, ה-CLI מציג לרוב נתונים בפורמט JSON נקי, וזה נהדר אם אתם מעבירים נתונים לסקריפטים אחרים, מפרסרים אותם בעזרת כלים כמו jq, או בונים צינורות אוטומטיים. עם זאת, אם אתם יושבים מול הטרמינל ורוצים לקרוא במהירות רשימה של משתמשים או אתרים, JSON עלול לפעמים להיות מילולי מדי. ניתן להגדיר את פורמט הפלט המוגדר כברירת מחדל באמצעות פקודות ה-config. לדוגמה, תוכלו להגדיר את הפלט המועדף לפורמט טקסט, לקריאות נוחה יותר בזמן עבודה אינטראקטיבית:

m365 config set --key output --value text

בנוסף, כדאי לבחון את תכונות ההשלמה האוטומטית. ה-CLI תומך בהשלמה אוטומטית ל-PowerShell, Bash ו-Zsh. הגדרת השלמה באמצעות מקש Tab היא פשוט משנה כללי משחק. דמיינו שאתם מקלידים m365 sp ולוחצים על מקש Tab כדי לעבור באופן אוטומטי בין פקודות SharePoint הזמינות. כדי להפעיל השלמה אוטומטית עבור מעטפת הפקודות שלכם, ניתן להריץ את פקודת ההגדרה המופיעה בתיעוד הרשמי, שמזריקה את סקריפטי ההשלמה הנדרשים לפרופיל שלכם.

אבטחה היא היבט קריטי נוסף בהגדרת הסביבה. מכיוון ש-CLI עלול להפעיל עוצמה ניהולית משמעותית על הדייר שלכם, עליכם להיות מודעים למקום שבו מאוחסנים קבצי ההגדרות והטוקנים שלכם. הכלי שומר טוקני אימות באופן מקומי, כדי למנוע מכם להתחבר מחדש בכל פעם שאתם פותחים חלון טרמינל חדש. ודאו שהדיסק במחשב המקומי מוצפן (באמצעות BitLocker ב-Windows או FileVault ב-macOS), ונהגו בזהירות על ידי התנתקות או ניקוי מטמון ההפעלה כאשר אתם עובדים על מחשבים משותפים או זמניים.

אימות מול דייר Microsoft 365 שלכם

לאחר שה-CLI מותקן והסביבה מוגדרת, המכשול הבא הוא אימות. כיצד נחבר בצורה מאובטחת את כלי שורת הפקודה הזה לדייר Microsoft 365 הארגוני שלנו? ה-CLI for Microsoft 365 תומך במספר שיטות אימות, המותאמות הן להפעלות ניהול אינטראקטיביות והן לסקריפטים אוטומטיים ללא השגחה.

התחברות אינטראקטיבית

לעבודה היומיומית האינטראקטיבית, הדרך הקלה והנפוצה ביותר לאימות היא באמצעות פקודת ההתחברות הסטנדרטית:

m365 login

כאשר תריץ פקודה זו, ה-CLI יבקש ממך לפתוח דפדפן ולנווט לכתובת מסוימת, שם תקבל קוד מכשיר ייחודי. זהו תהליך ה-device code הסטנדרטי של OAuth. לאחר שתזין את הקוד בדפדפן, תתבקש להתחבר באמצעות פרטי ההתחברות הארגוניים שלך ל-Microsoft 365, להשלים כל אתגר Multi-Factor Authentication (MFA) שנדרש על ידי מדיניות הגישה המותנית של הארגון, ולאשר ל-CLI הרשאה לפעול בשמך בהתאם להיקפים (scopes) המבוקשים.

לאחר אימות מוצלח, הטרמינל יאשר את ההתחברות שלך ויציג את שם המשתמש הראשי (UPN) ואת מזהה הדייר (tenant ID) שאליו אתה מחובר כעת. כדי לבדוק את מצב החיבור בכל עת, פשוט הרץ:

m365 status

פקודה זו שימושית במיוחד כאשר אתם עוברים בין מספר דיירים או סביבות סקריפט, שכן היא מאפשרת לוודא שאתם מכוונים לסביבה הנכונה לפני הרצת פקודות הרסניות או בעלות השפעה רחבה.

אימות באמצעות Service Principal ותעודה

מה קורה כאשר אתם בונים צינור אוטומציה, כמו GitHub Action, צינור Azure DevOps או Azure Function מתוזמנת, שצריך לרוץ ללא התערבות אנושית? התחברות device code אינטראקטיבית לא תעבוד שם. לתרחישים האלה, ה-CLI תומך באימות באמצעות רישומי אפליקציות ב-Azure AD (Service Principals).

ניתן להתאמת באמצעות client ID ו-client secret, או, בצורה מאובטחת יותר, באמצעות תעודת אפליקציה ב-Azure AD:

m365 login --authType certificate --appId YOUR_APP_ID --thumbprint YOUR_CERT_THUMBPRINT --tenant YOUR_TENANT.onmicrosoft.com

באמצעות Service Principals ניתן לשמור על עקרון ההרשאות המינימליות: לתת לרישום האפליקציה של ה-CLI רק את הרשאות ה-API הספציפיות שהיא צריכה כדי להשלים את המשימות האוטומטיות שלה, כמו קריאת פרופילי משתמשים או יצירת אתרים (site collections) מסוימים, מבלי לתת לה גישה כמנהל גלובלי על כל הדייר.

הרצת הפקודות המנהלתיות הראשונות שלכם

עכשיו מגיע החלק המהנה! ה-CLI מותקן, מוגדר ומאומת. בואו נריץ כמה פקודות בסיסיות כדי לראות את ה-CLI for Microsoft 365 בפעולה ולהוכיח כמה הוא מהיר יותר מלחיצה על הממשק הגרafi בדפדפן.

נתחיל במשהו פשוט: שליפת רשימת משתמשים מהדייר שלכם ב-Azure Active Directory / Entra ID. במקום להיכנס ל-Azure Portal, לפתוח את Microsoft Entra ID, ללחוץ על Users ולחכות שהרשימה תיטען, אפשר פשוט להקליד:

m365 aad user list

בום! בתוך שניות הטרמינל מתמלא בנתוני משתמשים. אם תרצו לסנן את הרשימה ולמצוא משתמש מסוים, ניתן להוסיף פרמטרים של שאילתה או להעביר את הפלט לפקודה אחרת (pipe). לדוגמה, אם תרצו למצוא משתמשים ממחלקה מסוימת, ה-CLI מאפשר לסנן את התוצאות בצורה נקייה.

עכשיו נבחן את SharePoint Online. נניח שאתם צריכים ליצור אתר תקשורת מודרני חדש עבור צוות פרויקט חדש. ביצוע פעולה זו דרך מרכז הניהול של SharePoint דורש כמה לחיצות, מילוי טפסים, הגדרת בעלים והמתנה. עם ה-CLI ניתן לכתוב סקריפט לפעולה זו בפקודה אחת הניתנת לחזרה:

m365 spo site add --type CommunicationSite --title "Project Falcon" --url https://yourtenant.sharepoint.com/sites/projectfalcon --owner admin@yourtenant.onmicrosoft.com

חשבו על המשמעות של זה. ניתן לעטוף את הפקודה הבודדת הזו בסקריפט shell יחד עם פקודות נוספות שמקימות צוותי Microsoft Teams, מקצות רישיונות ומוסיפות משתמשים לקבוצות אבטחה. לפתע, הקמת מחלקה חדשה או פתיחת מרחב פרויקט הופכת מעבודה ידנית מייגעת של שעתיים לביצוע אוטומטי של סקריפט תוך חמש שניות.

אפשר גם לחקור את הניהול של Microsoft Teams. רוצים לראות את כל הצוותות בארגון? נסו להריץ:

m365 teams team list

מגוון המודולים הנתמכים על ידי ה-CLI מרשים מאוד. בין אם אתם מנהלים Power Apps, תהליכי Power Automate, הגדרות Exchange Online או משימות Planner, מבנה הפקודה נשאר אינטואיטיבי ועקבי: m365 [service] [resource] [action].

סיכום ו

כפי שבחנו במדריך הזה, ה-CLI הרב-פלטפורמי של Microsoft 365 הוא הרבה יותר מכלי ניהול נוסף. מדובר בשינוי פרדיגמה באופן שבו אתם מתקשרים עם סביבת הענן שלכם. כשעוברים מהקלקות ידניות לאוטומציה משורת הפקודה, נפתחות רמות חדשות של יעילות, עקביות והרחבה. בין אם תתקינו אותו ב-Windows לפתרון תקלות מהיר, ב-macOS לפיתוח יומיומי או בתוך קונטיינר Linux עבור צינורות CI/CD אוטומטיים, ה-CLI מספק ממשק אחיד ועוצמתי לניהול הדייר שלכם ב-Microsoft 365.

זכרו שפוסט הבלוג הזה הוא רק קצה הקרחון. כדי להעמיק עוד יותר בדרכים להשתמש בכלי בתרחישים ארגוניים אמיתיים, לשלוט בטכניקות סקריפטינג מתקדמות ולשמוע דיונים על אסטרטגיות אוטומציה שהנהלות בדרך כלל לא מדברות עליהן, הקשיבו לפרק הפודקאסט הנלווה שלנו, Automate Microsoft 365 with the Cross-Platform CLI. אל תשכחו לעשות הרשמה, להשאיר ביקורת ולהתחיל לאוטומט את העבודה הניהולית שלכם כבר היום!

Entities in this article

SharePoint Microsoft 365 Microsoft Entra ID Node.js PowerShell Microsoft Graph Microsoft 365 admin center Microsoft Teams Azure DevOps Container

Related articles

RSS