אימפריה הווריאנטים הניהול ב-AWS יכולה להיות אתגר לשימוש והבנה, במיוחד למשתמשים חדשים. אל תדאג! אם תתמודד עם הבנת כיצד IAM עובדת בניהול ההרשאות של המשתמשים ב-AWS, הגעת למקום הנכון להבין מה אפשר לעשות עם IAM.
במדריך זה, תלמד את המושגים הבסיסיים של IAM על ידי הליכודך דרך סדרה של דוגמאות הבנויות זו על גבי זו.
מוכן? נשטוף נשימה עמוקה ונקפוץ!
דרישות מוקדמות
מדובר בהדגמה שתוכננה להיות מעשית. אם ברצונך להשתמש במדריך, וודא שיש לך מחשב וחשבון AWS. אם אין לך חשבון AWS, קיים חשבון טייר חינמי.
יצירת משתמשים ב-IAM ב-AWS
לפני שנתחיל להבין כיצד IAM עובדת, נתחיל במדריך זה על ידי יצירת משתמשים. משתמשים יכולים לשמש למטרות מגוונות. אך למען הדוגמה, ניצור משתמשים שאין להם הרשאות, לא שייכים לקבוצות ואין להם גישה לכלום.
1. התחבר ל-מסוף AWS. בדוגמה זו יש שימוש בשם משתמש הנקרא cloud_user, אך שם המשתמש שלך יהיה שונה.

שלב 2. במסוף AWS, הקלד IAM בתיבת החיפוש, ולאחר מכן ללחוץ על שירות IAM המופיע, כפי שמוצג למטה. הדפדפן שלך יופנה ללוח המחוונים של IAM.

IAM הוא שירות גלובלי, המציין כי הרשאות המשתמשים וההרשאות שלהם נחילות על כל חשבון/אזור AWS שלך. אם מספר רב של אנשים חולקים חשבון AWS אחד (שזה דבר נפוץ מאוד, לדוגמה במקרה של צוות פיתוח ברמה רחבה בחברה), עליך לוודא סיבולת תקופת עבודה תקנית של IAM.
בנוסף, תוכל ליצור מופע EC בתוך אזור us-east. המופעים הם אזוריים. אולם, בקרת זהות וגישה ל-AWS אינה נמצאת באזורים. ההרשאות שמוקצות למשתמש יחולו בלתי תלויים באזור שבו המשתמשים מתחברים למופע EC.

שלב 4. בלוח המחוונים של IAM, לחץ על Users בלוח הצד השמאלי, ולאחר מכן ללחוץ על Add users בחלקו העליון-ימני של העמוד כדי להתחיל בהוספת משתמשים.

כעת הגדר את פרטי המשתמש עם ההגדרות הבאות:
- ספק שם משתמש בשדה User name המוצג למטה. לדוגמה, שם המשתמש מוגדר להיות user-1.
- הפעל את האפשרות Password – גישה למקודש הניהול של AWS כדי לאפשר למשתמשים להיכנס למקודש הניהול של AWS.
- בחר באפשרות Custom password לגבי Console password, וספק סיסמה מאובטחת בתחום הטקסט.
- הסר את הסימון מהאפשרות Require password reset כדי שהמשתמש לא יתבקש ליצור סיסמה חדשה בכניסה הבאה, ולאחר מכן ללחוץ על Next: Permission.

5. דלג על הגדרת ההרשאות ולחץ על הבא: תגיות מאחר ואתה יוצר משתמש שאין לו הרשאות.

6. דלג גם על הוספת תגיות ולחץ על הבא: ביקורת.

7. בדוק את פרטי המשתמש ולחץ על צור משתמש כדי לסיים את תהליך היצירה של המשתמש.

לאחר יצירת המשתמש, תקבל מסך הצלחה דומה למסך שמוצג למטה.

8. עכשיו חזור לעמוד משתמשים בלוח הבקרה של IAM שלך, ולחץ על המשתמש שנוצר לאחרונה (user-1) כדי להציג את פרטי המשתמש. פתיחת המשתמש שלך-1

למטה, תחת הכרטיסיות ההרשאות ו-הקבוצות, תוכל לראות ש-user-1 אינו מקושר לשום הרשאה, והוא לא חבר בשום קבוצה.


בכרטיסייה האישורים האבטחתיים, תראה מפתחות גישה שונים שיכולים להיות ל-user-1. ניתן להעלות מפתח ציבור של SSH בכרטיסייה זו, שמאוד מועיל למקרים של הופעת AWS EC2 שלך.

בכרטיסייה Access Advisor ניתן לראות את השירותים שה-user-1 גיש אליהם, באופן ישיר או דרך שירותים אחרים, יחד עם הזמן שבו user-1 גיש לשירות ההוא לאחרונה.

9. לבסוף, חזור על התהליך (שלבים שלוש עד שבע) כדי ליצור עוד שני משתמשים (user-2 ו-user-3). חזור לעמוד משתמשים בלוח הבקרה של IAM שלך ותראה רשימה דומה לזו שמוצגת למטה.

יצירת קבוצות המשתמשים
עכשיו שיצרת את המשתמשים, תורם ליצור קבוצות. תיצור קבוצות באמצעות המדיניות הניהול של AWS וקובץ JSON.
לצורך הדרכה זו, תיצור שלוש קבוצות:
- EC2-Admin: מעניקה הרשאות לצפות, להתחיל ולעצור את מקרות ה-EC2
- EC2-Support: מעניקה גישה לקריאה בלבד ל-EC2
- S3-Support: מעניקה גישה לקריאה בלבד ל-S3
כדי להתחיל ביצירת קבוצות משתמשים:
1. בלוח הבקרה של IAM שלך, לחץ על קבוצות משתמשים בפאנל השמאלי ואז לחץ על צור קבוצה.
2. ספק שם קבוצת משתמש (EC2-Admin) בדף צור קבוצת משתמש, כפי שמופיע למטה.

השאר את ההרשאות התקניות ולחץ על צור קבוצה כדי לסיים את יצירת קבוצת EC2-Admin.

לאחר שיצרת את הקבוצה החדשה, תקבל את הודעת נוצרה קבוצת משתמש EC2-Admin בחלק העליון של הדף, כפי שמופיע למטה. הדפדפן שלך מפנה לדף קבוצות משתמשים באופן אוטומטי (שלב שלוש).

3. לחץ על הקבוצה EC2-Admin תחת עמודת שם הקבוצה כדי לצפות בסיכום המידע על הקבוצה ולהוסיף מדיניות פנימית (שלב ארבע).

4. עכשיו לחץ על הכרטיסייה הרשאות -> הוסף הרשאות -> צור מדיניות פנימית כדי ליצור מדיניות פנימית. מדיניות פנימית נהוג לקשר עם משתמשים ישירות ונהוג להשתמש בהם במקרים חד פעמיים.
הדוגמה שלך: הצוות שלך מעביר סביבת EC2 ישנה לסביבה חדשה. ברצונך לוודא שלמנהל של המקרר הישן יש גישה להתחלה/עצירה ולהעתיק את הגדרות קבוצת האבטחה למקרר החדש.

5. בעמוד צור מדיניות, לחץ על הלשונית JSON המוצגת למטה כדי לפתוח עורך JSON שבו תיצור מדיניות.

6. הדבק את הקוד (מדיניות) למטה בשדה העורך ולחץ על ביקורת מדיניות כדי ליצור מדיניות מוטבעת. מדובר במדיניות מוטבעת שכבר יוצרו על ידי AWS או מנהל בתוך חשבון ה-AWS שלך שאתה יכול להשתמש בה, להתאים או לערוך כדי להתאים לצרכים שלך בדיוק.
עם מדיניות זו, חברי קבוצת EC2-Admin מורשים להתחיל ("ec2:StartInstances"
), לעצור ("ec2:StopInstances"
) ולצפות ("ec2:Describe*"
) במקררי EC2. הם מורשים (”Effect”: “Allow”
) לבצע פעולות על כל המשאבים ("Resource": "*"
). פעולות אלו מקושרות לקריאות פונקציונליות או API של AWS בעצם.
חברי קבוצת EC2-Admin גם מורשים לראות את כל המאזני עומס גמישים (Action": "elasticloadbalancing:Describe
), לרשומת מטריקולים (cloudwatch:ListMetrics
), לקבלת סטטיסטיקות מטריקולים cloudwatch:GetMetricStatistics
, ולתאר מטריקולים (cloudwatch:Describe
).
מטריקולים של CloudWatch מוגדרים אוטומטית עם המקרר EC2 שלך, ואותו דבר חל גם על שירות ההתגלגלות אוטומטית.

