Tramite
PowerShell è possibile definire, in una
AppOnly di
SharePoint, un nuovo secret con scadenza arbitraria.
La prima cosa da sapere è che non è possibile estendere la durata di un
secret esistente, ne va creato uno nuovo.
Verifica
Primo passo, connessione al tenant
Connect-AzureAD -TenantId b32xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxca9
e si recupera la
AppOnly già definita
$appname="Test UPV"
$app = Get-AzureADServicePrincipal -SearchString $appName -All $true
restituirà nella variabile un oggetto simile a questo
ObjectId AppId DisplayName
-------- ----- -----------
40f9183e-xxxx-xxxx-xxxx-0913dfd84445 91d3a010-xxxx-xxxx-xxxx-3de1bd1d9751 Test UPV
tramite l
'ObjectId recuperiamo le informazioni per conferma
$appname="Test UPV"
Get-AzureADServicePrincipalPasswordCredential -ObjectId $app.ObjectId
tipo queste dove si vedono solo le date di inizio (StartDate) e fine (EndDate) validità
CustomKeyIdentifier :
EndDate : 17/05/2023 14:48:12
KeyId : 74c0bf26-xxxx-xxxx-xxxx-6c8023929d38
StartDate : 17/05/2022 14:48:12
Value :
Il secret (Value) viene mostrato solo in fase di creazione, poi non è più visibile.
New secret
Con queste info si può creare un nuovo secret impostando una specifica data di scadenza (EndDate)
$startDate = Get-Date
$endDate = $startDate.AddYears(10)
$keyIdentifier = "Expire_$($endDate.ToString("yyyy"))"
$secret = New-AzureADServicePrincipalPasswordCredential -ObjectId $app.ObjectId -CustomKeyIdentifier $keyIdentifier -StartDate $startDate -EndDate $endDate
$secret.Value # visualizzo il secret
la variabile
$secret conterrà una cosa simile a questa
CustomKeyIdentifier : {69, 120, 112, 105...}
EndDate : 17/05/2071 21:45:28
KeyId :
StartDate : 17/05/2022 21:45:28
Value : jisf7vDUgO.....................EID0DM7RWc=
Copiare il valore del secret contenuto in $secret.Value.
Per vedere il valore contenuto nel campo
CustomKeyIdentifier (byte[])
[System.Text.Encoding]::UTF8.GetString($secret.CustomKeyIdentifier)
# ritorna Expire_2032