Eksportowanie lub usuwanie danych osobowych z Azure DevTest Labs

Ten artykuł zawiera kroki usuwania i eksportowania danych osobowych z usługi Azure DevTest Labs.

Jakie dane osobowe zbiera usługa DevTest Labs?

Usługa DevTest Labs zbiera dwa główne dane osobowe od użytkownika. Są to: adres e-mail użytkownika i identyfikator obiektu użytkownika. Te informacje mają kluczowe znaczenie dla usługi w celu zapewnienia funkcji w usłudze administratorom laboratorium i użytkownikom laboratorium.

Adres e-mail użytkownika

Usługa DevTest Labs używa adresu e-mail użytkownika do wysyłania automatycznych powiadomień e-mail dotyczących zamykania do użytkowników laboratorium. Wiadomość e-mail powiadamia użytkowników o zamknięciu maszyny. Jeśli chcesz to zrobić, użytkownicy mogą odroczyć lub pominąć zamknięcie. Adres e-mail można skonfigurować na poziomie laboratorium lub na poziomie maszyny wirtualnej.

Ustawianie wiadomości e-mail w laboratorium:

Ustawianie poczty e-mail na poziomie laboratorium

Ustawianie wiadomości e-mail na maszynie wirtualnej:

Ustawianie poczty e-mail na poziomie maszyny wirtualnej

Identyfikator obiektu użytkownika

Usługa DevTest Labs używa identyfikatora obiektu użytkownika do pokazywania trendów kosztów w miesiącu i kosztów według informacji o zasobach administratorom laboratorium. Umożliwia to śledzenie kosztów i zarządzanie progami dla laboratorium.

Szacowany trend kosztów dla bieżącego miesiąca kalendarzowego:Szacowany trend kosztów dla bieżącego miesiąca kalendarzowego

Szacowany koszt od początku miesiąca według zasobu:Szacowany koszt od początku miesiąca według zasobu

Dlaczego potrzebujemy tych danych osobowych?

Usługa DevTest Labs używa danych osobowych do celów operacyjnych. Te dane mają kluczowe znaczenie dla usługi w celu dostarczania kluczowych funkcji. Jeśli ustawisz zasady przechowywania na adresie e-mail użytkownika, użytkownicy laboratorium nie otrzymają powiadomień e-mail dotyczących automatycznego zamykania po usunięciu ich adresu e-mail z naszego systemu. Podobnie administrator laboratorium nie może wyświetlać trendów kosztów w ciągu miesiąca i kosztów według zasobów dla maszyn w swoich laboratoriach, jeśli identyfikatory obiektów użytkownika zostaną usunięte na podstawie zasad przechowywania. W związku z tym te dane muszą być przechowywane tak długo, jak zasób użytkownika jest aktywny w laboratorium.

Jak mogę mieć system, aby zapomnieć o moich danych osobowych?

Jako użytkownik laboratorium, jeśli chcesz usunąć te dane osobowe, możesz to zrobić, usuwając odpowiedni zasób w laboratorium. Usługa DevTest Labs anonimizuje usunięte dane osobowe 30 dni po jego usunięciu przez użytkownika.

Jeśli na przykład usuniesz maszynę wirtualną lub usuniesz swój adres e-mail, usługa DevTest Labs anonimizuje te dane 30 dni po usunięciu zasobu. 30-dniowe zasady przechowywania po usunięciu mają na celu upewnienie się, że zapewniamy dokładną projekcję kosztów w miesiącu dla administratora laboratorium.

Jak mogę zażądać eksportu danych osobowych?

Dane użycia osobistego i laboratoryjnego można wyeksportować przy użyciu Azure Portal lub programu PowerShell. Dane są eksportowane jako dwa różne pliki CSV:

  • disks.csv — zawiera informacje o dyskach używanych przez różne maszyny wirtualne
  • virtualmachines.csv — zawiera informacje o maszynach wirtualnych w laboratorium.

Azure Portal

Jako użytkownik laboratorium możesz zażądać eksportu danych osobowych przechowywanych przez usługę DevTest Labs. Aby poprosić o eksport, przejdź do opcji Dane osobowe na stronie Przegląd laboratorium. Wybierz przycisk Eksportuj żądanie rozpoczyna tworzenie pliku programu Excel z możliwością pobrania na koncie magazynu administratora laboratorium. Następnie możesz skontaktować się z administratorem laboratorium, aby wyświetlić te dane.

  1. Wybierz pozycję Dane osobowe w menu po lewej stronie.

    Strona danych osobowych

  2. Wybierz grupę zasobów zawierającą laboratorium.

    Wybieranie grupy zasobów

  3. Wybierz konto magazynu w grupie zasobów.

  4. Na stronie Konto magazynu wybierz pozycję Obiekty blob.

    Wybierz kafelek Obiekty blob

  5. Wybierz kontener o nazwie labresourceusage na liście kontenerów.

    Wybieranie kontenera obiektów blob

  6. Wybierz folder o nazwie po laboratorium. Pliki csvdla dysków i maszyn wirtualnych znajdują się w laboratorium w tym folderze. Możesz pobrać te pliki csv, filtrować zawartość dla użytkownika laboratorium żądającego dostępu i udostępnić je im.

    Pobieranie pliku CSV

Azure PowerShell

Param (
    [Parameter (Mandatory=$true, HelpMessage="The storage account name where to store usage data")]
    [string] $storageAccountName,

    [Parameter (Mandatory=$true, HelpMessage="The storage account key")]
    [string] $storageKey,

    [Parameter (Mandatory=$true, HelpMessage="The DevTest Lab name to get usage data from")]
    [string] $labName,

    [Parameter (Mandatory=$true, HelpMessage="The DevTest Lab subscription")]
    [string] $labSubscription
    )

#Login
Login-AzureRmAccount

# Set the subscription for the lab
Get-AzureRmSubscription -SubscriptionId $labSubscription  | Select-AzureRmSubscription

# DTL will create this container in the storage when invoking the action, cannot be changed currently
$containerName = "labresourceusage"

# Get the storage context
$Ctx = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageKey 
$SasToken = New-AzureStorageAccountSASToken -Service Blob, File -ResourceType Container, Service, Object -Permission rwdlacup -Protocol HttpsOnly -Context $Ctx

# Generate the storage blob uri
$blobUri = $Ctx.BlobEndPoint + $SasToken

# blobStorageAbsoluteSasUri and usageStartDate are required
$actionParameters = @{
    'blobStorageAbsoluteSasUri' = $blobUri    
}

$startdate = (Get-Date).AddDays(-7)

$actionParameters.Add('usageStartDate', $startdate.Date.ToString())

# Get the lab resource group
$resourceGroupName = (Find-AzureRmResource -ResourceType 'Microsoft.DevTestLab/labs' | Where-Object { $_.Name -eq $labName}).ResourceGroupName
    
# Create the lab resource id
$resourceId = "/subscriptions/" + $labSubscription + "/resourceGroups/" + $resourceGroupName + "/providers/Microsoft.DevTestLab/labs/" + $labName + "/"

# !!!!!!! this is the new resource action to get the usage data.
$result = Invoke-AzureRmResourceAction -Action 'exportLabResourceUsage' -ResourceId $resourceId -Parameters $actionParameters -Force
 
# Finish up cleanly
if ($result.Status -eq "Succeeded") {
    Write-Output "Telemetry successfully downloaded for " $labName
    return 0
}
else
{
    Write-Output "Failed to download lab: " + $labName
    Write-Error $result.toString()
    return -1
}

Kluczowe składniki w powyższym przykładzie to:

  • Polecenie Invoke-AzureRmResourceAction.

    Invoke-AzureRmResourceAction -Action 'exportLabResourceUsage' -ResourceId $resourceId -Parameters $actionParameters -Force
    
  • Dwa parametry akcji

    • blobStorageAbsoluteSasUri — identyfikator URI konta magazynu z tokenem sygnatury dostępu współdzielonego (SAS). W skryscie programu PowerShell ta wartość może zostać przekazana zamiast klucza magazynu.
    • usageStartDate — data początkowa ściągnięcia danych z datą zakończenia bieżącą datą wykonania akcji. Stopień szczegółowości jest na poziomie dnia, więc nawet jeśli dodasz informacje o czasie, zostanie zignorowany.

Wyeksportowane dane — bliższe spojrzenie

Teraz przyjrzyjmy się bliżej wyeksportowanym danym. Jak wspomniano wcześniej, po pomyślnym wyeksportowaniu danych będą dostępne dwa pliki CSV.

virtualmachines.csvzawiera następujące kolumny danych:

