באמצעות מדיניות של רשימות בקרת גישה (ACL) ב-Memorystore for Valkey, אתם יכולים לאבטח את הגישה למופעים. אתם יכולים להגביל את הגישה של משתמשים ושירותים למפתחות, לפקודות ולערוצי Pub/Sub ספציפיים כדי להפעיל אבטחה ברמת גרנולריות גבוהה.
אלה דוגמאות לתרחישי שימוש במדיניות ACL כדי לאבטח את הגישה למופעים:
- מתן בקרת גישה מבוססת-תפקידים (RBAC): יצירת פרופילי משתמשים נפרדים לרכיבים שונים של האפליקציות. לדוגמה, לממשק קצה באינטרנט יכולה להיות גישת קריאה בלבד, בעוד שלשירות של תהליך רקע יש גישת קריאה וכתיבה. כך אפשר למנוע דליפות נתונים או שינויים לא מכוונים.
- מניעת פקודות הרסניות: הגבלת פקודות מסוכנות כמו
FLUSHALL,FLUSHDBאוCONFIGלאדמינים ברמה גבוהה בלבד. כך אפשר להגן על תקינות הנתונים מפני באגים בתוכנה או שגיאות ידניות. מספקים אבטחה לאפליקציות מרובות דיירים: משתמשים במשתמשי ACL נפרדים למיקרו-שירותים שונים או לשותפים חיצוניים. כך מוודאים שמשתמשים בשירות אחד לא יכולים לקרוא או לשנות מפתחות שבבעלות שירות אחר.
ב-Memorystore for Valkey אין אפשרות להקצאת משאבים לכמה דיירים ברמת המשאב. למרות שמרחבי המפתחות מחולקים, יכול להיות ששירות אחד יצרוך כמות לא פרופורציונלית של זיכרון או מעבד.
ביצוע ניתוח ומעקב לקריאה בלבד: הקצאת משתמש ייעודי שיכול להשתמש רק בפקודה
GETאו בפקודות אחרות לקריאה בלבד (לדוגמה,SCANאוTYPE) למנועי ניתוח או לאפליקציות של מרכזי בקרה. כך נמנעות כתיבות מקריות או מחיקות נתונים.אבטחת מפתחות של מסד נתונים: הגבלת האפשרות של אפליקציות ליצור אינטראקציה רק עם מפתחות שתואמים לדפוסים ספציפיים (לדוגמה,
app1:*). כך מתבצעת הפרדה לוגית של הנתונים בתוך מופע.השבתת סקריפטים של Lua: אפשר להשתמש במדיניות ACL כדי לנהל את יכולות הסקריפטים של Lua במופעים. השבתה או הגבלה של סקריפטים של Lua יכולות להיות שימושיות לשיפור הביצועים, לפשט את הפונקציונליות של המופעים או לפעול בהתאם להנחיות האבטחה של הארגון.
לפני שמתחילים
לפני שמתחילים להשתמש במדיניות ACL, צריך לבצע את ההוראות שבקטע הזה.
שימוש במסוף Google Cloud , ב-Google Cloud CLI ובממשקי API
כדי להשתמש במסוף Google Cloud , ב-Google Cloud CLI ובממשקי API, צריך לבצע את הפעולות הבאות:
- בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.
הערה: אם אתם לא מתכננים לשמור את המשאבים שתיצרו בתהליך הזה, תוכלו ליצור פרויקט חדש במקום לבחור באחד מהפרויקטים הקיימים. בסיום התהליך תוכלו למחוק את הפרויקט ולהסיר את כל המשאבים שקשורים אליו.
כניסה לדף לבחירת הפרויקט - מוודאים שהחיוב מופעל בפרויקט. כך בודקים אם החיוב מופעל בפרויקט
מתקינים ומפעילים את Google Cloud CLI.
הערה: אם התקנתם את ה-CLI של gcloud, השתמשו בפקודה
gcloud components updateכדי לבדוק אם הגרסה האחרונה מותקנת. כדי לגשת לפקודות ה-CLI של gcloud של Memorystore for Valkey, אתם צריכים לפחות את גרסה489.0.0של ה-CLI של gcloud.-
מפעילים את Memorystore for Valkey API.
Memorystore for Valkey -
מפעילים את Network Connectivity API.
Network Connectivity API -
מפעילים את Service Consumer Management API.
Service Consumer Management API
הקצאת תפקידים ב-Memorystore for Valkey
ודאו שלכם או לחשבון המשתמש שבו אתם משתמשים יש את ההרשאות הנדרשות לפעולה שאתם צריכים לבצע.
כדי לבצע את כל הפעולות במדיניות ACL, צריך להשתמש בתפקידים Memorystore Admin (roles/memorystore.admin) ו-Memorystore Editor (roles/memorystore.editor). כדי לראות רק את מדיניות ה-ACL, משתמשים בתפקיד צפייה ב-Memorystore (roles/memorystore.viewer).
הקצאת הרשאות ל-Memorystore for Valkey
בנוסף לתפקידים Memorystore Admin, Memorystore Editor ו-Memorystore Viewer, כדי להשתמש במדיניות ACL ב-Memorystore for Valkey, אתם צריכים את ההרשאות הבאות:
| פעולה | הרשאה |
|---|---|
| יצירת מדיניות ACL | memorystore.aclPolicies.create |
| הקצאת מדיניות ACL למופע | memorystore.instances.update |
| מידע על מדיניות ACL | memorystore.aclPolicies.list |
| הצגת מידע על מדיניות ACL | memorystore.aclPolicies.get |
| הצגת מידע על עדכונים במדיניות בנושא רשימות ACL | memorystore.aclPolicyRevisions.list |
| הצגת מידע על עדכון של מדיניות ACL | memorystore.aclPolicyRevisions.get |
| שינוי מדיניות ACL | memorystore.aclPolicies.update |
| הסרת מדיניות ACL ממופע | memorystore.instances.update |
| מחיקת מדיניות ACL | memorystore.aclPolicies.delete |
יצירת מדיניות ACL
יצירת כללי מדיניות של ACL ב-Memorystore for Valkey משפרת את האבטחה של המופעים, כי היא מגבילה את גישת המשתמשים למפתחות, לפקודות ולערוצי Pub/Sub ספציפיים.
אפשר ליצור מדיניות ACL באמצעות מסוף Google Cloud או CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
בדף ACL policies (מדיניות ACL), לוחצים על Create policy (יצירת מדיניות).
בחלון Create policy:
בשדה Policy name, כותבים את השם של מדיניות ACL. שם המדיניות צריך להכיל רק אותיות קטנות, מספרים ומקפים. הוא חייב להתחיל באות ולהיות ייחודי באזור שלו.
בתפריט אזור, בוחרים את האזור שבו רוצים ש-Memorystore for Valkey ייצור את מדיניות ה-ACL.
לוחצים על הוספת כלל.
בשדה User ID, מזינים את שם המשתמש שאליו רוצים להחיל את מדיניות ACL.
בשדה מחרוזת הגישה, מזינים את מחרוזת הגישה של המדיניות. מחרוזת הגישה היא כלל שאנשים יכולים לקרוא, שמגדיר את ההרשאות הספציפיות של המשתמש.
לדוגמה, אם רוצים לתת למשתמש העל
defaultהרשאות קריאה וכתיבה לכל מפתחות ה-ACL של המופע, צריך למלא את השדות מזהה משתמש ומחרוזת גישה באופן הבא:מזהה משתמש מחרוזת גישה defaulton ~* &* +@allהכלל הזה מעניק למשתמש
defaultאת ההרשאות הבאות:-
on: המשתמש פעיל ויש לו הרשאה לאימות -
~*: למשתמש יש הרשאת קריאה והרשאת כתיבה לכל המפתחות האפשריים -
&*: למשתמש יש גישה לכל הערוצים של Pub/Sub -
+@all: המשתמש יכול להריץ את כל הפקודות הזמינות
מידע נוסף על כללים ומדיניות אחרים של ACL שאפשר ליצור זמין במאמר ACL במסמכי התיעוד של Valkey.
-
חוזרים על שלבים ג עד ה לגבי כל כלל ACL נוסף שרוצים ליצור למדיניות.
לוחצים על יצירה.
gcloud
כדי ליצור מדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="lucian" \ --rules=rule="on +get",username="taylor"
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שאתם יוצרים. שם המדיניות חייב להכיל רק אותיות קטנות, מספרים ומקפים. הוא חייב להתחיל באות ולהיות ייחודי באזור שלו.
- REGION: האזור שבו רוצים שהמדיניות של ה-ACL תמוקם.
המדיניות הזו משתמשת באימות בסיסי מבוסס-טוקן, ויש בה כללים שמבצעים את הפעולות הבאות:
- הכלל הראשון מעניק את ההרשאה
~* +@allל-lucian. ההרשאה הזו מאפשרת למשתמש לגשת לכל המפתחות ולהריץ את כל הפקודות. - הכלל השני מעניק את ההרשאה
getל-taylor. הרשאה זו מאפשרת למשתמש לאחזר את הערכים שמשויכים למפתחות. ההרשאה הזו מגבילה את הגישה של המשתמש לפעולות של קריאת נתונים בלבד, ומונעת מהמשתמש לשנות מפתחות.
כדי ליצור כללים למדיניות ACL שמשתמשת באימות של ניהול זהויות והרשאות גישה (IAM), מומלץ להשתמש בנציגי IAM לשמות המשתמשים (לדוגמה, כתובות האימייל של המשתמשים).
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="lucian@example.com" \ --rules=rule="on +get",username="taylor@example.com"
כדי ליצור כלל למדיניות ACL שלא משתמשת באימות, המשתמש צריך להיות משתמש default.
gcloud memorystore acl-policies create ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all",username="default"
מידע נוסף על אימות בסיסי מבוסס-טוקן ועל אימות IAM זמין במאמרים גישה מאובטחת למופעים באמצעות אימות בסיסי מבוסס-טוקן ומידע על אימות IAM.
מידע נוסף על כללים ומדיניות אחרים של ACL שאפשר ליצור זמין במאמר ACL במסמכי Valkey.
הקצאת מדיניות ACL למופע
כשמקצים מדיניות ACL למופע, או כשמחליפים מדיניות שהוקצתה, מאפשרים ל-Memorystore for Valkey להחיל את הכללים של המדיניות על המופע. כתוצאה מכך, אתם מגבילים את הגישה של המשתמשים למפתחות, לפקודות ולערוצי Pub/Sub ספציפיים.
אפשר להקצות מדיניות ACL למופע באמצעות מסוףGoogle Cloud או ה-CLI של gcloud.
הקצאת מדיניות למופע חדש
כדי ליצור מכונה ולהקצות לה מדיניות ACL, ראו יצירת מכונות.
הקצאת מדיניות למופע קיים
כדי לשפר את האבטחה של מופע קיים, אפשר להקצות למופע מדיניות ACL.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
לוחצים על המזהה של המופע שרוצים להקצות לו מדיניות ACL.
בדף Instance at a glance (סקירה מהירה של המופע), גוללים לכרטיס Security (אבטחה).
לצד השדה ACL policy (מדיניות ACL), לוחצים על Edit (עריכה) (edit).
בחלון Edit ACL policy, מבצעים את הפעולות הבאות:
בתפריט מדיניות, בוחרים את המדיניות שרוצים להקצות למופע.
לוחצים על Update instance.
gcloud
כדי להקצות מדיניות ACL למכונה קיימת, משתמשים בפקודה gcloud memorystore instances update.
gcloud memorystore instances update INSTANCE_ID \ --update_mask=acl_policy \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
מחליפים את הפרטים הבאים:
- INSTANCE_ID: המזהה של המכונה שאליה מקצים את מדיניות ה-ACL
- ACL_POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו נמצאת המכונה
מידע על מדיניות ACL
הצגת מידע על מדיניות ACL ב-Memorystore for Valkey עוזרת לשמור על האבטחה, מבטיחה את היציבות התפעולית של הסביבה ומאפשרת לכם לבדוק נתונים בזיכרון. הכללים האלה מגדירים אילו משתמשים יכולים לקרוא או לשנות תבניות מפתח מסוימות, להריץ פקודות ספציפיות או לגשת לערוצי Pub/Sub ספציפיים.
אפשר לראות מידע על מדיניות ACL באמצעותGoogle Cloud המסוף או ה-CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
בדף ACL policies (מדיניות ACL), אפשר לראות את הפרטים הבאים לגבי כל מדיניות ACL:
- Policy ID: המזהה הייחודי של המדיניות
- מיקום: האזור שבו נמצאת המדיניות
- נוצר בתאריך: התאריך והשעה שבהם נוצרה המדיניות
- עודכן בשעה: התאריך והשעה שבהם המדיניות עודכנה לאחרונה
- מספר הכללים: המספר הכולל של הכללים במדיניות
- בשימוש על ידי מופעים: המופעים שמוקצים למדיניות
gcloud
כדי לראות מידע על מדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies list.
gcloud memorystore acl-policies list --location=REGION
מחליפים את REGION באזור שבו נמצאת מדיניות ה-ACL.
הצגת מידע על מדיניות ACL
כשצופים במידע על מדיניות ACL ב-Memorystore for Valkey, אפשר לבצע ביקורות אבטחה, לפתור בעיות גישה ולאכוף את העיקרון של מתן ההרשאות המינימליות הנדרשות על ידי אימות פקודות משתמש, הרשאות מפתח וגישה לערוצי Pub/Sub. בנוסף, אדמינים יכולים להציג מדיניות ACL כדי לוודא שלאפליקציות יש גישה מתאימה ולזהות כללים מתירניים מדי.
אפשר להציג מידע על מדיניות ACL באמצעות ה-CLI של gcloud. כדי לראות את המידע הזה, משתמשים בפקודה gcloud memorystore acl-policies describe.
gcloud memorystore acl-policies describe ACL_POLICY_NAME \ --location=REGION
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שרוצים לראות מידע לגביה
- REGION: האזור שבו נמצאת מדיניות ה-ACL
הצגת מידע על עדכונים במדיניות בנושא רשימות ACL
כשיוצרים מדיניות ACL, Memorystore for Valkey יוצר גרסה (שינוי) של המדיניות. בכל פעם שמשנים את המדיניות, Memorystore for Valkey יוצר גרסה מתוקנת של המדיניות.
המערכת יוצרת את הגרסאות האלה באופן אוטומטי ב-Memorystore for Valkey, ולכן אפשר להשתמש בהן למעקב פנימי ולמטרות ביקורת. בנוסף, הצגת השינויים מאפשרת לכם לראות את התוכן המדויק של מדיניות ACL בכל גרסה היסטורית.
באמצעות גרסאות של מדיניות ACL, אפשר לעקוב אחרי המכונות שבהן נעשה שימוש בגרסה מסוימת של מדיניות. כך תוכלו לשמור על החשיפה שלכם ולוודא שהמופעים נמצאים בגרסה הנכונה בתקופות של מודל עקביות הדרגתי אחרי עדכון מדיניות.
אפשר לראות מידע על עדכונים במדיניות ACL באמצעותGoogle Cloud המסוף או ה-CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
בדף ACL policies (מדיניות ACL), לוחצים על המזהה של מדיניות ה-ACL שכוללת גרסאות שרוצים להציג. בדף ACL policy revisions מופיע המידע הבא:
- מזהה הגרסה הקודמת: המזהה של כל גרסה קודמת של מדיניות ACL
- מספר הגרסה: המספר של כל גרסה של מדיניות ACL
- מיקום: האזור שבו נמצאת כל גרסה של מדיניות ACL
- נוצר בתאריך: התאריך והשעה שבהם נוצרה כל גרסה של מדיניות ACL
- מופעים מצורפים: המופעים שהוקצו לכל עדכון של מדיניות ACL
- תמונת מצב: מידע מפורט על כל גרסה של מדיניות ACL
gcloud
כדי להציג מידע על עדכונים במדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies revisions list.
gcloud memorystore acl-policies revisions list \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שמכילה את הגרסאות שרוצים לראות מידע לגביהן
- REGION: האזור שבו נמצאת מדיניות ה-ACL
בפלט, רושמים את מזהי הגרסאות. מזהי ה-ACL האלה נדרשים כדי להציג מידע על גרסאות ספציפיות של מדיניות ACL.
הצגת מידע על עדכון של מדיניות ACL
כשמציגים תיקון של מדיניות ACL, אפשר לראות את הכללים, המטא-נתונים ורשימה של כל המקרים שמצורפים אליה. אפשר לראות מידע על גרסה של מדיניות ACL באמצעות Google Cloud המסוףאו ה-CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
בדף ACL policies (מדיניות ACL), לוחצים על המזהה של מדיניות ה-ACL שכוללת גרסה שרוצים להציג.
בדף ACL policy revisions (עדכונים במדיניות ACL), לוחצים על הקישור Snapshot (תמונת מצב) לצד העדכון במדיניות ACL שכולל את המידע שרוצים לראות.
gcloud
כדי להציג מידע על גרסה של מדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies revisions describe.
gcloud memorystore acl-policies revisions describe ACL_POLICY_REVISION_ID \ --acl-policy=ACL_POLICY_NAME \ --location=REGION
מחליפים את הפרטים הבאים:
- ACL_POLICY_REVISION_ID: המזהה של עדכון מדיניות ה-ACL שרוצים להציג לגביו מידע. המזהה הזה מופיע כשמעיינים במידע על עדכונים במדיניות ACL.
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שמכילה את הגרסה.
- REGION: האזור שבו נמצאת מדיניות ה-ACL.
שינוי מדיניות ACL
אפשר לשפר את האבטחה, לאכוף גישה עם הרשאות מינימליות ולנהל את הבטיחות התפעולית באמצעות שינוי מדיניות ACL ב-Memorystore for Valkey. אפשר לשנות מדיניות באמצעות Google Cloud המסוף או ה-CLI של gcloud.
הוספת כלל למדיניות ACL
כדי לשפר את האבטחה של מדיניות ACL, מוסיפים לה כלל.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
לצד מדיניות בקרת הגישה שרוצים להוסיף לה כלל, לוחצים על סמל האפשרויות הנוספות (more_vert) ואז בוחרים באפשרות עריכה.
בחלון עריכת מדיניות, לוחצים על הוספת כלל.
בשדה User ID, מזינים את שם המשתמש שאליו רוצים להחיל את מדיניות ACL.
בשדה מחרוזת הגישה, מזינים את מחרוזת הגישה של המדיניות. מידע נוסף על מחרוזות גישה למדיניות ACL
חוזרים על שלבים 4 עד 6 כדי להוסיף עוד כללי ACL למדיניות.
לוחצים על Save.
gcloud
כדי להוסיף כלל למדיניות ACL, משתמשים בפקודה
gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --add-rules=rule="on ~list:*",username="lucian"
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שרוצים להוסיף לה כלל ACL
- REGION: האזור שבו נמצאת מדיניות ה-ACL
הכלל הזה מעניק ל-lucian גישה לכל המפתחות שמתחילים ב-list:.
שינוי כלל במדיניות ACL
שינוי של כלל ACL במדיניות ACL מספק אבטחה הדוקה יותר, משפר את בטיחות התפעול ומאפשר בקרת גישה פרטנית יותר למשתמשים. לדוגמה, אתם יכולים לבטל הרשאות במהלך תגובה לאירוע או להפעיל גישה זמנית למטרות ניפוי באגים.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
לצד מדיניות ה-ACL שרוצים לשנות בה כלל, לוחצים על סמל האפשרויות הנוספות (more_vert) ואז בוחרים באפשרות עריכה.
בחלון עריכת מדיניות, לוחצים על הוספת כלל.
בשדות מזהה משתמש ומחרוזת גישה, משנים את מזהה המשתמש או את מחרוזת הגישה של המדיניות. מידע נוסף על מחרוזות גישה לכללי מדיניות של ACL זמין במאמר בנושא יצירת מדיניות ACL.
חוזרים על שלבים 4 ו-5 לגבי כל כלל ACL נוסף שרוצים לשנות במדיניות.
לוחצים על Save.
החלפת הכללים של מדיניות ACL
בדומה לשינוי כלל במדיניות, החלפת הכללים במדיניות מספקת אבטחה הדוקה יותר, בטיחות תפעולית משופרת ובקרת גישה מדויקת יותר למשתמשים.
gcloud
כדי להחליף את הכללים של מדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --rules=rule="on ~c*che",username="lucian"
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שרוצים להחליף את כללי ה-ACL שלה
- REGION: האזור שבו נמצאת מדיניות ה-ACL
הכלל שאתם מחליפים במדיניות מעניק גישה lucian לכל המפתחות שתואמים לתבנית c*che. לדוגמה: cache, caache ו-ceche.
הסרת כלל ממדיניות ACL
אם כלל ACL כבר לא חל על מדיניות ACL, אפשר להסיר אותו.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
לצד מדיניות ה-ACL שממנה רוצים להסיר כלל, לוחצים על סמל האפשרויות הנוספות (more_vert) ואז בוחרים באפשרות עריכה.
בחלון עריכת מדיניות, לצד הכלל שרוצים להסיר מהמדיניות, לוחצים על מחיקת הכלל (delete).
חוזרים על שלב 4 לכל כלל נוסף של רשימת ACL שרוצים להסיר מהמדיניות.
לוחצים על Save.
gcloud
כדי להסיר כלל ממדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update ACL_POLICY_NAME \ --location=REGION \ --remove-rules=rule="on ~set",username="lucian"
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שממנה רוצים להסיר כלל ACL
- REGION: האזור שבו נמצאת מדיניות ה-ACL
הסרת הכלל הזה תבטל את ההרשאות המשויכות לו עבור lucian. כדי לגשת למופע, lucian צריך להתחבר כמשתמש default, והוא כפוף להרשאות של המשתמש הזה.
הסרת מדיניות ACL ממופע
אם מדיניות ACL כבר לא חלה על מופע של Memorystore for Valkey, אפשר להסיר אותה. אפשר להסיר מדיניות באמצעותGoogle Cloud המסוף או ה-CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
לוחצים על המזהה של המכונה שממנה רוצים להסיר מדיניות ACL.
בדף Instance at a glance (סקירה מהירה של המופע), גוללים לכרטיס Security (אבטחה).
לצד השדה ACL policy (מדיניות ACL), לוחצים על Edit (עריכה) (edit).
בחלון Edit ACL policy, מבצעים את הפעולות הבאות:
בתפריט מדיניות, בוחרים באפשרות ללא מדיניות.
לוחצים על Update instance.
gcloud
כדי להסיר מדיניות ACL ממכונה, משתמשים בפקודה gcloud memorystore instances update.
gcloud memorystore instances update INSTANCE_ID \ --clear-acl-policy \ --location=REGION
מחליפים את הפרטים הבאים:
- INSTANCE_ID: המזהה של המכונה שממנה מסירים את מדיניות ה-ACL
- REGION: האזור שבו נמצאת המכונה
מחיקת מדיניות ACL
אם אתם לא צריכים יותר מדיניות ACL, אתם יכולים למחוק אותה. אפשר למחוק מדיניות באמצעות Google Cloud מסוף Google Cloud או CLI של gcloud.
המסוף
נכנסים לדף Memorystore for Valkey במסוף Google Cloud .
בחלונית הניווט הצדדית, לוחצים על ACL policies (מדיניות ACL).
לצד מדיניות ה-ACL שרוצים למחוק, לוחצים על סמל האפשרויות הנוספות (more_vert) ואז בוחרים באפשרות מחיקה.
אם האפשרות מחיקה בתפריט מושבתת, המדיניות מוקצית למופעים. כדי למחוק את המדיניות, צריך להסיר אותה מכל מופע.
בחלון Delete policy (מדיניות מחיקה), מבצעים את הפעולות הבאות:
בשדה הטקסט, מזינים את שם המדיניות.
לוחצים על מחיקה.
gcloud
כדי למחוק מדיניות ACL, משתמשים בפקודה gcloud memorystore acl-policies delete.
gcloud memorystore acl-policies delete ACL_POLICY_NAME \ --location=REGION
מחליפים את הפרטים הבאים:
- ACL_POLICY_NAME: השם של מדיניות ה-ACL שרוצים למחוק
- REGION: האזור שבו נמצאת מדיניות ה-ACL
השבתת סקריפטים של Lua
אפשר להשתמש במדיניות ACL כדי לנהל את יכולות התסריט של Lua עבור המופעים. השבתה או הגבלה של סקריפטים ב-Lua יכולות להיות שימושיות לשיפור הביצועים, לפשט את הפונקציונליות של המופעים או לפעול בהתאם להנחיות האבטחה של הארגון.
השבתת פקודות סקריפט למשתמשים
כדי להשבית סקריפטים של Lua כך שהמשתמשים לא יוכלו להריץ אותם, צריך להשתמש במדיניות ACL ולהסיר את ההרשאות לפקודות הסקריפט ממחרוזת כלל ה-ACL של המשתמש.
ב-Valkey, הפקודות מחולקות לקבוצות. כתיבת סקריפטים ב-Lua שייכת לקטגוריה @scripting. הפקודות העיקריות שצריך להסיר מהן את הרשאות המשתמש הן:
-
EVAL: הפעלת סקריפט Lua שסופק כמחרוזת -
EVALSHA: הרצת סקריפט Lua שנשמר במטמון באמצעות הפקודהSCRIPT LOAD
SCRIPT: ניהול של מטמון הסקריפטים (לדוגמה,LOAD,FLUSH,EXISTSו-KILL)הפקודה
SCRIPTכוללת את פקודות המשנה הבאות:
אתם יכולים להשבית את כל פקודות הסקריפטים או פקודה ספציפית למשתמשים.
כדי להשבית פקודות של סקריפטים, משתמשים ב-CLI של gcloud ומוסיפים סימן מינוס (-) לפני הפקודה או הקטגוריה.
השבתה של כל פקודות הסקריפטים למשתמש
כדי להשבית את כל פקודות הסקריפטים עבור משתמש, צריך ליצור מדיניות ACL ולהקצות אותה למופע, או לשנות מדיניות ACL שמוקצית למופע.
הוספה של כלל מדיניות
כדי ליצור מדיניות ACL להשבתת כל פקודות הסקריפטים עבור משתמש בשם lucian, משתמשים בפקודה gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=lucian
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו רוצים שהמדיניות של ה-ACL תמוקם
אחרי שיוצרים את המדיניות, צריך להקצות אותה למופע חדש או קיים.
שינוי מדיניות
כדי לשנות מדיניות ACL ולהשבית את כל פקודות הסקריפטים עבור lucian, משתמשים בפקודה gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=lucian
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו נמצאת מדיניות ה-ACL
אם רוצים להעניק רק הרשאות ספציפיות שמשתמש צריך, צריך לשנות את הערך של +@all. לדוגמה, אם רוצים שהמשתמש יוכל לגשת רק לפקודות לקריאה בלבד, צריך לשנות את +@all ל-+@read. מידע נוסף על הרשאות המשתמשים שאפשר להגדיר זמין במסמכי התיעוד של Valkey ACL.
השבתה של פקודת סקריפט למשתמש
אתם יכולים להגדיר פקודות ספציפיות שיושבתו עבור משתמש. לדוגמה, אתם יכולים לאפשר למשתמש להריץ את כל פקודות הסקריפטים חוץ מהפקודה SCRIPT FLUSH. כדי להשבית פקודת סקריפט עבור משתמש, צריך ליצור מדיניות ACL ולהקצות אותה למופע, או לשנות מדיניות ACL שמוקצית למופע.
אפשר להשבית כל פקודה של סקריפט. בדוגמאות שבקטע הזה, משביתים את הפקודה SCRIPT FLUSH עבור המשתמש. רשימת פקודות הסקריפטים מופיעה במאמר השבתת פקודות סקריפטים למשתמשים.
הוספה של כלל מדיניות
כדי ליצור מדיניות ACL להשבתת פקודת הסקריפטים SCRIPT FLUSH עבור lucian, משתמשים בפקודה gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* -script|flush",username=lucian
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו רוצים שהמדיניות של ה-ACL תמוקם
אחרי שיוצרים את המדיניות, צריך להקצות אותה למופע חדש או קיים.
שינוי מדיניות
כדי לשנות מדיניות ACL ולהשבית את כל פקודות הסקריפטים עבור lucian, משתמשים בפקודה gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* -script|flush",username=lucian
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו נמצאת מדיניות ה-ACL
אם רוצים להעניק רק הרשאות ספציפיות שמשתמש צריך, צריך לשנות את הערך של +@all. לדוגמה, אם רוצים שהמשתמש יוכל לגשת רק לפקודות לקריאה בלבד, צריך לשנות את +@all ל-+@read. מידע נוסף על הרשאות המשתמשים שאפשר להגדיר זמין במסמכי התיעוד של Valkey ACL.
אבטחת משתמש ברירת המחדל
כדי להשבית את הרשאות הסקריפטים למשתמש העל default, צריך ליצור מדיניות ACL ולהקצות אותה למופע, או לשנות מדיניות ACL שמוקצית למופע.
הוספה של כלל מדיניות
כדי ליצור מדיניות ACL להשבתת כל פקודות הסקריפטים עבור המשתמש default, משתמשים בפקודה gcloud memorystore acl-policies create.
gcloud memorystore acl-policies create POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=default
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו רוצים שהמדיניות של ה-ACL תמוקם
אחרי שיוצרים את המדיניות, צריך להקצות אותה למופע חדש או קיים.
שינוי מדיניות
כדי לשנות מדיניות ACL ולהשבית את כל פקודות הסקריפטים עבור המשתמש default, משתמשים בפקודה gcloud memorystore acl-policies update.
gcloud memorystore acl-policies update POLICY_NAME \ --location=REGION \ --rules=rule="on ~* +@all -@scripting",username=default
מחליפים את הפרטים הבאים:
- POLICY_NAME: השם של מדיניות ה-ACL
- REGION: האזור שבו נמצאת מדיניות ה-ACL
אם רוצים להעניק רק הרשאות ספציפיות שהמשתמש default צריך, משנים את הערך +@all. לדוגמה, אם רוצים שהמשתמש הזה יוכל לגשת רק לפקודות לקריאה בלבד, צריך לשנות את +@all ל-+@read. מידע נוסף על הרשאות המשתמשים שאפשר להגדיר זמין במסמכי ה-ACL של Valkey.
פתרון בעיות
בקטע הזה מפורטות הודעות שגיאה שאולי תקבלו כשמשתמשים במדיניות ACL, הסיבות להודעות האלה וטיפים לפתרון בעיות שקשורות להודעות.
| הודעת השגיאה | מטרה | פתרון בעיות |
|---|---|---|
username cannot be empty |
הגדרתם מחרוזת ריקה או מחרוזת שמכילה רק רווחים לבנים לשם משתמש במדיניות ACL. | צריך להשתמש בשם משתמש שכולל תווים אלפאנומריים או תווים מיוחדים. לאחר מכן, יוצרים שוב את מדיניות ACL. |
duplicate username found in ACL policy |
יש לכם שמות משתמשים כפולים במדיניות ACL. | משתמשים ביומני השגיאות כדי למצוא את שם המשתמש הכפול. משנים את בקשת יצירת מדיניות ה-ACL כדי לציין בדיוק כלל אחד לשם המשתמש. לאחר מכן, יוצרים מחדש את מדיניות ה-ACL. |
ACL rule token cannot contain token. use either
IAM or Basic Auth features to enable authentication
|
אי אפשר להשתמש בתווים של סיסמאות (לדוגמה, <,
>, # ו-!) או בפקודות שקשורות לסיסמאות (לדוגמה, nopass, resetpass ו-reset) במדיניות של ACL. |
מסירים את כל התווים של הסיסמה ואת הפקודות שקשורות אליה מהכללים של מדיניות ACL. לאחר מכן, יוצרים מחדש את מדיניות ה-ACL. כדי להגדיר אימות, מפעילים אימות בסיסי או אימות מבוסס-IAM. |
passwords not allowed in ACL rules (token starts with
char). use either IAM or Basic Auth features to
enable authentication |
אי אפשר להשתמש בתווים של סיסמאות (לדוגמה, <,
>, # ו-!) או בפקודות שקשורות לסיסמאות (לדוגמה, nopass, resetpass ו-reset) במדיניות של ACL. |
מסירים את כל התווים של הסיסמה ואת הפקודות שקשורות אליה מהכללים של מדיניות ACL. לאחר מכן, יוצרים מחדש את מדיניות ה-ACL. כדי להגדיר אימות, מפעילים אימות בסיסי או אימות מבוסס-IAM. |
invalid ACL rule syntax |
לא הגדרת נכון את המחרוזת של הגישה באחד או יותר מהכללים של מדיניות ACL. | הפורמט של מחרוזת הגישה צריך להיות תקין. |
ACL policy is in DELETING state and cannot be used |
אתם מנסים להקצות מדיניות ACL למופע, אבל הסטטוס של המדיניות הוא DELETING. |
מקצים למכונה מדיניות ACL אחרת. |
ACL_POLICY_IN_USE: ACL policy is in use by 1 or more instances
|
מנסים למחוק מדיניות ACL שהוקצתה לפחות למופע אחד. | כדי למחוק מדיניות ACL, צריך קודם להסיר אותה מכל המופעים שהיא משויכת אליהם. כדי לראות לאילו מקרים מוקצית מדיניות, אפשר לעיין במאמר הצגת מידע על מדיניות ACL. |
fast-failing the workflow as the resource is in DELETING
state |
אתם מנסים לשנות מדיניות ACL עם סטטוס DELETING. |
אם למדיניות ACL יש סטטוס DELETING, אי אפשר לשנות את המדיניות. |