צור טוקנים של שירות משותף של Azure באמצעות PowerShell ופורטל

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

שימוש נפוץ בטוקן SAS הוא לאבטחת חשבונות אחסון של Azure דרך SAS של חשבון.

במאמר זה, אתה תלמד איך ליצור טוקן SAS של Azure גם דרך פורטל Azure וגם דרך PowerShell. כאשר תסיים, תסתיים עם טוקן SAS שתוכל להעביר לפקודות לקוח שונות כדי לאמת ולאשר ניהול אחסון של Azure.

דרישות מקדימות

תלמד לך בפועל כיצד לבצע מספר משימות שונות במאמר זה. אם ברצונך לעקוב, הקפד לוודא שיש לך את הדרישות הבאות.

  • מנוי Azure. אם אין לך זאת עדיין, תוכל לבקש מנוי ניסיון.
  • חשבון אחסון Azure. יש להפנות ל-יצירת חשבון אחסון למידע נוסף.
  • המודול Az PowerShell (אופציונלי). זה דרוש רק אם תצטרך ליצור טוקנים של חתימת גישה משותפת באמצעות PowerShell
  • Windows PowerShell 5.1 או PowerShell Core 6+ אם תייצר טוקן SAS דרך PowerShell

ייצור טוקן SAS באמצעות פורטל Azure

הדרך הכי ישירה ליצירת טוקן SAS היא באמצעות פורטל Azure. על ידי השימוש בפורטל Azure, ניתן לנווט באפשרויות השונות באופן גרפי.

כדי ליצור טוקן דרך פורטל Azure, תנו קודם כל בפורטל אחסון שברצונכם לגשת אליו בתוך חלק ההגדרות Settings ולאחר מכן ללחוץ על Shared access signature. תוכלו לראות דוגמה לכיצד זה יכול להיראות למטה.

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

השאר את כל התיבות ברירת המחדל ולחץ על הכפתור Generate SAS and connection string כפי שמוצג למטה.

Generating SAS Token from the Azure Portal

כאשר הטוקן מיוצר, תראה אותו מופיע בתיבות מתחת לכפתור Generate SAS and connection string כפי שמוצג למטה.

Copying the generated SAS token

בנקודה זו, תוכל להעתיק את ערך הטוקן SAS ולהדביק אותו במקום בו תרצה להשתמש בו.

ייצור טוקן SAS באמצעות PowerShell

כדי למנוע ממך להיכנס לפורטל של Azure או, אולי, אם אתה יוצר טוקנים SAS עבור מספר חשבונות אחסון בו זמנית, אתה יכול להשתמש ב-PowerShell. PowerShell משתמש ב-REST API של Azure כדי לבצע קריאות ל-Azure וליצור את הטוקן.

כדי ליצור טוקן SAS דרך PowerShell, תפתח חלון קונסול PowerShell ותאמת את עצמך עם Connect-AzAccount. לאחר האימות, תמצא את חשבון האחסון שברצונך לגשת אליו. למטה תראה דוגמה לשאילתת חשבון אחסון בשם demo_account בקבוצת משאבים בשם demo_rg. באמצעות ערך ה-$context, תעביר את זה לפקודת היצירת הטוקן.

$context = (Get-AzStorageAccount -ResourceGroupName 'demo_rg' -AccountName 'demo_account').context

כאשר נמצא ההקשר של חשבון האחסון, יש ליצור טוקן SAS באמצעות הפקודה New-AzStorageAccountSASToken. הדוגמה למטה מראה יצירת טוקן SAS שנותן אישור מלא לחשבון האחסון ולכל רכיביו המשנים.

New-AzStorageAccountSASToken -Context $context -Service Blob,File,Table,Queue -ResourceType Service,Container,Object -Permission racwdlup

כאשר יוצרים טוקנים SAS דרך New-AzStorageAccountSASToken, הטוקן יהיה תקף לשעה אחת. אם תרצה להאריך את הזמן הזה, תוכל להשתמש בפרמטר ExpiryTime.

הגבלת ההרשאות של טוקן SAS

אחת מהסיבות להשתמש בטוקן SAS היא לתת גישה לצדדים אחרים לזמן מוגבל וקבוצת הרשאות. הדוגמה הקודמת יצרה טוקן SAS עם הרשאות גישה מלאות. לא תמיד הפקר לתת גישה מלאה.

הפרמטר Service מגדיר גישה לשירות או שירותים. לדוגמה, השתמש ב־blob כדי לאפשר גישה רק לשירות אחסון Azure Blob. שירותים אחרים כוללים קובץ, טבלה, ו־תור.

הפרמטר ResourceType מגביל גישה לסוגי משאבים מסוימים. בשימוש בערך container, לדוגמה, מאפשר גישה רק למשאבי תוכן. סוגי משאבים חוקיים אחרים הם שירות ו־אובייקט.

הפרמטר Permission מאפשר לך להגדיר הרשאות מותרות. ציין רשאה אחת או יותר לפי הצורך. הערך rwd שווה להענקת הרשאות קריאה, כתיבה, ו־מחיקה. ערכי ההרשאה החוקיים האחרים הם (l)ist, (a)dd, (u)pdate, ו־(p)rocess.

שימוש באסימון SAS

ישנם רבים דרכים להשתמש באסימון SAS שנוצר. אחת מהדרכים הנפוצות ביותר היא להשתמש בו בהקשר אחסון. הקשר אחסון הוא אופן שבו ניתן "לארוז" את האישורים ולאזן אותם לשימוש בפקודות שונות.

A common way to use the SAS token is via PowerShell. Using the New-AzStorageContext command that’s part of the Az PowerShell module. You can see an example below using the SAS token to upload a file to an existing storage container.

$StorageAccountName = 'foo'
 $ContainerName = 'bar'
 Create a storage context
 $sasToken = ''
 $StorageContext = New-AzStorageContext $StorageAccountName -SasToken $sasToken
 Upload a file
 $storageContainer = Get-AzStorageContainer -Name $ContainerName -Context $StorageContext
 $storageContainer | Set-AzStorageBlobContent –File 'C:\file.txt' –Blob 'file.txt'

תקציר

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

Source:
https://adamtheautomator.com/azure-sas-token/