Сброс пароля пользователя в Azure AD

Сброс пароля пользователя в Azure AD


Если пользователь Azure AD забыл свой пароль, администратор тенанта Azure (Microsoft 365) может сбросить его несколькими способами: через Azure Portal, PowerShell или можно включить функцию самостоятельного сброса пароля пользователями (SSRP).

Для сброса пароля пользователей вашей учётной записи должна быть назначена встроенная роль Azure: User Administrator или Password Administrator

Сбросить пароль пользователя через Azure Portal

Самый простой способ сбросить пароль пользователя в Azure – воспользоваться веб интерфейсом портала Azure (или Microsoft 365 Admin Center).

  1. Авторизуйтесь на портале https://portal.azure.com/ и перейдите в раздел Azure Active Directory -> Users;
  2. Выберите пользователя и нажмите на Reset Password;
Появится предупреждение, что пользователю будет назначен временный пароль.The user 'Lidia@winitpro.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'. 
  1. Нажмите на Reset Password;
  2. Azure сгенерирует для пользователя новый временный пароль и отобразит его на экране;
  3. Передайте пароль пользователю и при следующем входе в любое приложение Microsoft 365 с помощью Modern Authentication, ему будет предложено сменить его.
  4. По логам входов пользователя в Azure можно проверить, что пользователь успешно аутентифицировался.

Несколько важных моментов:

  • Временный пароль никогда не истекает;
  • Если у вас настроена синхронизация локальной Active Directory с Azure AD через Connector, то для сброса пароля из облака, в настройках коннектора должна быть включена синхронизация паролей Password Write-Back.

Для своего тенанта Azure вы можете включить самостоятельный сброс паролей пользователями (Self-Service Password Reset — SSPR). Вы можете включить SSRP для одной группы пользователей или для всех пользователей AAD в разделе Azure Active Directory -> Password reset -> Properties.

Включить Self-Service Password Reset для самостоятельного сброса паролей пользователями azure

Для сброса пароля пользователи могут использовать разрешенные методы подтверждения. В дополнении к стандартным MFA методам здесь добавлена возможность использования секретных вопросов и офисного телефона. Можно использовать один или два метода проверки.

настроить методы подтверждения сброса пароля пользователями Azure

Сброс пароля пользователя Azure Active Directory с помощью PowerShell

При сбросе пароля пользователя через портал Azure новый временный пароль генерируется автоматически. Но вы можете задать новый пароль пользователю вручную с помощью PowerShell.

Задать новый пароль вручную можно также через Microsoft 365 Admin Center.

Для сброса пароля пользователя можно использовать модуль Azure AD. Подключитесь к своему тенанту Azure:

Connect-AzureAD

Задайте новый пароль и сконвертируйте его в SecureString (см. статью про хранение паролей в скриптах PowerShell):

$newPass = ConvertTo-SecureString 'NewPassword01' -AsPlainText –Force

Для генерации случайного пароля можно использовать PowerShell:Add-Type -AssemblyName System.Web

$genpass=[System.Web.Security.Membership]::GeneratePassword(10,2)

$newPass = ConvertTo-SecureString $genpass -AsPlainText –Force

По UPN нужно получить Object ID пользователя, которому вы хотите изменить пароль:

$userObjectId=(Get-AzureADUser -filter "userPrincipalName eq 'Lidia@winitpro.onmicrosoft.com'").ObjectID

Примените новый пароль для пользователя Azure по ObjectID:

Set-AzureADUserPassword -ObjectId $userObjectId -Password $newPass

Set-AzureADUserPassword - PowerShell командлет для сброса пароля пользователя в Azure AD

Если вы хотите, чтобы пользователь сменил пароль при следующем входе, добавьте опцию -ForceChangePasswordNextLogin $true

С помощью модуля Azure AD не получится вывести время смены пароля пользователя. Эту информацию можно получить через Microsoft Graph API или с помощью старого модуля MSOnline.

Если на компьютере установлен PowerShell модуль MSOnline, подключитесь к тенанту:

Connect-MsolService

Выведите значение LastPasswordChangeTimeStamp:

Get-MsolUser -UserPrincipalName 'Lidia@winitpro.onmicrosoft.com'| Select DisplayName,UserPrincipalName,LastPasswordChangeTimeStamp

получить значение LastPasswordChangeTimeStamp пользователя Azure


Если в политике паролей Azure AD включена опция истечения срока пароля, с помощью PowerShell можно узнать дату, когда пароль пользователя будет просрочен:

$user=Get-MsolUser -UserPrincipalName 'Lidia@winitpro.onmicrosoft.com'

$User.LastPasswordChangeTimestamp.AddDays($PasswordPolicy.ValidityPeriod)

В on-premises Active Directory Domain Services дату окончания срока действия пароля пользователя домена можно получить из constructed атрибута msDS-UserPasswordExpiryTimeComputed.

Либо вы можете обратиться к Microsoft Graph API из PowerShell для получения информации о времени смены пароля пользователя и дате создания пользователя в Azure:

$ApplicationID = "xxx"

$TenatDomainName = "xxxx"

$AccessSecret = "xxx"

$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 'LidiaH@winitpro.onmicrosoft.com' | select userprincipalname,accountenabled,createdDateTime,lastPasswordChangeDateTime

microsoft graph api - узнать дату смена пароля пользователя azure ad из powershell


Через Microsoft Graph API и метод POST можно даже сбросить пароль пользователя. Используйте такой POST запрос:

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


форма смены пароля пользователем azure ad


новый пароль пользователя сгенерирован Azure


Сбросить пароль пользователя через портала Azure



Report Page