בדף הזה מוסבר איך להפעיל את האימות המובנה של Cloud SQL ואיך להשתמש בו.
מידע נוסף על משתמשים שיוצרים באמצעות Cloud SQL מופיע במאמר בנושא משתמשי SQL Server אחרים.לפני שיוצרים משתמשים
- יוצרים מכונה של Cloud SQL. מידע נוסף מופיע במאמר יצירת מופעים.
- אם אתם מתכננים להשתמש בלקוח הניהול של מסד הנתונים כדי לנהל משתמשים, אתם צריכים להגדיר את משתמש ברירת המחדל במופע על ידי הגדרת הסיסמה. איך מגדירים את הסיסמה לחשבון המשתמש שמוגדר כברירת מחדל
הגדרת הסיסמה לחשבון המשתמש שמוגדר כברירת מחדל
כשיוצרים מופע חדש של Cloud SQL, צריך להגדיר סיסמה לחשבון המשתמש שמוגדר כברירת מחדל לפני שמתחברים למופע.
ב-Cloud SQL ל-SQL Server, משתמש ברירת המחדל הואsqlserver.
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות משתמשים.
- מחפשים את המשתמש
sqlserverובתפריט 'עוד פעולות'
בוחרים באפשרות שינוי הסיסמה. - מזינים סיסמה חזקה שקל לזכור ולוחצים על אישור.
gcloud
משתמשים בפקודה
gcloud sql users set-password כדי להגדיר את הסיסמה למשתמש ברירת המחדל.
מחליפים את INSTANCE_NAME בשם המכונה לפני שמריצים את הפקודה.
gcloud sql users set-password sqlserver \ --instance=INSTANCE_NAME \ --prompt-for-password
REST v1
כדי לעדכן את הסיסמה של חשבון המשתמש שמוגדר כברירת מחדל, משתמשים בבקשת PUT עם השיטה users:update.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
- user-id: מזהה המשתמש
- password: הסיסמה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?name=user-id
תוכן בקשת JSON:
{
"name": "user-id",
"password": "password"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
REST v1beta4
כדי לעדכן את הסיסמה של חשבון המשתמש שמוגדר כברירת מחדל, משתמשים בבקשת PUT עם השיטה users:update.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
- user-id: מזהה המשתמש
- password: הסיסמה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?name=user-id
תוכן בקשת JSON:
{
"name": "user-id",
"password": "password"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
יצירת משתמש
אחרי הגדרת חשבון המשתמש שמוגדר כברירת מחדל, אפשר ליצור משתמשים אחרים.
כשיוצרים משתמש מובנה, אפשר להקצות לו תפקיד אחד או יותר במסד הנתונים.
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות משתמשים.
- לוחצים על הוספת חשבון משתמש.
- בדף Add a user account to instance instance_name, מוסיפים את הפרטים הבאים:
- שם משתמש.
- סיסמה (אופציונלי).
- לוחצים על הוספה.
gcloud
כדי ליצור משתמש, משתמשים בפקודה
gcloud sql users create.
מחליפים את מה שכתוב בשדות הבאים:
- USER_NAME: שם המשתמש.
- INSTANCE_NAME: השם של המכונה.
- PASSWORD: הסיסמה של המשתמש.
gcloud sql users create USER_NAME \ --instance=INSTANCE_NAME \ --password=PASSWORD
מגבלות האורך של שמות המשתמשים ב-Cloud SQL זהות למגבלות האורך של שמות המשתמשים ב-SQL Server מקומי.
Terraform
כדי ליצור משתמש, משתמשים במשאב של Terraform.
החלה של השינויים
כדי להחיל את ההגדרות של Terraform בפרויקט ב- Google Cloud , מבצעים את השלבים בקטעים הבאים.
הכנת Cloud Shell
- מפעילים את Cloud Shell.
-
מגדירים את פרויקט ברירת המחדל שבו רוצים להחיל את ההגדרות של Terraform. Google Cloud
תצטרכו להריץ את הפקודה הזו רק פעם אחת לכל פרויקט, ותוכלו לעשות זאת בכל ספרייה.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
אם תגדירו ערכים ספציפיים בקובץ התצורה של Terraform, הם יבטלו את ערכי ברירת המחדל של משתני הסביבה.
הכנת הספרייה
לכל קובץ תצורה של Terraform צריכה להיות ספרייה משלו (שנקראת גם מודול ברמה הבסיסית).
-
יוצרים ספרייה חדשה ב-Cloud Shell ובה יוצרים קובץ חדש. שם הקובץ חייב לכלול את הסיומת
.tf, למשלmain.tf. במדריך הזה, הקובץ נקראmain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
אם אתם עוקבים אחרי המדריך, תוכלו להעתיק את הקוד לדוגמה בכל קטע או שלב.
מעתיקים את הקוד לדוגמה בקובץ
main.tfהחדש שיצרתם.לחלופין, אפשר גם להעתיק את הקוד מ-GitHub. כדאי לעשות את זה כשקטע הקוד של Terraform הוא חלק מפתרון מקצה לקצה.
- בודקים את הפרמטרים לדוגמה ומשנים אותם בהתאם לסביבה שלכם.
- שומרים את השינויים.
-
מפעילים את Terraform. צריך לעשות זאת רק פעם אחת לכל ספרייה.
terraform init
אופציונלי: תוכלו לכלול את האפשרות
-upgrade, כדי להשתמש בגרסה העדכנית ביותר של הספק של Google:terraform init -upgrade
החלה של השינויים
-
בודקים את ההגדרות ומוודאים שהמשאבים שמערכת Terraform תיצור או תעדכן תואמים לציפיות שלכם:
terraform plan
מתקנים את ההגדרות לפי הצורך.
-
מריצים את הפקודה הבאה ומזינים
yesבהודעה שמופיעה, כדי להחיל את הגדרות Terraform:terraform apply
ממתינים עד שב-Terraform תוצג ההודעה "Apply complete!".
- פותחים את Google Cloud הפרויקט כדי לראות את התוצאות. במסוף Google Cloud , נכנסים למשאבים בממשק המשתמש כדי לוודא שהם נוצרו או עודכנו ב-Terraform.
מחיקת השינויים
כדי למחוק את השינויים:
- כדי להשבית את ההגנה מפני מחיקה, בקובץ התצורה של Terraform מגדירים את הארגומנט
deletion_protectionלערךfalse.deletion_protection = "false"
- מריצים את הפקודה הבאה ומזינים
yesבהודעה שמופיעה, כדי להחיל את הגדרות Terraform המעודכנות:terraform apply
-
כדי להסיר משאבים שהוחלו בעבר על הגדרות Terraform, מריצים את הפקודה הבאה ומזינים
yesבהודעה שמופיעה:terraform destroy
REST v1
כדי ליצור משתמש, משתמשים בבקשת POST עם השיטה users:insert.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה
- USER_ID: מזהה המשתמש
- PASSWORD: הסיסמה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/users
תוכן בקשת JSON:
{
"name": "USER_ID",
"password": "PASSWORD"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2025-10-20T22:44:16.656Z",
"startTime": "2025-10-20T22:44:16.686Z",
"endTime": "2025-10-20T22:44:20.437Z",
"operationType": "CREATE_USER",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
מגבלות האורך של שמות המשתמשים ב-Cloud SQL זהות למגבלות האורך של שמות המשתמשים ב-SQL Server מקומי.
REST v1beta4
כדי ליצור משתמש, משתמשים בבקשת POST עם השיטה users:insert.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה
- USER_ID: מזהה המשתמש
- PASSWORD: הסיסמה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/users
תוכן בקשת JSON:
{
"name": "USER_ID",
"password": "PASSWORD"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2025-10-20T22:44:16.656Z",
"startTime": "2025-10-20T22:44:16.686Z",
"endTime": "2025-10-20T22:44:20.437Z",
"operationType": "CREATE_USER",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
מגבלות האורך של שמות המשתמשים ב-Cloud SQL זהות למגבלות האורך של שמות המשתמשים ב-SQL Server מקומי.
הצגת רשימת משתמשים
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות משתמשים.
gcloud
כדי להציג את רשימת המשתמשים של המופע הזה, משתמשים בפקודה gcloud sql users list:
gcloud sql users list \ --instance=INSTANCE_NAME
REST v1
כדי להציג רשימה של המשתמשים שהוגדרו למופע, משתמשים בבקשת GET עם השיטה users:list.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
ה-method של ה-HTTP וכתובת ה-URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#usersList",
"items": [
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "sqlserver",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "user-id-1",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "user-id-2",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
...
},
{
...
}
]
}
REST v1beta4
כדי להציג רשימה של המשתמשים שהוגדרו למופע, משתמשים בבקשת GET עם השיטה users:list.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
ה-method של ה-HTTP וכתובת ה-URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#usersList",
"items": [
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "sqlserver",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "user-id-1",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
"kind": "sql#user",
"etag": "--redacted--",
"name": "user-id-2",
"host": "",
"instance": "instance-id",
"project": "project-id",
"sqlserverUserDetails": {
"serverRoles": [
"CustomerDbRootRole"
]
}
},
{
...
},
{
...
}
]
}
שינוי סיסמה של משתמש
אפשר לשנות את הסיסמאות של המשתמשים באחת מהדרכים הבאות.
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות משתמשים.
- לוחצים על סמל האפשרויות הנוספות
ליד המשתמש שרוצים לעדכן.
- בוחרים באפשרות שינוי הסיסמה.
- מציינים סיסמה חדשה.
- לוחצים על OK.
gcloud
משתמשים בפקודה
gcloud sql users set-password כדי לשנות סיסמה.
מחליפים את מה שכתוב בשדות הבאים:
- USER_NAME: שם המשתמש.
- INSTANCE_NAME: השם של המכונה.
gcloud sql users set-password USER_NAME \ --instance=INSTANCE_NAME \ --prompt-for-password
REST v1
כדי לשנות סיסמה של משתמש, משתמשים בבקשת PUT עם השיטה users:update.
הבקשה הבאה מעדכנת את הסיסמה של חשבון המשתמש
user_name.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
- user-id: מזהה המשתמש
- password: הסיסמה החדשה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
PUT https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/users?name=user-id
תוכן בקשת JSON:
{
"name": "user-id",
"password": "password"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
REST v1beta4
כדי לשנות סיסמה של משתמש, משתמשים בבקשת PUT עם השיטה users:update.
הבקשה הבאה מעדכנת את הסיסמה של חשבון המשתמש
user_name.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- project-id: מזהה הפרויקט
- instance-id: מזהה המכונה הרצוי
- user-id: מזהה המשתמש
- password: הסיסמה החדשה של המשתמש
ה-method של ה-HTTP וכתובת ה-URL:
PUT https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/users?name=user-id
תוכן בקשת JSON:
{
"name": "user-id",
"password": "password"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "UPDATE_USER",
"name": "operation-id",
"targetId": "instance-id",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id",
"targetProject": "project-id"
}
הסרת משתמש
משתמש ברירת המחדל יכול להסיר משתמשים.
לפני שמסירים משתמש, צריך להסיר את כל האובייקטים שבבעלותו או להקצות מחדש את הבעלות עליהם, ולבטל את כל ההרשאות שהתפקיד קיבל על אובייקטים אחרים.
המסוף
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- כדי לפתוח את הדף סקירה כללית של מכונה, לוחצים על שם המכונה.
- בתפריט הניווט של SQL, בוחרים באפשרות משתמשים.
- לוחצים על סמל האפשרויות הנוספות
ליד המשתמש שרוצים להסיר. - לוחצים על הסרה ואז שוב על הסרה.
gcloud
כדי להסיר משתמש, משתמשים בפקודה
gcloud sql users delete.
מחליפים את מה שכתוב בשדות הבאים:
- USER_NAME: שם המשתמש.
- INSTANCE_NAME: השם של המכונה.
gcloud sql users delete USER_NAME \ --instance=INSTANCE_NAME
REST v1
בדוגמה הבאה נעשה שימוש בשיטה users:delete כדי למחוק את חשבון המשתמש שצוין.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה הרצוי
- USERNAME: כתובת האימייל של המשתמש או של חשבון השירות
ה-method של ה-HTTP וכתובת ה-URL:
DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/users?host=&name=USERNAME
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "DELETE_USER",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
בדוגמה הבאה נעשה שימוש בשיטה users:delete כדי למחוק את חשבון המשתמש שצוין.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- INSTANCE_ID: מזהה המכונה הרצוי
- USERNAME: כתובת האימייל של המשתמש או של חשבון השירות
ה-method של ה-HTTP וכתובת ה-URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/users?host=&name=USERNAME
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID",
"status": "DONE",
"user": "user@example.com",
"insertTime": "2020-02-07T22:38:41.217Z",
"startTime": "2020-02-07T22:38:41.217Z",
"endTime": "2020-02-07T22:38:44.801Z",
"operationType": "DELETE_USER",
"name": "OPERATION_ID",
"targetId": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}