7. בקר בסקירת המדיניות ולחץ על שמור שינויים כדי לשמור את המדיניות.

8. כעת, נווטו שוב אל לוח המחוונים שלכם ל- IAM ואתחלו את יצירת הקבוצה כפי שעשיתם בשלב שני. אך הפעם, שנו את שם הקבוצה המשתמש שם קבוצת משתמש ל- EC2-Support.
גללו למטה, חפשו AmazonEC2ReadOnlyAccess בתיבת החיפוש לרשיות ההרשאות המצורפות כדי לצרף את המדיניות הזו לקבוצה (EC2-Support):
AmazonEC2ReadOnlyAccess היא מדיניות ניהולית דומה למדיניות מוטבעת מכיוון שיכולה גם היא להיצרף למשתמשים מרובים או לקבוצות של משתמשים. אך לעומת מדיניות מוטבעת, סוג זה של מדיניות שנוצרת על ידי מנהלי מערכת היא ניתנת לשימוש חוזר וניתן לשתף אותה בכל הארגון או עם כל החשבונות של AWS בחשבונך.
A managed policy is a shared policy. As a result, all users or groups of users who use the shared policy will have updated permissions automatically when the policy is updated.
תכונת העדכון האוטומטי הזו הופכת את המדיניות הניהוליות למדיניות יותר מפתיעות מהמדיניות המוטבעות. עם מדיניות מוטבעות, כל הרשאה צריכה להיות מעודכנת על ידי המנהל אם המדיניות משתנה.
סמנו את האפשרות AmazonEC2ReadOnlyAccess ולחצו על צור קבוצה כדי לסיים את יצירת הקבוצה.

10. כעת, חזרו על השלבים שמספרם שמונה עד תשעה כדי ליצור את קבוצת ה- S3-Support עם מדיניות ניהולית של AmazonS3ReadOnlyAccess. לאחר שיצרתם את קבוצת ה- S3-Support, יהיה לכם רשימת קבוצות דומה לזו שמציגה את הרשאות המוגדרות לכל קבוצה.

הוספת משתמשים לקבוצותיהם המתאימות
יצרתם את המשתמשים והקבוצות עם הרשאות מוגדרות. עכשיו, זה הזמן להוסיף את המשתמשים לקבוצותיהם המתאימות. תפתחו את דף הסיכום של כל קבוצה ותוסיפו באופן ידני משתמש לקבוצה ההיא.
הטבלה למטה מציגה את הקבוצות המתאימות שבהן תוסיפו כל משתמש:
Users | In-group | Permissions |
---|---|---|
user-1 | S3-Support | Read-only access to S3 Bucket |
user-2 | EC2-Support | Read-only access to EC2 Instance |
user-3 | EC2-Admin | Full EC2 Access (View/Start/Stop) |
1. בלוח המחוונים שלך לניהול זיהוי וגישה (IAM), עבור לעמוד קבוצות משתמשים ולחץ על קבוצת ה-S3-Support המוצגת למטה כדי לגשת לעמוד הסיכום של הקבוצה.

2. לאחר מכן, לחץ על כרטיסיית המשתמשים (משתמשים) -> הוסף משתמשים כדי להתחיל בהוספת משתמשים לקבוצה. הדפדפן שלך מפנה אותך לעמוד שבו תראה רשימת משתמשים שעדיין לא שייכים לאף קבוצה עדיין (שלב שלוש).

3. סמן את התיבה מול משתמש-1, ולאחר מכן לחץ על הוסף משתמשים כדי להוסיף את המשתמש לקבוצת ה-S3-Support. הדפדפן שלך מפנה אוטומטית אל עמוד סיכום הקבוצה S3-Support.

למטה, תוכל לראות כי משתמש-1 כעת חלק מקבוצת ה-S3-Support.

4. חזור על השלבים מ-1 עד 3 כדי להוסיף את משתמש-2 ומשתמש-3 לקבוצותיהם המתאימות.
5. לבסוף, נווט לעמוד קבוצות המשתמשים ותראה שהקבוצות כעת יש לכל אחת משתמש אחד, כפי שמוצג בתמונת המסך למטה.

