ב-Cloud de Confiance by S3NS יש ממשק לניהול זהויות והרשאות גישה (IAM), שמאפשר לתת גישה למשאבים ספציפיים ב- Cloud de Confiance by S3NS ולמנוע גישה לא רצויה למשאבים אחרים. בדף הזה מוסבר איך Cloud SQL משולב עם IAM ואיך אפשר להשתמש ב-IAM כדי לנהל את הגישה למשאבים של Cloud SQL ולאמת את מסד הנתונים. למידע מפורט על Cloud de Confiance IAM, תוכלו לעיין במסמכי העזרה של IAM.
Cloud SQL מספק קבוצה של תפקידים מוגדרים מראש שנועדו לעזור לכם לשלוט בגישה למשאבי Cloud SQL. אם התפקידים המוגדרים מראש לא מספקים את קבוצות ההרשאות שאתם צריכים, אתם יכולים גם ליצור תפקידים בהתאמה אישית. בנוסף, התפקידים הבסיסיים מדור קודם (עריכה, צפייה ובעלים) עדיין זמינים, אבל הם לא מספקים את אותה רמת שליטה פרטנית כמו התפקידים של Cloud SQL. בפרט, התפקידים הבסיסיים מספקים גישה למשאבים ב- Cloud de Confiance by S3NS, ולא רק ב-Cloud SQL. מידע נוסף על תפקידים בסיסיים זמין במאמר תפקידים בסיסיים. Cloud de Confiance by S3NS
אפשר להגדיר מדיניות IAM בכל רמה בהיררכיית המשאבים: ברמת הארגון, ברמת התיקייה או ברמת הפרויקט. משאבים יורשים את המדיניות מכל ההורים שלהם בהיררכיה.
מאמרי עזרה של IAM ל-Cloud SQL
- הרשאות שנדרשות למשימות נפוצות במסוף Cloud de Confiance
- ההרשאות הנדרשות לפקודות
gcloud sql - ההרשאות הנדרשות לשיטות Cloud SQL Admin API
- תפקידי IAM מוגדרים מראש ב-Cloud SQL
- הרשאות והתפקידים שלהן
- תפקידים בהתאמה אישית
מושגים שקשורים לאימות ב-IAM
כשמשתמשים באימות IAM, הרשאת גישה למשאב (מופע Cloud SQL) לא ניתנת ישירות למשתמש הקצה. במקום זאת, ההרשאות מקובצות בתפקידים, והתפקידים ניתנים לחשבונות. מידע נוסף זמין במאמר סקירה כללית על IAM.
אדמינים שמשתמשים באימות מסד נתונים של IAM כדי לאפשר למשתמשים להתחבר יכולים להשתמש באימות IAM כדי לנהל באופן מרכזי את בקרת הגישה למופעים שלהם באמצעות כללי מדיניות של IAM.
כללי מדיניות IAM כוללים את הישויות הבאות:
- חשבונות משתמש. ב-Cloud SQL, אפשר להשתמש בכמה סוגים של חשבונות משתמשים: חשבון משתמש, חשבון שירות (לאפליקציות) או קבוצה. מידע נוסף מופיע במאמר מושגים שקשורים לזהות.
- תפקידים. תפקיד הוא אוסף של הרשאות. אתם יכולים להקצות תפקידים לישויות כדי להעניק להן את ההרשאות שנדרשות לביצוע משימות ספציפיות.
לדוגמה, כדי להתחבר למכונה באמצעות אימות מסד נתונים ב-IAM, לחשבון משתמש נדרשת ההרשאה
cloudsql.instances.login, שנכללת בתפקיד משתמש במכונת Cloud SQL. כדי לקבל את ההרשאה, צריך לקשר את המשתמש, חשבון השירות או הקבוצה לתפקיד המוגדר מראש של Cloud SQL או לתפקיד בהתאמה אישית שכולל את ההרשאה. מידע נוסף על תפקידים ב-IAM זמין במאמר תפקידים. - משאב. המשאבים שהגורמים המורשים ניגשים אליהם הם מופעים של Cloud SQL. כברירת מחדל, קישורי מדיניות IAM מוחלים ברמת הפרויקט, כך שהחשבונות הראשיים מקבלים הרשאות תפקיד לכל המופעים של Cloud SQL בפרויקט.
אימות מסד נתונים ב-IAM
אימות מסד נתונים הוא תהליך שבו מאמתים את הזהות של משתמש שמנסה לגשת למסדי נתונים. ב-Cloud SQL, אפשר להשתמש בסוגי האימות הבאים של מסדי נתונים למשתמשים במסד הנתונים:
- האימות המובנה במסד הנתונים מתבצע באמצעות שם משתמש וסיסמה כדי לאמת את זהות המשתמש במסד הנתונים.
- אימות מסד נתונים ב-IAM משתמש ב-IAM כדי לאמת משתמש באמצעות טוקן גישה. יש שתי אפשרויות לניהול משתמשים או חשבונות שירות.
- באופן פרטני: כברירת מחדל, כשמשתמשים באימות מסד נתונים של IAM, מקצים תפקידי IAM והרשאות מסד נתונים למשתמשים ולחשבונות שירות פרטניים. אתם מוסיפים חשבונות נפרדים למופעים ומנהלים את ההרשאות של כל חשבון בנפרד.
- לפי קבוצה: אימות קבוצות ב-IAM מאפשר לכם לשלוט בגישה למכונות Cloud SQL ברמת הקבוצה. לדוגמה, אתם יכולים להקצות תפקידים בממשק לניהול הזהויות והרשאות הגישה (IAM) והרשאות גישה למסד נתונים לקבוצת Cloud Identity. כל המשתמשים וחשבונות השירות בקבוצה ב-Cloud Identity יורשים את תפקידי ה-IAM וההרשאות במסד הנתונים שמוקצים לקבוצה.
השוואה בין אפשרויות אימות של מסדי נתונים
בטבלה הבאה מוצגת השוואה בין שיטות שונות לאימות מסדי נתונים ב-Cloud SQL.
| Feature | אימות מובנה של מסד נתונים | אימות מסד נתונים של IAM (אישי) | אימות של קבוצות IAM |
|---|---|---|---|
| שיטת אימות | סיסמה | טוקן אימות זמני | טוקן אימות זמני |
| הצפנה של תנועה ברשת | לא נדרש SSL | נדרש SSL | נדרש SSL |
| ניהול משתמשים | גלילה ידנית | ריכוזי באמצעות IAM | ריכוז באמצעות IAM וקבוצות ב-Cloud Identity |
אימות קבוצות IAM
אימות קבוצות ב-IAM מאפשר לכם לנהל משתמשי Cloud SQL ברמת הקבוצה. דוגמה לקבוצה: קבוצת Cloud Identity. התכונה הזו מפשטת את ניהול המשתמשים במסד הנתונים. אתם יכולים לנהל את תפקיד ה-IAM או את ההרשאות של Cloud SQL למספר חשבונות בו-זמנית, במקום לעדכן כל משתמש או חשבון שירות בנפרד. אפשר גם להעניק ולבטל הרשאות גישה למסד נתונים לקבוצה ב-Cloud Identity. כל חשבון חדש שתוסיפו לקבוצת Cloud Identity יקבל בירושה את ההרשאות של הקבוצה הזו.
בעזרת אימות קבוצות IAM, אתם יכולים:
- להוסיף משתמש לקבוצה ולגרום לכך שהמשתמש יקבל בירושה באופן אוטומטי את תפקידי ה-IAM וההרשאות למסד הנתונים.
- כדי להסיר ממשתמש גישת התחברות והרשאות למסדי נתונים של Cloud SQL, צריך להסיר אותו מקבוצה.
- להעניק הרשאות כניסה או הרשאות למסד נתונים לקבוצה פעם אחת, במקום להעניק את אותן הרשאות כמה פעמים למשתמשים שונים.
- להסיר הרשאות כניסה או גישה לאובייקט במסד נתונים לקבוצה שלמה בבת אחת.
למרות שהרשאות ותפקידים ב-IAM מוקצים ברמת הקבוצה, משתמשים וחשבונות שירות משתמשים בחשבונות ובפרטי הכניסה האישיים שלהם ב-IAM, ולא בחשבון קבוצה משותף, כדי להתחבר. אחרי הכניסה הראשונה של משתמש או חשבון שירות, Cloud SQL יוצר חשבון מסד נתונים במכונה בשביל המשתמש או חשבון השירות.
התחברות אישית ופעילות במסד הנתונים של כל משתמש או חשבון שירות מופיעים ביומני הביקורת. למטרות ביקורת, תוכלו לראות במסד הנתונים שלכם באיזה חשבון בוצעה כל פעולה.
מידע נוסף על עבודה עם קבוצות ב-Cloud Identity זמין במאמר סקירה כללית על Cloud Identity.
כשמוסיפים משתמש או חשבון שירות לקבוצה, מתרחשים השינויים הבאים ב-Cloud SQL:
- אם כבר הענקתם לקבוצה הרשאות כניסה ל-IAM, המשתמש או חשבון השירות מקבלים את היכולת להיכנס למופע Cloud SQL כי הם שייכים לקבוצה.
- המשתמש יורש אוטומטית את כל ההרשאות במסד הנתונים שניתנו לקבוצה.
כשמסירים משתמש או חשבון שירות מהקבוצה, מתרחשים השינויים הבאים ב-Cloud SQL:
- המשתמש מאבד את כל ההרשאות למסד הנתונים שהועברו אליו קודם כחבר בקבוצה.
- יכול להיות שהמשתמש עדיין יוכל להתחבר אם הוא יקבל הרשאות התחברות ל-IAM עבור מכונת Cloud SQL דרך חברות בקבוצות אחרות. אבל למשתמש לא יהיו הרשאות גישה למסד הנתונים מהקבוצה הקודמת שלו כשהוא יתחבר.
שיטות מומלצות לאימות קבוצות ב-IAM
- כששוללים את הרשאת הכניסה (
cloudsql.instances.login) לקבוצת IAM ב-Cloud Identity, צריך לוודא שמוחקים את הקבוצה גם ממכונת Cloud SQL. - כשמוחקים קבוצה מ-Cloud Identity, חשוב לוודא שמוחקים את הקבוצה גם ממופע Cloud SQL.
- אפשר להשתמש בקבוצות כדי להגדיר בבסיס הנתונים בקרת גישה מבוססת-תפקידים. תמיד צריך להעניק לקבוצה את ההרשאות המינימליות הנדרשות.
- אל תקצו תפקידי אימות של קבוצות ב-IAM למשתמשים מובנים. לדוגמה, אם יש לכם משתמש מובנה,
user-a, ואתם יוצרים משתמש לאימות קבוצות ב-IAM,user-b@example.com, אל תקצו את התפקידuser-b@example.comלמשתמשuser-a.
הגבלות על אימות של קבוצות IAM
- אפשר להוסיף עד 200 קבוצות IAM למופע.
- אי אפשר להוסיף חשבונות שירות או משתמשי IAM פרטיים ששייכים לקבוצה באותו מופע. במילים אחרות, אי אפשר להוסיף חשבון מהסוג
CLOUD_IAM_USERאוCLOUD_IAM_SERVICE_ACCOUNTאם כבר קיים חשבון זהה מהסוגCLOUD_IAM_GROUP_USERאוCLOUD_IAM_GROUP_SERVICE_ACCOUNT. - אם כבר קיים חשבון פרטי במופע עם הסוג
CLOUD_IAM_USERאוCLOUD_IAM_SERVICE_ACCOUNT, אי אפשר להשתמש בחשבון לאימות קבוצות IAM. סוגי המשתמשים האלה לא מקבלים בירושה תפקידי IAM והרשאות גישה למסד נתונים מקבוצה.כדי לפתור את הבעיה הזו ולהשתמש בחשבון עם אימות קבוצת IAM, צריך להסיר את משתמש ה-IAM או את חשבון השירות הספציפיים.
מידע נוסף מופיע במאמר משתמש IAM או חשבון שירות קיים לא מקבלים בירושה את הרשאות מסד הנתונים שניתנו לקבוצה שלהם. - שינויים בחברות בקבוצות ב-Cloud Identity, כמו הוספה של חשבון, נכנסים לתוקף תוך כ-15 דקות. הזמן הזה הוא בנוסף לזמן שנדרש לשינויים ב-IAM.
אימות אוטומטי לעומת אימות ידני של מסד נתונים של IAM
ב-Cloud SQL ל-MySQL יש שתי אפשרויות לאימות פרטי ההתחברות של המשתמשים ב-IAM ממסדי הנתונים: אוטומטי וידני.
אימות אוטומטי של מסד נתונים של IAM
אימות אוטומטי של מסד נתונים ב-IAM מאפשר להעביר את הבקשה של טוקנים לגישה ואת הניהול שלהם אל מחבר Cloud SQL ביניים, כמו שרת proxy ל-Cloud SQL Auth או אחד ממחברי השפה של Cloud SQL. באימות אוטומטי של מסד הנתונים של IAM, המשתמשים צריכים להעביר רק את שם המשתמש במסד הנתונים של IAM בבקשת חיבור מהלקוח. המחבר שולח את פרטי אסימון הגישה למאפיין הסיסמה בשם הלקוח.
אימות אוטומטי של מסד נתונים ב-IAM מחייב שימוש במחבר Cloud SQL, והוא נתמך על ידי שרת proxy ל-Cloud SQL Auth, מחבר Go, מחבר Java ומחבר Python.
כדי ליהנות מהחוויה המאובטחת והאמינה ביותר, מומלץ להשתמש באימות אוטומטי של מסד נתונים של IAM. אימות מסד נתונים ב-IAM מתבצע באמצעות אסימוני גישה מסוג OAuth 2.0, שהתוקף שלהם הוא לטווח קצר – שעה אחת בלבד. מחברי Cloud SQL יכולים לבקש ולרענן את הטוקנים האלה, וכך להבטיח חיבורים יציבים לתהליכים או לאפליקציות לטווח ארוך שמסתמכים על איגום חיבורים. מומלץ מאוד להשתמש באימות אוטומטי של מסד נתונים של IAM במקום באימות ידני.
מידע נוסף זמין במאמר כניסה באמצעות אימות אוטומטי של מסד נתונים של IAM.
אימות ידני של מסד נתונים ב-IAM
אימות ידני של מסד נתונים ב-IAM מחייב את חשבון המשתמש ב-IAM להעביר באופן מפורש את אסימון הגישה עבור מאפיין הסיסמה בבקשת החיבור של הלקוח. קודם כול, חשבונות המשתמשים צריכים להתחבר ל- Cloud de Confiance by S3NS ולבקש באופן מפורש את טוקן הגישה מ-IAM.
באמצעות ה-CLI של gcloud, אפשר לבקש במפורש אסימון OAuth 2.0 עם היקף Cloud SQL Admin API שמשמש לכניסה למסד הנתונים. כשמתחברים כמשתמש במסד נתונים עם אימות מסד נתונים של IAM, משתמשים בכתובת האימייל כשם המשתמש ובאסימון הגישה כסיסמה. אפשר להשתמש בשיטה הזו עם חיבור ישיר למסד הנתונים או עם מחבר Cloud SQL.
אפשר להתחבר באמצעות אימות מסד נתונים של IAM רק דרך חיבור SSL.
מידע נוסף זמין במאמר כניסה באמצעות אימות ידני של מסד נתונים של IAM.
בקרת גישה מבוססת-הקשר ואימות מסד נתונים ב-IAM
אם אתם משתמשים בבקרת גישה מבוססת-הקשר בהגדרת ה-IAM, לא תוכלו להשתמש במחבר Cloud SQL, כמו שרת ה-proxy ל-Cloud SQL Auth או אחד ממחברי השפה של Cloud SQL, עם אימות מסד נתונים של IAM. ניסיונות להתחבר באופן ידני או אוטומטי באמצעות אימות IAM ייכשלו. במקום זאת, מתחברים ישירות למופע.
ניהול משתמשים וחשבונות שירות
כדי לתת למשתמשים ולחשבונות שירות גישה למסדי נתונים במופע באמצעות אימות מסד נתונים ב-IAM, צריך להוסיף אותם למופע או להוסיף אותם לקבוצה שיש לה גישה למופע. מידע נוסף זמין במאמר בנושא הוספה של משתמש או חשבון שירות שמשתמשים ב-IAM.
אם משתמשים במסוף Cloud de Confiance כדי להוסיף משתמשים או חשבונות שירות, Cloud SQL מבקש להוסיף למשתמש את התפקיד Cloud SQL User. התפקיד הזה נדרש כדי שהמשתמשים יוכלו להתחבר למופע.
אחרי שמוסיפים את משתמש ה-IAM למסד הנתונים, צריך להעניק הרשאות למסד הנתונים באופן ידני. משתמשים בפקודה GRANT של MySQL כדי להעניק הרשאות אחרות למסד הנתונים.הגדרת מכונה לאימות מסד נתונים ב-IAM של Cloud SQL
אפשר להפעיל אימות מסד נתונים של IAM במופע באמצעות הדגל cloudsql_iam_authentication. אחרי שמפעילים את הדגל הזה, המופע מאפשר כניסה מחשבונות שהוגדרו לאימות מסד נתונים של IAM. הדגל הזה מופעל כברירת מחדל אם יוצרים את המכונות באמצעות מסוף Cloud de Confiance .
הדגל הזה נדרש לאימות של קבוצות IAM ולאימות של מסדי נתונים של IAM.
הגדרת הדגל לא מונעת ממשתמשים קיימים שאינם משתמשי IAM להשתמש בשמות המשתמש והסיסמאות שלהם כדי להתחבר. עם זאת, אם משביתים את הדגל הזה במופע, כל משתמש שנוסף קודם באמצעות אימות מסד נתונים של IAM מאבד את הגישה למופע. מידע נוסף זמין במאמר הגדרת מופעים לאימות מסד נתונים של IAM.
אימות מסד נתונים ב-IAM ב-Cloud SQL לתרחישים שונים של מכונות
| רפליקות לקריאה | אימות מסד נתונים של IAM לא מופעל באופן אוטומטי בעותק לקריאה, גם אם הוא מופעל במופע הראשי. אחרי שיוצרים העתק לקריאה, צריך להוסיף אימות מסד נתונים של IAM. מידע נוסף זמין במאמר בנושא הגדרת כניסות של עותק לקריאה לאימות מסד נתונים של IAM. |
| מכונות ששוחזרו | אם בוצעה בעבר גיבוי של מופע מסוים ואחר כך שחזור שלו לאותו מופע או למופע אחר באותו פרויקט, יחולו ההרשאות הנוכחיות של התחברות המשתמש. אם משחזרים גיבוי למופע חדש בפרויקט אחר, צריך להגדיר את הרשאות המשתמש למופע החדש. מידע נוסף זמין במאמר בנושא הוספת משתמש או חשבון שירות שמשתמשים באימות מסד נתונים של IAM. |
מידע על תנאים ב-IAM
תנאי IAM מאפשרים להעניק תפקידים על סמך מגוון מאפיינים. לדוגמה, אתם יכולים לאפשר גישה רק בתאריכים ובשעות מסוימים, או להעניק גישה רק למשאבי Cloud SQL עם שמות מסוימים.
מידע נוסף על תנאים ב-IAM זמין במאמר סקירה כללית על תנאים ב-IAM. תוכלו גם לקרוא מידע נוסף על שימוש בתנאים של IAM עם Cloud SQL, כולל דוגמאות.
עבודה עם יומני ביקורת של Cloud
כדי לשמור רשומות של גישה לנתונים, כולל כניסות, אפשר להשתמש ביומני ביקורת. יומני הביקורת של Cloud מושבתים כברירת מחדל. כדי לעקוב אחרי התחברויות, צריך להפעיל את יומני הביקורת Data Access. השימוש ביומן ביקורת למטרה הזו כרוך בעלויות של רישום נתונים. מידע נוסף זמין במאמרים יומני ביקורת, הגדרת יומני ביקורת של גישה לנתונים ותמחור של נתוני רישום ביומן.
הגבלות
- הכניסה לחשבון משתמש של אימות מסד נתונים ב-IAM חייבת להיות באותיות קטנות בלבד. לדוגמה,
example-user@example.com.Example-User@example.comאסור. - מטעמי אבטחה, התחברויות באמצעות אימות מסד נתונים של IAM זמינות רק בחיבור SSL. חיבורים לא מוצפנים נדחים.
- לכל מופע יש מכסת התחברות לדקה, שכוללת התחברויות מוצלחות ולא מוצלחות. אם חורגים מהמכסה, הכניסות לחשבון לא יהיו זמינות באופן זמני. מומלץ להימנע מהתחברות לחשבון בתדירות גבוהה ולהגביל את ההתחברויות באמצעות רשתות מורשות. המכסה לאישור של התחברויות היא 12,000 לדקה לכל מופע.
- אין תמיכה באימות מסד נתונים ב-IAM במופעים שמשתמשים ב-MySQL 5.6.