簡體   English   中英

使用 powershell 重置 Azure 服務主體的客戶端密碼

[英]Reset the client secret of Azure Service Principal using powershell

使用 powershell 命令我想重置服務主體客戶端密碼。

我按照文章https://docs.microsoft.com/en-us/powershell/azure/create-azure-service-principal-azureps?view=azps-5.8.0中的以下步驟操作,但它沒有重置密碼

Remove-AzADSpCredential -DisplayName ServicePrincipalName
$newCredential = New-AzADSpCredential -ServicePrincipalName ServicePrincipalName

你能告訴我我做錯了什么嗎? 我只想重置秘密並擁有一個新的

我執行了上述命令,然后我去了該服務主體的應用程序注冊,在那里我去了證書和秘密,我看到它沒有創建新的秘密。

使用 bash 我可以通過執行以下命令來重置密碼,但我希望使用 powershell 命令來完成

az ad sp credential reset --name

我去了那個服務主體的應用程序注冊,在那里我去了證書和秘密,我看到它沒有創建新的秘密。

好吧,實際上New-AzADSpCredential命令確實為您創建了一個新秘密。 首先,您需要了解應用注冊(AD App)和服務主體之間的關系,請參閱Azure Active Directory 中的應用程序和服務主體對象

簡而言之,服務主體是特定租戶中 AD 應用程序的本地表示。 當您為服務主體創建密鑰時,它不會出現在Certificates & secrets刀片中,您可以使用Get-AzADSpCredential獲取它。

如果要重置可在門戶中找到的密碼,則需要通過Remove-AzADAppCredentialNew-AzADAppCredential重置 AD 應用程序的密碼(即應用注冊)。

您可以參考下面的示例,它重置了一個值為ce96a0ed-5ae8-4a5a-9b3c-630da9ea3023 ,有效期為一年,您可以在門戶中找到它。

$obj = (Get-AzADApplication -DisplayName joyappv2).ObjectId
Remove-AzADAppCredential -ObjectId $obj -Force
$azurePassword = ConvertTo-SecureString "ce96a0ed-5ae8-4a5a-9b3c-630da9ea3023" -AsPlainText -Force
$date = Get-Date
$newCredential = New-AzADAppCredential -ObjectId $obj -Password $azurePassword -StartDate $date -EndDate $date.AddYears(1)

注意:創建后無法再次獲取密值,請在創建時保存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM