בדף הזה מוסבר איך מוחקים חשבונות שירות ומבטלים את המחיקה שלהם באמצעות ה-API של ניהול זהויות והרשאות גישה (IAM), מסוף Google Cloud וכלי שורת הפקודה gcloud.
לפני שמתחילים
Enable the IAM API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.מגדירים אימות.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
C#
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של .NET שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
C++
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של C++ שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Go
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Go שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Java
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Java שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Python
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
REST
כדי להשתמש בדוגמאות של API בארכיטקטורת REST שבדף הזה בסביבת פיתוח מקומית, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .
הסבר על חשבונות שירות של IAM
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות למחיקה ולביטול המחיקה של חשבונות שירות, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
כדי למחוק חשבונות שירות:
מחיקת חשבונות שירות (
roles/iam.serviceAccountDeleter) -
כדי למחוק ולבטל מחיקה של חשבונות שירות:
אדמין של חשבון שירות (
roles/iam.serviceAccountAdmin)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
תפקידים בסיסיים ב-IAM כוללים גם הרשאות לניהול חשבונות שירות. לא מומלץ להקצות תפקידים בסיסיים בסביבת ייצור, אבל אפשר להקצות אותם בסביבת פיתוח או בדיקה.
מחיקה של חשבון שירות
כשמוחקים חשבון שירות, לאפליקציות לא תהיה יותר גישה למשאבים שלGoogle Cloud דרך חשבון השירות הזה. אם מוחקים את חשבונות השירות שמוגדרים כברירת מחדל של App Engine ושל Compute Engine, לאפליקציות של App Engine ולמכונות וירטואליות (VM) של Compute Engine שמשתמשות בחשבונות השירות האלה לא תהיה יותר גישה למשאבים בפרויקט.
צריך למחוק חשבונות שירות בזהירות. לפני שמוחקים חשבון שירות, חשוב לוודא שהאפליקציות החיוניות כבר לא משתמשות בו. אם לא בטוחים אם משתמשים בחשבון שירות, Google ממליצה להשבית את חשבון השירות במקום למחוק אותו. אפשר להפעיל מחדש חשבונות שירות מושבתים אם הם עדיין נחוצים. מידע נוסף מופיע במאמר השבתה של חשבונות שירות שלא בשימוש לפני המחיקה שלהם.
אם רוצים לשחזר חשבון שירות שנמחק, אפשר לבטל את המחיקה שלו, אם עברו 30 ימים או פחות מאז שמחקתם את חשבון השירות. אחרי 30 יום, מערכת IAM מסירה את חשבון השירות באופן סופי. Google Cloudאי אפשר לשחזר את חשבון השירות אחרי שהוא הוסר באופן סופי, גם אם שולחים בקשת תמיכה.
כדי להקטין עוד יותר את הסיכון למחיקת חשבון שירות נחוץ, אפשר גם להפעיל המלצות לשינוי סיכונים. ההמלצות לשינוי הסיכון יוצרות אזהרות כשמנסים למחוק חשבונות שירות ש Google Cloud זיהה כחשובים.
אם מוחקים חשבון שירות ואז יוצרים חשבון שירות חדש באותו שם, המערכת תתייחס לחשבון השירות החדש כזהות נפרדת. הוא לא יירש את התפקידים שהוקצו לחשבון השירות שנמחק. לעומת זאת, כשמוחקים חשבון שירות ואז מבטלים את המחיקה, הזהות של חשבון השירות לא משתנה וחשבון השירות ישמור על התפקידים שלו.
כשמוחקים חשבון שירות, קישורי התפקידים שלו לא יוסרו באופן מיידי. הם יימחקו מהמערכת באופן סופי ואוטומטי אחרי 60 יום לכל היותר. עד אז, חשבון השירות יופיע בקשרי תפקידים עם תחילית
deleted:וסיומת?uid=NUMERIC_ID. הערךNUMERIC_IDשמופיע בסיומת הוא מזהה מספרי שייחודי לחשבון השירות.חשבונות שירות שנמחקו לא נכללים במכסה של חשבונות השירות.
המסוף
נכנסים לדף Service accounts במסוף Google Cloud .
בוחרים פרויקט.
בוחרים את חשבון השירות שרוצים למחוק ולוחצים על Delete .
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
כדי למחוק את חשבון השירות, מריצים את הפקודה
gcloud iam service-accounts delete.פקודה:
gcloud iam service-accounts delete \ SA_NAME@PROJECT_ID.iam.gserviceaccount.comפלט:
Deleted service account SA_NAME@PROJECT_ID.iam.gserviceaccount.com
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמוmy-project. -
SA_ID: המזהה של חשבון השירות. הוא יכול להיות כתובת האימייל של חשבון השירות בתבניתSA_NAME@PROJECT_ID.iam.gserviceaccount.com, או המזהה המספרי שייחודי לחשבון השירות.
C++
במאמר ספריות הלקוח של IAM מוסבר איך להתקין את ספריית הלקוח ולהשתמש בה ב-IAM. למידע נוסף, קראו את מאמרי העזרה של IAM C++ API.
כדי לבצע אימות ב-IAM, צריך להגדיר את Application Default Credentials. מידע נוסף מופיע במאמר לפני שמתחילים.
C#
במאמר ספריות הלקוח של IAM מוסבר איך להתקין את ספריית הלקוח ולהשתמש בה ב-IAM. למידע נוסף, קראו את מאמרי העזרה של IAM C# API.
כדי לבצע אימות ב-IAM, צריך להגדיר את Application Default Credentials. מידע נוסף מופיע במאמר לפני שמתחילים.
Go
במאמר ספריות הלקוח של IAM מוסבר איך להתקין את ספריית הלקוח ולהשתמש בה ב-IAM. למידע נוסף, קראו את מאמרי העזרה של IAM Go API.
כדי לבצע אימות ב-IAM, צריך להגדיר את Application Default Credentials. מידע נוסף מופיע במאמר לפני שמתחילים.
Java
במאמר ספריות הלקוח של IAM מוסבר איך להתקין את ספריית הלקוח ולהשתמש בה ב-IAM. למידע נוסף, קראו את מאמרי העזרה של IAM Java API.
כדי לבצע אימות ב-IAM, צריך להגדיר את Application Default Credentials. מידע נוסף מופיע במאמר לפני שמתחילים.
Python
במאמר ספריות הלקוח של IAM מוסבר איך להתקין את ספריית הלקוח ולהשתמש בה ב-IAM. למידע נוסף, קראו את מאמרי העזרה של IAM Python API.
כדי לבצע אימות ב-IAM, צריך להגדיר את Application Default Credentials. מידע נוסף מופיע במאמר לפני שמתחילים.
REST
השיטה
serviceAccounts.deleteמוחקת חשבון שירות.לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
שיטת ה-HTTP וכתובת ה-URL:
DELETE https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_ID
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אם הביצוע יהיה תקין, גוף התגובה יהיה ריק.
ביטול מחיקה של חשבון שירות
במקרים מסוימים, אפשר להשתמש בפקודה
undeleteכדי לבטל מחיקה של חשבון שירות שנמחק. בדרך כלל אפשר לבטל מחיקה של חשבון שירות שנמחק אם הוא עומד בקריטריונים הבאים:חשבון השירות נמחק לפני פחות מ-30 יום.
אחרי 30 יום, מערכת IAM מסירה את חשבון השירות באופן סופי. Google Cloud אי אפשר לשחזר את חשבון השירות אחרי שהוא הוסר באופן סופי, גם אם שולחים בקשת תמיכה.
לא קיים חשבון שירות באותו השם של חשבון השירות שנמחק.
לדוגמה, נניח שמחקת בטעות את חשבון השירות
my-service-account@project-id.iam.gserviceaccount.com. עדיין יש צורך בחשבון שירות בשם הזה ולכן צריך ליצור חשבון שירות חדש באותו השם,my-service-account@project-id.iam.gserviceaccount.com.חשבון השירות החדש לא יורש את ההרשאות של חשבון השירות שנמחק. למעשה, הוא חשבון נפרד לגמרי מחשבון השירות שנמחק. עם זאת, אי אפשר לבטל את המחיקה של חשבון השירות המקורי כי לחשבון השירות החדש יש שם דומה.
כדי לטפל בבעיה, מוחקים את חשבון השירות החדש ולאחר מכן מנסים לבטל את המחיקה של חשבון השירות המקורי.
אם לא מצליחים לבטל את המחיקה של חשבון השירות, אפשר ליצור חשבון שירות חדש באותו שם, לבטל את כל התפקידים מחשבון השירות שנמחק ולהקצות תפקידים דומים לחשבון השירות החדש. לקבלת פרטים נוספים, אפשר לעיין במאמר כללי מדיניות עם חשבונות משתמשים שנמחקו.
איתור מזהה מספרי של חשבון שירות שנמחק
כשמבטלים מחיקה של חשבון שירות, צריך לציין את המזהה המספרי שלו. המזהה המספרי הוא מספר בן 21 ספרות, למשל
123456789012345678901, שמזהה באופן ייחודי את חשבון השירות. לדוגמה, אם מוחקים חשבון שירות ואז יוצרים חשבון שירות חדש באותו שם, לחשבון השירות המקורי ולחשבון השירות החדש יהיו מזהים מספריים שונים.אם יודעים שקישור במדיניות הרשאה כולל את חשבון השירות שנמחק, אפשר לקבל את מדיניות ההרשאה ואז למצוא את המזהה המספרי במדיניות הזו. המזהה המספרי מצורף לשם של חשבון השירות שנמחק. לדוגמה, במדיניות ההרשאה הזו, המזהה המספרי של חשבון השירות שנמחק הוא
123456789012345678901:{ "version": 1, "etag": "BwUjMhCsNvY=", "bindings": [ { "members": [ "deleted:serviceAccount:my-service-account@project-id.iam.gserviceaccount.com?uid=123456789012345678901" ], "role": "roles/iam.serviceAccountUser" }, ] }
מזהים מספריים מצורפים רק לשמות של חשבונות משתמשים שנמחקו.
לחלופין, תוכלו לחפש ביומני הביקורת שלכם את הפעולה
DeleteServiceAccountשמחקה את חשבון השירות:נכנסים לדף Logs Explorer במסוף Google Cloud .
בעורך השאילתות, מזינים את השאילתה הבאה ומחליפים את
SERVICE_ACCOUNT_EMAILבכתובת האימייל של חשבון השירות (לדוגמה,my-service-account@project-id.iam.gserviceaccount.com):resource.type="service_account" resource.labels.email_id="SERVICE_ACCOUNT_EMAIL" "DeleteServiceAccount"
אם חשבון השירות נמחק לפני יותר משעה, לוחצים על Last 1 hour, בוחרים פרק זמן ארוך יותר מהרשימה הנפתחת, ואז לוחצים על Apply.
לוחצים על Run query. ב-Logs Explorer מוצגות פעולות
DeleteServiceAccountשהשפיעו על חשבונות השירות בשם שצוין.מאתרים את המזהה המספרי של חשבון השירות שנמחק באחת מהדרכים הבאות:
- אם תוצאות החיפוש כוללות רק פעולת
DeleteServiceAccountאחת, מחפשים את המזהה המספרי בשדה Unique ID שבחלונית Log fields.

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

המזהה המספרי כולל את כל מה שמופיע אחרי
serviceAccountsבשדהresourceName.
- אם תוצאות החיפוש כוללות רק פעולת
ביטול מחיקה של חשבון השירות לפי המזהה המספרי
אחרי שמוצאים את המזהה המספרי של חשבון השירות שנמחק, אפשר לנסות לבטל את המחיקה של חשבון השירות.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
כדי לבטל את המחיקה של חשבון שירות, מריצים את הפקודה
gcloud beta iam service-accounts undelete.פקודה:
gcloud beta iam service-accounts undelete ACCOUNT_ID
פלט:
restoredAccount: email: SA_NAME@PROJECT_ID.iam.gserviceaccount.com etag: BwWWE7zpApg= name: projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com oauth2ClientId: '123456789012345678901' projectId: PROJECT_ID uniqueId: 'ACCOUNT_ID'
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . מזהי פרויקטים הם מחרוזות אלפאנומריות, כמוmy-project. SA_NUMERIC_ID: המזהה המספרי הייחודי של חשבון השירות.
REST
השיטה
serviceAccounts.undeleteמשחזרת חשבון שירות שנמחק.לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
שיטת ה-HTTP וכתובת ה-URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NUMERIC_ID:undelete
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אם אפשר לבטל את מחיקת החשבון, יישלח אליך קוד תגובה מסוג
200 OKעם פרטים לגבי חשבון השירות ששוחזר, שייראה כך:{ "restoredAccount": { "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com", "projectId": "my-project", "uniqueId": "123456789012345678901", "email": "my-service-account@my-project.iam.gserviceaccount.com", "displayName": "My service account", "etag": "BwUp3rVlzes=", "description": "A service account for running jobs in my project", "oauth2ClientId": "987654321098765432109" } }המאמרים הבאים
- יצירת חשבונות שירות ועריכה שלהם
- מבט על תהליך הקצאת תפקידי IAM לכל סוגי חשבונות המשתמשים, כולל חשבונות שירות.
- להבין איך מצרפים חשבונות שירות למשאבים.
נסו בעצמכם
אתם משתמשים חדשים ב- Google Cloud? אנחנו ממליצים לכם ליצור חשבון, להתנסות בעצמכם במוצרים שלנו ולבחון אותם באמצעות תרחישים ממשיים. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
מתחילים לעבוד בלי לשלםאלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2026-03-04 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["התוכן קשה להבנה","hardToUnderstand","thumb-down"],["שגיאות בקוד לדוגמה או במידע","incorrectInformationOrSampleCode","thumb-down"],["חסרים לי פרטים או דוגמאות","missingTheInformationSamplesINeed","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2026-03-04 (שעון UTC)."],[],[]]