בדיקת הרשאות המשתמש פועלות בצורה תקינה
יצרת משתמשים לחלוטין בקבוצותיהם עם הרשאות מוגדרות. אך איך תדע אם הכל עובד כמצופה? זה הזמן לוודא כי הרשאות פועלות כמצופה, וישנן דרכים שונות לעשות זאת. אחת מהדרכים הנפוצות ביותר היא באמצעות ממשק ניהול AWS המבוסס רשת.
1. נווט ללוח המחוונים שלך לניהול זיהוי וגישה והעתק את כתובת ה-URL להתחברות משתמשי IAM בפאנל הימני, כפי שמוצג למטה.

2. בדפדפן האינטרנט שלך, נווט לכתובת ה-URL להתחברות שרשמת קודם (שלב 1) והתחבר עם פרטי הכניסה של משתמש-1. גוגל כרום ופיירפוקס הם הדפדפנים המומלצים ביותר למשימה זו.

3. הקלד S3 בתיבת החיפוש, ולחץ על הקישור S3 המוצג למטה כדי לגשת לדף ה-Amazon S3 Buckets.

4. כעת, לחץ על צור bucket כדי להתחיל ביצירת bucket של S3 .bucket

5. הזן שם ל- bucket בחלק ה-תצורה כללית, ולחץ על צור bucket כדי לנסות ליצור bucket של S3.


אם אתה זוכר, קישרת את המדיניות AmazonS3ReadOnlyAccess למשתמש-1, שמעניקה למשתמש-1 הרשאה רק לקרוא לקרוא את ה- S3 buckets. כתוצאה, אם משתמש-1 מנסה ליצור, למחוק או לעדכן bucket של S3, הודעת השגיאה המוצגת למטה תופיע.
הודעת השגיאה למטה מציינת כי ההרשאה שהגדרת למשתמש-1 עובדת כהלכה.

שים לב כי למשתמש-1 גם אין אף הרשאות EC2. כך שלמקסם בדיקות, נווט ללוח המחוונים של EC2 שלך, ותקבל הרבה שגיאות API שיופיעו כמו בתמונת המסך למטה.
שגיאות אלו מתרחשות עקב אחרי עקרון ההרשאה המינימלית (PoLP). PoLP הוא המושג שכל חשבון משתמש או תהליך במערכת ההפעלה צריכים לקבל את ההרשאות המינימליות הדרושות בלבד להשלמת המשימה.

6. כעת, התנתק מהמשתמש-1 והתחבר כמשתמש-2, ונווט ללוח המחוונים של ה-EC2 שלך.

7. לחץ על כל אחת מהמקרים הרצים של EC2 כדי להציג את ההרשאות של משתמש-2. כפי שמוצג למטה, תקבל מידע על המקרה כמו מזהה המקרה, כתובת IPv4 הציבורית, וכו '.

8. לחץ על מצב המקרה בצד ימין של הדף ובחר באפשרות לעצור מקרה, לאתחל מקרה או לסיים את האפשרות כדי לבדוק אם ההרשאה של משתמש-2 עובדת.

שים לב שלמשתמש-2 יש גישה רק לקריאה למקרי EC2 (AmazonEC2ReadOnlyAccess). אז אם משתמש מנסה לנהל מקרה EC2, מופיעה הודעת שגיאה כמו בתמונה למטה.
לקבלת השגיאה למטה מעידה על כך שההרשאה של משתמש-2 עובדת נכון.

9. לבסוף, התנתק ממשתמש-2, ואז התחבר כמשתמש-3 ונסה לנהל מקרי EC2 שרצים בחשבונך. מאחר שלמשתמש-3 יש הרשאות מלאות ל-EC2, אתה יכול להתחיל, לעצור או לסיים את המקרה בלעדייך לקבלת הודעת שגיאה.
סיכום
במהלך המדריך הזה, למדת כיצד ליצור משתמשי IAM וקבוצות משתמשים עם מדיניות מוגדרת. גם נגעת באופן כיצד לוודא אם הרשאות פועלות כפי שמתוכנן על ידי ניסיון לשנות את מצב המופע EC2 וניסיון ליצור דלי S3.
בנקודה זו, יש לך כבר את ההגדרה הבסיסית למשתמשי IAM ולקבוצות כדי לנהל את הרשאות המשתמשים. בכל זאת, תמיד ניתן להוסיף משתמשים נוספים לחשבון שלך ולהחיל מדיניות נוספות כפי שתראה לך כראוי.
עכשיו, מהו השלב הבא לבנות על הידע החדש שרכשת? אולי לחקור את הגדרת שירותי EC2 שלך על מנת לעבוד עם IAM?