Esportare o eliminare dati personali da Azure DevTest Labs
Questo articolo illustra la procedura da eseguire per eliminare ed esportare dati personali dal servizio Azure DevTest Labs.
Quali dati personali vengono raccolti da DevTest Labs?
DevTest Labs raccoglie due principali tipi di dati personali dell'utente: l'indirizzo di posta elettronica utente e l'ID oggetto utente. Queste informazioni sono fondamentali per il servizio per fornire funzionalità interne ad amministratori e utenti dei lab.
Indirizzo e-mail dell'utente
DevTest Labs usa l'indirizzo di posta elettronica utente per inviare notifiche di arresto automatico tramite posta elettronica agli utenti dei lab. Il messaggio di posta elettronica notifica agli utenti che il loro computer sta per essere arrestato. Gli utenti, se lo desiderano, possono posporre o ignorare l'arresto. L'indirizzo di posta elettronica viene configurato a livello di lab o a livello di macchina virtuale.
Perché sono necessari i dati personali?
Il servizio DevTest Labs usa i dati personali per scopi operativi. Questi dati sono fondamentali per consentire al servizio di fornire funzionalità chiave. Se si imposta un criterio di conservazione per l'indirizzo di posta elettronica utente, gli utenti del lab, dopo l'eliminazione del loro indirizzo di posta elettronica dal sistema, non ricevono notifiche tempestive di arresto automatico tramite posta elettronica. Di conseguenza, questi dati devono essere mantenuti fino a quando la risorsa dell'utente è attiva nel lab.
Come si può fare in modo che il sistema dimentichi i dati personali?
Gli utenti del lab possono eliminare i dati personali eliminando la risorsa corrispondente nel lab. Il servizio DevTest Labs rende anonimi i dati personali eliminati 30 giorni dopo l'eliminazione da parte dell'utente.
Se ad esempio si elimina la macchina virtuale o si rimuove l'indirizzo di posta elettronica, il servizio DevTest Labs rende anonimi questi dati dopo 30 giorni dall'eliminazione della risorsa. Il criterio di conservazione per 30 giorni dopo l'eliminazione serve ad assicurare all'amministratore del lab che le previsioni di DevTest Labs relative ai costi mensili siano accurate.
Come si può richiedere un'esportazione dei dati personali?
È possibile esportare i dati personali e i dati di utilizzo del lab usando Azure PowerShell. DevTest Labs esporta i dati come file CSV, che include nel nome la data e l'ora dell'esportazione richiesta.
Azure PowerShell
Param (
[Parameter (Mandatory=$true, HelpMessage="The resource group name of the storage account")]
[string] $resourceGroupName,
[Parameter (Mandatory=$true, HelpMessage="The subscription id of the storage account and DTL")]
[string] $subscriptionId,
[Parameter (Mandatory=$true, HelpMessage="The storage account name")]
[string] $storageAccountName,
[Parameter (Mandatory=$true, HelpMessage="Expire time of the SAS Token")]
[string] $expiryTime,
[Parameter (Mandatory=$true, HelpMessage="Date to pull data from")][string] $startTime,
[Parameter (Mandatory=$true, HelpMessage="Name of the lab to export")]
[string] $labName,
[Parameter (Mandatory=$true, HelpMessage="The desired SKU")]
[string] $desiredSKU,
[Parameter (Mandatory=$true, HelpMessage="Protocol for SAS token generation")]
[string] $protocol,
[Parameter (Mandatory=$true, HelpMessage="Permissions given for SAS token")]
[string] $permissions
# Log in
Connect-AzAccount -UseDeviceAuthentication
# Set your subscription
Set-AzContext -SubscriptionId $subscriptionId
# Create a resource group and storage account
New-AzStorageAccount -ResourceGroupName $resourceGroupName `
-Name $storageAccountName `
-Location $location `
-SkuName $desiredSKU
# Get storage account context
$storageAccountContext = Get-AzStorageAccount -ResourceGroupName $resourceGroupName -AccountName $storageAccountName
$storageAccountKeys = Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -Name $storageAccountName
$Ctx = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKeys[0].Value
# Create blob container
$containerName = "exportlabresources"
New-AzStorageContainer -Name $containerName `
-Context $Ctx `
-Permission Off
# Get SAS token
$sasToken = New-AzStorageContainerSASToken `
-Context $Ctx `
-Name $containerName `
-StartTime (Get-Date) `
-ExpiryTime $expiryTime `
-Permission $permissions `
-Protocol $protocol
# Make blob endpoint
$blobEndpointWithSas = $storageAccountContext.Context.BlobEndPoint + $containerName+ "?" + $sasToken
# Invoke Export Job
$actionParameters = @{
'blobStorageAbsoluteSasUri' = $blobEndpointWithSas
}
$actionParameters.Add('usageStartDate', $startdate.Date.ToString())
$resourceId = "/subscriptions/" + $subscriptionId + "/resourceGroups/" + $resourceGroupName + "/providers/Microsoft.DevTestLab/labs/" + $labName + "/"
$result = Invoke-AzureRmResourceAction -Action 'ExportResourceUsage' -ResourceId $resourceId -Parameters $actionParameters -Force
I componenti chiave dell'esempio precedente sono:
Comando Invoke-AzureRmResourceAction.
Invoke-AzureRmResourceAction -Action 'ExportResourceUsage' -ResourceId $resourceId -Parameters $actionParameters -Force
Due parametri di azione
- blobStorageAbsoluteSasUri: URI dell'account di archiviazione con il token di firma di accesso condiviso (SAS). Nello script di PowerShell questo valore può essere inserito al posto della chiave di archiviazione.
- usageStartDate: data di inizio per il pull dei dati, con la data di fine corrispondente alla data corrente in cui viene eseguita l'azione. La granularità è a livello di giorno, quindi anche se si aggiungono informazioni sull'ora, verrà ignorata.
Passaggi successivi
Vedere l'articolo seguente: