בכל פרויקט ב-Apps Script נעשה שימוש ב-Google Cloud כדי לנהל הרשאות, שירותים מתקדמים ופרטים נוספים. כדי לקבוע ולנהל את ההגדרות האלה, לכל פרויקט ב-Apps Script משויך פרויקט ב-Google Cloud. בפרויקט הסקריפט אפשר להשתמש בפרויקט ברירת המחדל ש-Apps Script יוצר באופן אוטומטי, או פרויקט סטנדרטי שאתם יוצרים בעצמכם. באופן כללי, פרויקטים שמוגדרים כברירת מחדל מתאימים לסקריפטים יומיומיים או לסקריפטים פשוטים, אבל כדאי להשתמש בפרויקט רגיל לכל אפליקציה מורכבת או באיכות מסחרית או שאתם מתכוונים לפרסם.
אתם יכולים לעבור מפרויקט ברירת מחדל לפרויקט רגיל בכל שלב, אבל לא תוכלו לחזור ולהשתמש בפרויקט ברירת מחדל. מומלץ לבחור את הפרויקט ב-Cloud שבו הסקריפט משתמש בשלב מוקדם של הפיתוח. מעבר מאוחר יותר עלול לגרום לסיבוכים, כמו דרישה מהמשתמשים לאשר מחדש.
פרויקטים ב-Cloud שמוגדרים כברירת מחדל
כשיוצרים פרויקט Apps Script, ב-Apps Script נוצר פרויקט ברירת מחדל ב-Cloud שפועל ברקע.
- ברוב הסקריפטים, לא צריך לראות או לשנות את פרויקט ברירת המחדל הזה. Apps Script מטפל באינטראקציות הדרושות עם Google Cloud. לדוגמה, אם מפעילים שירות מתקדם בעורך Apps Script, Apps Script מפעיל את השירות המתקדם בפרויקט ברירת המחדל ב-Cloud כששומרים את פרויקט הסקריפט.
- בחלק מהסקריפטים צריך להשתמש במסוף Google Cloud. במקרים כאלה, הסקריפט צריך להשתמש בפרויקט סטנדרטי ב-Cloud. לדוגמה, כדי להציג את יומני Google Cloud במסוף Google Cloud, הסקריפט צריך להשתמש בפרויקט סטנדרטי.
כברירת מחדל, לפרויקטים ב-Cloud יש מדיניות של ניהול זהויות והרשאות גישה (IAM) עם רשומה אחת, חשבון שירות של Google שמשמש כבעלים של פרויקט ברירת המחדל. חשבון השירות של Google הוא appsdev-apps-dev-script-auth@system.gserviceaccount.com
.
הצגה או עדכון של פרויקטים ב-Cloud שמוגדרים כברירת מחדל
רוב המשתמשים לא יכולים לאתר, להציג או לערוך ישירות פרויקטים שמוגדרים כברירת מחדל במסוף Google Cloud. אם אתם אדמינים, כדאי לעיין במאמר הצגת פרויקטים שמוגדרים כברירת מחדל ב-Google Cloud.
אם יצרתם את פרויקט הסקריפט לפני 8 באפריל 2019, אתם יכולים להשתמש בפרויקט ברירת מחדל שאליו ניתן לגשת דרך מסוף Google Cloud. כדי לגשת לפרויקט ברירת המחדל, עוברים להגדרות של פרויקט הסקריפט ולוחצים על מספר הפרויקט.
מחיקת פרויקטים ב-Cloud שמוגדרים כברירת מחדל
אדמינים יכולים למחוק פרויקטים ב-Cloud שמוגדרים כברירת מחדל, כמו פרויקטים רגילים ב-Cloud. איך מוחקים פרויקטים ב-Cloud של Apps Script
אין לך הרשאת אדמין? אין לך אפשרות למחוק את הפרויקטים שמוגדרים כברירת מחדל. עם זאת, Apps Script מוחק פרויקטים שמוגדרים כברירת מחדל בתרחישים הבאים:
- אם מוחקים את פרויקט הסקריפט או משנים אותו לשימוש בפרויקט רגיל, Apps סקריפט מוחק את פרויקט ברירת המחדל שמצורף לסקריפט יחד עם כל ההגדרות והמידע שהוא מכיל.
- סקריפט שלא פועל במשך 180 יום או יותר יגרום למחיקה של פרויקט ברירת המחדל המשויך ל-Apps Script. אם הסקריפט פועל אחרי ש-Apps Script מוחק את פרויקט ברירת המחדל שלו, Apps Script יוצר אותו עבור הסקריפט.
פרויקטים רגילים ב-Cloud
פרויקטים ברירת מחדל ב-Cloud הם האפשרות הטובה ביותר לרוב הפרויקטים עם סקריפטים, אלא אם אתם צריכים להגדיר אותם באופן ידני. במצבים כאלה צריך לשנות את הפרויקט בסקריפט לשימוש בפרויקט רגיל.
בקטעים הבאים מוסבר מתי ב-Apps Script נדרש פרויקט סטנדרטי, המאפיינים של הפרויקטים האלה ומשימות נפוצות שמתבצעות בהם. אפשר לבצע את המשימות הבאות רק בפרויקטים רגילים.
מתי ב-Apps Script נדרשים פרויקטים רגילים בענן
צריך להשתמש בפרויקט רגיל במצבים הבאים:
- כדי לפרסם את פרויקט הסקריפט בתור תוסף ב-Google Workspace Marketplace.
- כדי לאמת את לקוח ה-OAuth של פרויקט הסקריפט.
- כשיש אפליקציה שצריכה להפעיל פונקציות בפרויקט הסקריפט באמצעות שיטת
scripts.run
של ממשק ה-API של Apps Script. - כדי להציג את יומני Google Cloud של פרויקט הסקריפט במסוף Google Cloud. במסוף Google Cloud יש יותר כלים לסינון ולהצגה של יומנים, והוא יכול להיות שימושי יותר מאשר התצוגה הפשוטה של מרכז הבקרה של Apps Script.
- כדי להציג את דוחות השגיאות של פרויקט הסקריפט באמצעות דיווח על שגיאות.
- כדי ליצור תיבת דו-שיח עם פתיחת קובץ.
- במקרים אחרים, אם צריך שליטה ידנית על הגדרות Google Cloud של הפרויקט.
מאפיינים של פרויקטים רגילים ב-Cloud
לפרויקטים רגילים יש את המאפיינים הבאים:
- אתם יכולים לגשת לכל ההגדרות של הפרויקט ב-Google Cloud ישירות ממסוף Google Cloud. כך אפשר להפעיל ממשקי API, לשנות את פרטי הכניסה להרשאות ולהגדיר פרטים אחרים.
- כשמוחקים פרויקט סקריפט או מעבירים אותו לפרויקט רגיל אחר, הפרויקט הרגיל המקורי נשאר ואפשר להשתמש בו שוב.
- כשמפעילים שירות מתקדם בפרויקט סקריפט, צריך להפעיל באופן ידני את ה-API המתאים בפרויקט הרגיל.
- כמה פרויקטים של סקריפטים ואפליקציות אחרות יכולים לחלוק את אותו פרויקט סטנדרטי. אם אתם מתכוונים לפרסם פרויקט סקריפט ב-Google Workspace Marketplace בתור תוסף, צריך להיות לו פרויקט רגיל משלו. אפליקציות שפורסמו לא יכולות לשתף פרויקטים ב-Cloud עם אפליקציות אחרות.
- אם רוצים להפעיל פונקציות בפרויקט סקריפט מאפליקציה אחרת באמצעות שיטת
scripts.run
של Apps Script API, פרויקט הסקריפט ואפליקציית הקריאה צריכים לחלוק את אותו פרויקט סטנדרטי. - כש-Apps Script מבקש ממשתמש להעניק הרשאה לסקריפט שנעשה בו שימוש בפרויקט רגיל, שם הפרויקט ב-Cloud משמש לזיהוי הסקריפט (ולא שם פרויקט הסקריפט). לכן חשוב להגדיר שם מתאים לפרויקט ב-Cloud.
גישה לפרויקט רגיל ב-Cloud
כדי לגשת לפרויקט הרגיל שמשויך לפרויקט הסקריפט:
- פותחים את פרויקט Apps Script.
- בצד ימין, לוחצים על Project Settings (הגדרות הפרויקט) .
- בקטע פרויקט Google Cloud Platform (GCP), לוחצים על מספר הפרויקט.
אפשר גם למצוא פרויקט רגיל ישירות בדף Manage resources: במסוף Google Cloud.
הפעלת API בפרויקט רגיל ב-Cloud
לעיתים קרובות, אפליקציית Apps Script צריכה גישה לממשק API אחר של Google. כדי לעשות את זה, צריך להפעיל את ה-API בפרויקט הרלוונטי ב-Cloud. כך מפעילים API:
- פותחים את הפרויקט ב-Cloud.
- לוחצים על סמל התפריט > APIs & Services.
- לוחצים על Enable APIs and services.
- בתיבת החיפוש, מזינים את ממשק ה-API שרוצים להפעיל ומקישים על Enter.
- לוחצים על ממשק ה-API בתוצאות החיפוש ואז על Enable כדי להפעיל את ה-API בפרויקט הזה ב-Cloud.
יכול להיות שתתבקשו לאשר את התנאים וההגבלות של ממשקי Google APIs או Google Cloud. חשוב לקרוא בעיון את התנאים וההגבלות לפני אישורם.
בהתאם לאפליקציה, ייתכן שתצטרכו גם להגדיר את ה-API על ידי בחירתו במרכז השליטה APIs & Services.
זיהוי והמספר של פרויקט סטנדרטי ב-Cloud
לכל הפרויקטים ב-Cloud יש את השם, מזהה הפרויקט ומספר הפרויקט. מדי פעם תצטרכו את המזהים האלה כדי להגדיר שירותים או כדי לבצע משימות אחרות.
כדי לזהות את המזהה והמספר של הפרויקט הסטנדרטי, יש לבצע את הפעולות הבאות:
- פותחים את הפרויקט ב-Cloud.
- בפינה השמאלית העליונה, לוחצים על סמל האפשרויות הנוספות > Project settings (הגדרות הפרויקט).
- בחלונית Settings שנפתחת, מציגים את השדות Project name, Project ID ו-Project number. הערך ב-Project number מורכב מספרות בלבד, ו-Project ID הוא אלפאנומרי. אפשר לערוך את Project name שמוצג למשתמשים כשנשלחת בקשה להרשאה.
צפייה ביומנים ובדוחות השגיאות של Google Cloud במסוף Google Cloud
אם אתם משתמשים ברישום ב-Google Cloud או בדיווח על שגיאות בפרויקט הסקריפט, תוכלו להציג את היומנים והדוחות במסוף Google Cloud באופן הבא:
- פותחים את הפרויקט ב-Cloud.
- לוחצים על סמל התפריט .
- גוללים למטה לקטע Operations ולוחצים על Logging > Logs Explorer.
- כדי להציג דוחות שגיאות, גוללים למטה לקטע Operations ולוחצים על Error Reporting (דיווח על שגיאות). אם אתם מתבקשים להגדיר דיווח על שגיאות, פירוש הדבר הוא שבפרויקט הסקריפט עדיין לא תועדו חריגים.
השלמת מסך ההסכמה של OAuth
כשמשתמשים בשירותים שמחייבים OAuth, Google מבקשת מהמשתמשים לאשר את השירותים האלה. ההגדרות של מסך ההסכמה של OAuth מאפשרות להגדיר חלק מהמידע ש-Google מציגה למשתמשים, כמו שם האפליקציה וכתובת ה-URL של התנאים וההגבלות.
בפרויקטים שמוגדרים כברירת מחדל ב-Cloud נוצר מסך הסכמה באופן אוטומטי מפרטי הפרויקט ב-Apps Script. אי אפשר לשנות את ההגדרות האלה. בפרויקטים רגילים ב-Cloud אפשר להתאים אישית את המידע הזה. תוכלו להגדיר את מסך ההסכמה של הסקריפט על ידי ביצוע הפעולות הבאות:
- פותחים את הפרויקט ב-Cloud.
- לוחצים על סמל התפריט > APIs & Services > Credentials.
- לוחצים על הגדרת מסך ההסכמה.
- ממלאים כל קטע בתהליך העבודה של מסך ההסכמה.
- כדי לתעד את השינויים בכל שלב בתהליך העבודה, לוחצים על Save and continue (שמירה והמשך).
יצירת פרטי כניסה של OAuth
בדרך כלל, הסקריפט של Apps מגדיר OAuth לשירותים שבהם הסקריפט משתמש. באפליקציות מסוימות צריך ליצור פרטי כניסה נוספים ל-OAuth (מזהי לקוח וסודות לקוחות). אפשר לעשות זאת רק בפרויקטים רגילים.
כדי ליצור מזהה לקוח וסוד לקוח לפרויקט הסקריפט:
- פותחים את הפרויקט ב-Cloud.
- לוחצים על סמל התפריט > APIs & Services > Credentials.
- לוחצים על Create credentials > מזהה לקוח OAuth.
- בקטע Application type (סוג הבקשה), בוחרים את סוג האפליקציה וממלאים את הטופס שמתקבל אם יש צורך. כשמסיימים, לוחצים על יצירה.
- בתיבת הדו-שיח שמופיעה, לוחצים על הורדת JSON. אפשר להשתמש בקובץ הזה כדי להגדיר את OAuth.
הוספת בעלים לפרויקט רגיל ב-Cloud
אפשר להוסיף עוד בעלים או תפקידים אחרים לפרויקט רגיל. אם אתם משתפים פעולה בפרויקט, זה עוזר לוודא שלמישהו בצוות תמיד תהיה גישה להגדרות של פרויקט הסקריפט ב-Google Cloud.
כדי להוסיף עוד בעלים או תפקידים אחרים לפרויקט רגיל: כדי לבצע את השינויים הבאים צריך הרשאות עריכה בפרויקט:
- קובעים מיהם שותפי העריכה. מומלץ ליצור קבוצת Google קיימת או להשתמש בה. ברשימת שותפי העריכה אפשר גם לציין דומיינים כך שיכללו את כל המשתמשים בדומיין.
- פותחים את פרויקט Cloud של הסקריפט.
- לוחצים על סמל התפריט > IAM ואדמין > IAM.
- לוחצים על הוספה למעלה.
- פועלים לפי ההוראות במסך כדי להוסיף חבר חדש אחד או יותר ואת התפקידים שלהם לפרויקט ב-Cloud. אפשר להוסיף כתובות אימייל בודדות, קבוצות Google או דומיינים כחברים חדשים.
- לוחצים על שמירה.
קיבוץ של מספר סקריפטים עם פרויקט אחד ב-Cloud
אפשר להגדיר כמה פרויקטים של Apps Script באותו פרויקט סטנדרטי ב-Cloud. כדי לעשות את זה, יוצרים פרויקט סטנדרטי ואז מחליפים כל פרויקט סקריפט לשימוש בו. אי אפשר לעשות את זה בפרויקטים שמוגדרים כברירת מחדל.
שימוש בפרויקט סטנדרטי אחר ב-Cloud
אפשר להחליף פרויקט סקריפט כדי להשתמש בו בפרויקט סטנדרטי אחר ב-Cloud. אם הסקריפט מחייב הגדרה ידנית של הפרויקט ב-Cloud, צריך לעבור מפרויקט ברירת מחדל לפרויקט רגיל. במאמר פרויקטים רגילים ב-Cloud מוסבר מתי צריך להשתמש בפרויקט רגיל.
מה קורה במעבר לפרויקט סטנדרטי אחר ב-Cloud?
אם מחליפים את הסקריפט מפרויקט ברירת מחדל או לפרויקט סטנדרטי אחר, יכולות להיות לכך ההשפעות הבאות:
- אם הפעלתם שירותים מתקדמים לסקריפט, עליכם להפעיל את ממשקי ה-API התואמים בפרויקט החדש ב-Cloud. תאבדו נתונים שקשורים לשירותים המתקדמים בפרויקט הקודם ב-Cloud. במאמר הפעלת ממשקי API של Google Workspace מוסבר איך מפעילים ממשקי API בפרויקט ב-Cloud.
- אם הסקריפט משתמש בשירות המובנה Google Drive, עליכם להפעיל את Drive API בפרויקטים רגילים בענן.
בפרויקט Cloud הרגיל, מפעילים את Drive API:
- כל המשתמשים שאישרו בעבר את הסקריפט יצטרכו לבצע מחדש את ההרשאה. ברוב המקרים, כל המשתמשים שכבר אישרו אפליקציות שמשויכות לפרויקט החדש יצטרכו גם הם לבצע מחדש את ההרשאה.
- אם הסקריפט משויך לדף של אפליקציה ב-Google Workspace Marketplace, דף האפליקציה, המשתמשים והביקורות לא יועברו לפרויקט החדש. עליכם ליצור דף אפליקציה בפרויקט החדש והמשתמשים צריכים להתקין מחדש את האפליקציה. למידע על יצירת דף אפליקציה חדש, קראו את המאמר פרסום אפליקציה.
- לא ניתן להחזיר סקריפט לפרויקט ברירת מחדל. ב-Apps Script, המערכת מוחקת פרויקטים שמוגדרים כברירת מחדל אחרי שמגדירים את הסקריפט לשימוש בפרויקט רגיל.
מעבר לפרויקט סטנדרטי אחר ב-Cloud
כדי להעביר פרויקט קיים של סקריפט ב-Cloud לפרויקט אחר ב-Cloud:
- אם אין לכם פרויקט מתאים ב-Cloud, תוכלו ליצור פרויקט לפי ההוראות במאמר יצירת פרויקט. נותנים לפרויקט שם שקל לזכור, כדי שתוכלו לאתר אותו בדף Manage resources במסוף Google Cloud. Apps Script משתמש בשם הזה כשמבקשים מהמשתמשים לאשר את הסקריפט.
- אם רוצים להשתמש בפרויקט קיים, פותחים את הדף Manage resources (ניהול משאבים) במסוף Google Cloud ומאתרים את הפרויקט הקיים. צריך להיות לכם התפקיד Project Browser ו-OAuth Config Editor, או התפקידים עם ההרשאות המקבילות בפרויקט. לא ניתן להשתמש בפרויקט שנוצר באופן אוטומטי על ידי Apps Script.
- קובעים את מספר הפרויקט של הפרויקט ב-Cloud.
- פותחים את הסקריפט שאת הפרויקט שלו ב-Cloud רוצים להחליף.
- בצד ימין, לוחצים על Project Settings (הגדרות הפרויקט) .
- בקטע פרויקט Google Cloud Platform (GCP), לוחצים על שינוי פרויקט.
- מזינים את מספר הפרויקט החדש ולוחצים על Set project (הגדרת הפרויקט).
פרויקטים בענן ותיקיות אחסון שיתופי
תיקיות אחסון שיתופי (לשעבר 'אחסון שיתופי') הן מרחבים משותפים שבהם קבוצות של משתמשי Drive יכולות לעבוד יחד על פרויקטים של Apps Script ועל מסמכי Drive. אחסון שיתופי הוא כלי חיוני לפיתוח סקריפטים, תוספים ואפליקציות אינטרנט יחד עם צוות, אבל הוא מגביל את הפעולות שאפשר לבצע בפרויקטים ישנים יותר ב-Cloud שמוגדרים כברירת מחדל.
ברשימת ההגבלות הבאה מוסבר איך פרויקטים ב-Cloud מקיימים אינטראקציה עם תיקיות אחסון שיתופי:
- אם פרויקט הסקריפט כולל פרויקט רגיל, אין הגבלות נוספות אם פרויקט הסקריפט נמצא באחסון שיתופי.
- אם בפרויקט הסקריפט שלכם נעשה שימוש בפרויקט ברירת מחדל שנוצר ב-8 באפריל 2019 או אחריו, אין הגבלות נוספות אם פרויקט הסקריפט נמצא באחסון שיתופי.
- אם בפרויקט הסקריפט שלכם נעשה שימוש בפרויקט ברירת מחדל שנוצר לפני 8 באפריל 2019, המגבלות הבאות חלות כל עוד פרויקט הסקריפט נמצא באחסון שיתופי:
- אי אפשר לגשת לפרויקט ברירת המחדל דרך ממשק המשתמש של Apps Script או דרך מסוף Google Cloud. המגבלה הזו מונעת מכם לבצע פעולות שמחייבות גישה ישירה לפרויקט.
- לא ניתן להפעיל שירותים מתקדמים. כדי להפעיל שירותים מתקדמים, אתם צריכים לעבור לפרויקט רגיל.
- כשמעבירים פרויקט Apps Script קיים לאחסון שיתופי, Google מגבילה את הגישה לפרויקט ברירת המחדל ב-Cloud. אם הייתה לכם גישה לפני ההעברה, עדיין תוכלו לגשת לפרויקט ברירת המחדל. לדוגמה, אם יצרתם סקריפט בתיקייה 'האחסון שלי' ולאחר מכן העברתם אותו לאחסון שיתופי, עדיין תוכלו לגשת לפרויקט ב-Cloud של הסקריפט. יכול להיות ששותפי העריכה באחסון השיתופי לא יוכלו לעשות זאת.
- סקריפט שומר את שם הפרויקט ב-Cloud שהיה לפני ההעברה לאחסון שיתופי. גם אם משנים את שם הפרויקט באחסון השיתופי, המשתמשים שקיבלו הרשאה לסקריפט עדיין יראו את השם הישן בתיבות דו-שיח של הרשאות.
כדי להימנע מההגבלות שצוינו למעלה לגבי סקריפטים ישנים יותר, צריך לעבור לפרויקט רגיל.
קבלת רשימת פרויקטים ב-Apps Script בענן
אם יש לכם את ההרשאה resourcemanager.projects.list
בתיקיית הפרויקט ב-Apps Script של הארגון, תוכלו להציג בתיקייה את כל הפרויקטים הרגילים וברירת המחדל של Apps Script ב-Cloud.
- פותחים את הדף Manage resources (ניהול משאבים) במסוף Google Cloud.
- מעתיקים את המזהה שמוצג לצד התיקייה Apps Script.
- לוחצים על Filter > Parent ID (מזהה הורה) ומדביקים את המזהה של תיקיית Apps Script.
מחיקת פרויקטים ב-Apps Script בענן
כדי למחוק פרויקט ב-Apps Script Cloud, פועלים לפי השלבים בקטע קבלת רשימה של פרויקטים ב-Apps Script Cloud, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
כדי למחוק פרויקט Apps Script באמצעות gcloud
, משתמשים בפקודות הבאות.
gcloud projects list --filter='parent.id=APPS_SCRIPT_FOLDER_ID'
gcloud projects delete PROJECT_ID
מידע נוסף על מחיקת פרויקטים ב-Cloud זמין במאמר כיבוי (מחיקה) של פרויקטים.