PowerShell kullanılarak https://management.azure.com/ yenileme belirteci alınamıyor

Aug 21 2020

PowerShell kullanarak "https://management.azure.com/" kaynağı için Erişim belirteci ve yenileme belirteci almaya çalışıyorum, ancak yalnızca bir Erişim belirteci alıyorum. Yenileme jetonuna da ihtiyacım var. Kodumu aşağıdaki gibi paylaşıyorum.

$clientID = '1xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' $secretKey = 'kdfudifkldfliKASDFKkdfjd-ddkjfidysikd'
$tenantID = 'fxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' $password = ConvertTo-SecureString -String $secretKey -AsPlainText -Force $credential = New-Object System.Management.Automation.PSCredential($ClientID,$password)
Connect-AzureRmAccount -ServicePrincipal -Credential $credential -Tenant $tenantID

$authUrl = "https://login.windows.net/" + $tenantID + "/oauth2/token/"
$body = @{ "resource" = "https://management.azure.com/"; "grant_type" = "client_credentials"; "client_id" = $ClientID
   "client_secret" = $secretKey } Write-Output "Getting Authentication-Token ..." $adlsToken = Invoke-RestMethod -Uri $authUrl –Method POST -Body $body
Write-Output $adlsToken

------------çıktı---------------

Getting Authentication-Token ...
token_type     : Bearer
expires_in     : 3599
ext_expires_in : 3599
expires_on     : 1597999269
not_before     : 1597995369
resource       : https://management.azure.com/
access_token   : J0uYFoioURT4CdISuUrRrr...

Yanıtlar

CarlZhao Aug 21 2020 at 11:04

Spesifikasyon, İstemci Kimlik Bilgileri verme türünün yenileme belirteçlerinin yayınlanmasına izin VERMEMELİDİR. Dolayısıyla cevap, erişim jetonunuzla bir yenileme jetonu almak için farklı bir hibe türü kullanmanız gerektiğidir.

Bu nedenle, belirteci istediğinizde size yenileme belirtecini döndürecek olan kimlik doğrulama kodu akışını kullanmanız önerilir .

Güncelleme: