כיצד לאפס סיסמת משתמש ב- Azure Active Directory (Microsoft 365)


אם משתמש Azure Active Directory שוכח את הסיסמה שלו, מנהל דיירים של Azure (Microsoft 365) יכול לאפס אותה בכמה דרכים: באמצעות פורטל Azure, באמצעות PowerShell או על-ידי הפעלת התכונה איפוס סיסמה בשירות עצמי (SSPR).

כדי לאפס סיסמת משתמש, החשבון שלך חייב לכלול אחד מ- Azure המוכלל הבא: מנהל משתמש או מנהל סיסמה.

איפוס סיסמת משתמש בפורטל Azure

הדרך הקלה ביותר לאפס סיסמת משתמש ב- Azure היא להשתמש בממשק האינטרנט של פורטל Azure (או במרכז הניהול של Microsoft 365):

  1. היכנס אל https://portal.azure.com/ ועבור אל Azure Active Directory -> משתמשים;

  2. בחר משתמש ולחץ על איפוס סיסמה;

  3. תקבל הודעה כי סיסמה זמנית תוקצה למשתמש:

    The user 'Lina@a-d.onmicrosoft.com' will be assigned a temporary password that must be changed on the next sign in. To display the temporary password, click 'Reset password'.

    לחץ על איפוס סיסמה.

  4. Azure ייצור סיסמה זמנית חדשה עבור המשתמש ויציג אותה על המסך;

  5. ספר למשתמש את הסיסמה החדשה, ובפעם הבאה שהוא ייכנס לאפליקציה כלשהי של Microsoft 365 באמצעות 'אימות מודרני', הוא יתבקש לשנות את הסיסמה;

    Your need to update your password because this is the first rime you are signing in, or because your password has expired.

  6. באפשרותך לוודא שהמשתמש ביצע אימות בהצלחה באמצעות יומני הכניסה של Azure.

הנה כמה דברים שחשוב לזכור:

  • תוקפה של סיסמה זמנית אינו פג לעולם.

  • אם Active Directory המקומי שלך מסונכרן עם Azure באמצעות Azure AD Connector, התכונה מחיקת סיסמה חייבת להיות זמינה בהגדרות מחבר כדי לאפס את סיסמת המשתמש מוסיף מהענן.

באפשרותך להפוך איפוס סיסמה בשירות עצמי (SSPR) לזמין בדייר Azure שלך. באפשרותך להפוך SSPR לזמין עבור קבוצת משתמשים או כל משתמשי AAD ב- Azure Active Directory -> איפוס סיסמה -> מאפיינים.

כדי לאפס את הסיסמאות שלהם, משתמשים יכולים להשתמש בשיטות אימות מותרות. בנוסף לשיטות MFA סטנדרטיות, הם יכולים להשתמש בשאלות אבטחה ובשיחות טלפון משרדיות. באפשרותך להשתמש בשיטת אימות אחת או שתיים.

איפוס סיסמת משתמש של Azure AD באמצעות PowerShell

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

באפשרותך גם להגדיר סיסמת משתמש חדשה באופן ידני דרך מרכז הניהול של Microsoft 365.

באפשרותך להשתמש במודול Azure AD כדי לאפס סיסמת משתמש. התחבר לדייר Azure שלך:

Connect-AzureAD

הגדר סיסמה חדשה והמר אותה ל- SecureString (עיין במאמר כיצד להשתמש בסיסמאות בקבצי script של PowerShell):

$newPass = ConvertTo-SecureString 'Str0ngNewPa$$1' -AsPlainText -Force

באפשרותך להשתמש ב- PowerShell כדי ליצור סיסמה אקראית חזקה:

Add-Type -AssemblyName System.Web
$genpass=[System.Web.Security.Membership]::GeneratePassword(9,2)
$newPass = ConvertTo-SecureString $genpass -AsPlainText -Force

קבל את מזהה האובייקט של המשתמש שעבורו ברצונך לשנות את הסיסמה באמצעות UserPrincipalName שלו:

$userObjectId=(Get-AzureADUser -filter "userPrincipalName eq 'Lina@a-d.onmicrosoft.com'").ObjectID

החל את הסיסמה החדשה על משתמש Azure באמצעות ObjectID:

Set-AzureADUserPassword -ObjectId $userObjectId -Password $newPass

אם ברצונך שמשתמש ישנה את הסיסמה בכניסה הבאה, הוסף את

-ForceChangePasswordNextLogin $true

אפשרות.

לא תוכל להציג את התאריך והשעה שבהם המשתמש שינה את הסיסמה באמצעות מודול Azure AD PowerShell. באפשרותך לקבל מידע זה באמצעות Microsoft Graph API או מודול MSOnline מדור קודם.

אם במחשב שלך מותקן מודול MSOnline PowerShell, התחבר לדייר שלך:

Connect-MsolService

הצג את הערך LastPasswordChangeTimeStamp:

Get-MsolUser -UserPrincipalName 'Lina@a-d.onmicrosoft.com'| Select DisplayName,UserPrincipalName,LastPasswordChangeTimeStamp

אם אפשרות תפוגת הסיסמה זמינה במדיניות הסיסמה של Azure AD, באפשרותך לקבל את התאריך שבו פג תוקפה של סיסמת משתמש באמצעות PowerShell:

$user=Get-MsolUser -UserPrincipalName 'Lina@a-d.onmicrosoft.com'
$User.LastPasswordChangeTimestamp.AddDays($PasswordPolicy.ValidityPeriod)

ב- Active Directory Domain Services מקומי, באפשרותך לקבל את תאריך התפוגה של הסיסמה עבור משתמש תחום מתוך

msDS-UserPasswordExpiryTimeComputed

תכונה בנויה.

לחלופין, באפשרותך לגשת ל- API של Microsoft Graph מ- PowerShell כדי לקבל את התאריך והשעה שבהם סיסמת המשתמש השתנתה ואת נתוני יצירת המשתמש ב- Azure:

$ApplicationID = "your-app-ID"
$TenatDomainName = "your-tenant-ID"
$AccessSecret = "your-app-secret"
$Body = @{
Grant_Type    = "client_credentials"
Scope         = "https://graph.microsoft.com/.default"
client_Id     = $ApplicationID
Client_Secret = $AccessSecret
}
$ConnectGraph = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$TenatDomainName/oauth2/v2.0/token" -Method POST -Body $Body
$token = $ConnectGraph.access_token
$GrapUserUrl = 'https://graph.microsoft.com/v1.0/users?$select= userprincipalname,accountenabled,signInActivity,createdDateTime,lastPasswordChangeDateTime'
$users=(Invoke-RestMethod -Headers @{Authorization = "Bearer $($token)"} -Uri $GrapUserUrl -Method Get).value
$users | where userprincipalname -eq 'Lina@a-d.onmicrosoft.com' | select userprincipalname,accountenabled,createdDateTime,lastPasswordChangeDateTime

באמצעות Microsoft Graph API ושיטת POST, באפשרותך אפילו לאפס סיסמת משתמש. השתמש בבקשת POST להלן:

POST https://graph.microsoft.com/v1.0/me/changePassword
Content-Type: application/json
  {
     "currentPassword": "OldPass123!",
     "newPassword": "NewP@ss2!"
   }

למד כיצד לאפס סיסמאות משתמשים ב- Active Directory המקומי במאמר זה.