Nazwa kolumny Opis
SubscriptionId Identyfikator subskrypcji, w ramach którego istnieje laboratorium.
LabUId Unikatowy identyfikator GUID dla laboratorium.
LabName Nazwa laboratorium.
LabResourceId W pełni kwalifikowany identyfikator zasobu laboratorium.
ResourceGroupName Nazwa grupy zasobów zawierającej maszynę wirtualną
ResourceId W pełni kwalifikowany identyfikator zasobu maszyny wirtualnej.
ResourceUId Identyfikator GUID maszyny wirtualnej
Name Nazwa maszyny wirtualnej.
CreatedTime Data utworzenia maszyny wirtualnej.
UsuniętoDate Data usunięcia maszyny wirtualnej. Jeśli jest ona pusta, usunięcie jeszcze nie miało miejsca.
Właściciel zasobu Właściciel maszyny wirtualnej. Jeśli wartość jest pusta, jest to maszyna wirtualna z możliwością oświadczeń lub utworzona przez jednostkę usługi.
CennikTier Warstwa cenowa maszyny wirtualnej
ResourceStatus Stan dostępności maszyny wirtualnej. Aktywne, jeśli nadal istnieje lub Nieaktywne, jeśli maszyna wirtualna została usunięta.
ComputeResourceId W pełni kwalifikowany identyfikator zasobu obliczeniowego maszyny wirtualnej.
Możliwe do oświadczeń Ustaw wartość true, jeśli maszyna wirtualna jest maszyną wirtualną z możliwością oświadczeń
Identyfikator środowiska Identyfikator zasobu środowiska, w którym utworzono maszynę wirtualną. Jest ona pusta, gdy maszyna wirtualna nie została utworzona jako część zasobu środowiska.
Data wygaśnięcia Data wygaśnięcia maszyny wirtualnej. Jest ona ustawiona na pustą, jeśli data wygaśnięcia nie została ustawiona.
GalleryImageReferenceVersion Wersja obrazu podstawowego maszyny wirtualnej.
GalleryImageReferenceOffer Oferta obrazu podstawowego maszyny wirtualnej.
GalleryImageReferencePublisher Wydawca obrazu podstawowego maszyny wirtualnej.
GalleryImageReferenceSku Jednostka SKU obrazu podstawowego maszyny wirtualnej
GalleryImageReferenceOsType Typ systemu operacyjnego obrazu podstawowego maszyny wirtualnej
CustomImageId W pełni kwalifikowany identyfikator podstawowego obrazu niestandardowego maszyny wirtualnej.

Poniżej wymieniono kolumny danych zawarte w disks.csv :

Nazwa kolumny Opis
SubscriptionId Identyfikator subskrypcji zawierającej laboratorium
LabUId Identyfikator GUID laboratorium
LabName Nazwa laboratorium
LabResourceId W pełni kwalifikowany identyfikator zasobu dla laboratorium
ResourceGroupName Nazwa grupy zasobów zawierającej laboratorium
ResourceId W pełni kwalifikowany identyfikator zasobu maszyny wirtualnej.
ResourceUId Identyfikator GUID maszyny wirtualnej
Name Nazwa dołączonego dysku
CreatedTime Data i godzina utworzenia dysku danych.
UsuniętoDate Data i godzina usunięcia dysku danych.
ResourceStatus Stan zasobu. Aktywne, jeśli zasób istnieje. Nieaktywne po usunięciu.
DiskBlobName Nazwa obiektu blob dla dysku danych.
DiskSizeGB Rozmiar dysku danych.
DiskType Typ dysku danych. 0 dla warstwy Standardowa, 1 dla warstwy Premium.
LeasedByVmId Identyfikator zasobu maszyny wirtualnej, do której został dołączony dysk danych.

Uwaga

Jeśli masz do czynienia z wieloma laboratoriami i chcesz uzyskać ogólne informacje, dwie kluczowe kolumny to LabUID i ResourceUId, które są unikatowymi identyfikatorami w ramach subskrypcji.

Wyeksportowane dane można manipulować i wizualizować przy użyciu narzędzi, takich jak SQL Server, Power BI itp. Ta funkcja jest szczególnie przydatna, gdy chcesz zgłosić użycie laboratorium zespołowi zarządzania, który może nie używać tej samej subskrypcji platformy Azure, co ty.

Następne kroki

Zobacz następujący artykuł: