Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Rozpocznij pracę z biblioteką klienta deidentyfikowania usługi Azure Health dla platformy .NET, aby usunąć identyfikację danych kondycji. Wykonaj następujące kroki, aby zainstalować pakiet i wypróbować przykładowy kod dla podstawowych zadań.
Dokumentacja referencyjna interfejsu | APIKod | Pakiet (NuGet) | Więcej przykładów w usłudze GitHub
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Konto usługi Azure Storage (tylko dla przepływu pracy zadania).
Konfigurowanie
Utwórz usługę anonimizacji
Usługa usuwania identyfikacji udostępnia adres URL punktu końcowego. Ten adres URL punktu końcowego może być używany jako interfejs API REST lub zestaw SDK.
Instalowanie interfejsu wiersza polecenia platformy Azure
Tworzenie zasobu usługi usuwania identyfikacji
REGION="<Region>" RESOURCE_GROUP_NAME="<ResourceGroupName>" DEID_SERVICE_NAME="<NewDeidServiceName>" az resource create -g $RESOURCE_GROUP_NAME -n $DEID_SERVICE_NAME --resource-type microsoft.healthdataaiservices/deidservices --is-full-object -p "{\"identity\":{\"type\":\"SystemAssigned\"},\"properties\":{},\"location\":\"$REGION\"}"
Przypisywanie ról RBAC do usługi anonimizacji
Musimy przypisać rolę do naszej usługi anonimizacji danych, żeby uzyskać uprawnienia do wykonywania działań w tym przewodniku szybkiego startu.
Ponieważ używamy punktów końcowych czasu rzeczywistego i zadań, przypisujemy role DeID Data Owner.
Aby dowiedzieć się, jak przypisać tę rolę do usługi dekonidentyfikacji, zapoznaj się z tematem Zarządzanie dostępem do usługi dekonidentyfikacji za pomocą kontroli dostępu opartej na rolach (RBAC) platformy Azure w usługach Azure Health Data Services
Tworzenie konta usługi Azure Storage
Instalowanie interfejsu wiersza polecenia platformy Azure
Tworzenie konta usługi Azure Storage
STORAGE_ACCOUNT_NAME="<NewStorageAccountName>" az storage account create --name $STORAGE_ACCOUNT_NAME --resource-group $RESOURCE_GROUP_NAME --location $REGION
Autoryzowanie usługi usuwania identyfikacji na koncie usługi Azure Storage
Przyznaj usłudze deidentyfikacji dostęp do konta magazynowego
STORAGE_ACCOUNT_ID=$(az storage account show --name $STORAGE_ACCOUNT_NAME --resource-group $RESOURCE_GROUP_NAME --query id --output tsv) DEID_SERVICE_PRINCIPAL_ID=$(az resource show -n $DEID_SERVICE_NAME -g $RESOURCE_GROUP_NAME --resource-type microsoft.healthdataaiservices/deidservices --query identity.principalId --output tsv) az role assignment create --assignee $DEID_SERVICE_PRINCIPAL_ID --role "Storage Blob Data Contributor" --scope $STORAGE_ACCOUNT_ID
Instalowanie pakietu
Biblioteka klienta jest dostępna w NuGet jako pakiet Azure.Health.Deidentification.
Instalowanie pakietu
dotnet add package Azure.Health.DeidentificationPonadto zainstaluj pakiet tożsamości platformy Azure, jeśli nie został jeszcze zainstalowany.
dotnet add package Azure.Identity
Model obiektów
- DeidentificationClient jest odpowiedzialny za komunikację między zestawem SDK a naszym punktem końcowym usługi deidentyfikacyjnej.
- DeidentificationContent służy do dekonfidentyfikacji ciągów.
- Funkcja DeidentificationJob służy do tworzenia zadań w celu anulowania identyfikowania dokumentów na koncie usługi Azure Storage.
- PhiEntity to zakres i kategoria pojedynczej jednostki PHI wykrytej za pośrednictwem tagu OperationType.
Przykłady kodu
- Tworzenie klienta deidentyfikacji
- Deidentyfikacja ciągu
- Tagowanie ciągu
- Utwórz zadanie zanonimizowania
- Uzyskaj status zadania deidentyfikacji
Tworzenie klienta anonimizacji
Przed utworzeniem klienta należy znaleźć adres URL punktu końcowego usługi usuwania identyfikacji.
Adres URL punktu końcowego można znaleźć za pomocą interfejsu wiersza polecenia platformy Azure:
az resource show -n $DEID_SERVICE_NAME -g $RESOURCE_GROUP_NAME --resource-type microsoft.healthdataaiservices/deidservices --query properties.serviceUrl --output tsv
Następnie możesz utworzyć klienta przy użyciu tej wartości.
using Azure.Identity;
using Azure.Health.Deidentification;
string serviceEndpoint = "https://example123.api.deid.azure.com";
DeidentificationClient client = new(
new Uri(serviceEndpoint),
new DefaultAzureCredential()
);
Anulowanie identyfikowania ciągu
Ta funkcja umożliwia odidentyfikowanie dowolnego ciągu, który jest w pamięci.
DeidentificationContent content = new("SSN: 123-04-5678");
DeidentificationResult result = await client.DeidentifyAsync(content);
Tagowanie ciągu
Tagowanie można wykonać w taki sam sposób i anonimizować, zmieniając OperationType.
DeidentificationContent content = new("SSN: 123-04-5678");
content.Operation = OperationType.Tag;
DeidentificationResult result = await client.DeidentifyAsync(content);
Utwórz zadanie anonimizacji
Ta funkcja umożliwia anulowanie identyfikowania wszystkich plików filtrowanych za pomocą prefiksu na koncie usługi Azure Blob Storage.
Aby utworzyć zadanie, potrzebujemy adresu URL do punktu końcowego obiektu blob konta usługi Azure Storage.
az resource show -n $STORAGE_ACCOUNT_NAME -g $RESOURCE_GROUP_NAME --resource-type Microsoft.Storage/storageAccounts --query properties.primaryEndpoints.blob --output tsv
Teraz możemy utworzyć pracę. W tym przykładzie użyto folder1/ jako prefiksu. Zadanie usuwa wszystkie dokumenty zgodne z tym prefiksem i zapisują zdeidentyfikową wersję z prefiksem output_files/ .
using Azure;
Uri storageAccountContainerUri = new("https://exampleStorageAccount.blob.core.windows.net/containerName");
DeidentificationJob job = new(
new SourceStorageLocation(storageAccountContainerUri, "folder1/"),
new TargetStorageLocation(storageAccountContainerUri, "output_files/")
);
job = client.CreateJob(WaitUntil.Started, "my-job-1", job).Value;
Pobierz stan zadania deidentyfikacji
Po utworzeniu zadania można wyświetlić stan i inne szczegóły zadania.
DeidentificationJob job = client.GetJob("my-job-1").Value;
Uruchamianie kodu
Po zaktualizowaniu kodu w projekcie możesz go uruchomić przy użyciu:
dotnet run
Czyszczenie zasobów
Usuń usługę anonimizacji
az resource delete -n $DEID_SERVICE_NAME -g $RESOURCE_GROUP_NAME --resource-type microsoft.healthdataaiservices/deidservices
Usuwanie konta usługi Azure Storage
az resource show -n $STORAGE_ACCOUNT_NAME -g $RESOURCE_GROUP_NAME --resource-type Microsoft.Storage/storageAccounts
Usunięcie przypisania roli
az role assignment delete --assignee $DEID_SERVICE_PRINCIPAL_ID --role "Storage Blob Data Contributor" --scope $STORAGE_ACCOUNT_ID
Rozwiązywanie problemów
Nie można uzyskać dostępu do magazynu źródłowego lub docelowego
Upewnij się, że podano uprawnienia, a tożsamość zarządzana dla usługi usuwania identyfikacji jest poprawnie skonfigurowana.
Zobacz Autoryzacja usługi usuwania identyfikacji na koncie usługi Azure Storage
Zadanie nie powiodło się ze stanem PartialFailed
Możesz użyć funkcji GetJobDocuments na DeidentificationClient, aby wyświetlać komunikaty o błędach dla każdego pliku.
Zobacz przykład
Następne kroki
W tym szybkim instruktażu nauczyłeś się:
- Jak utworzyć usługę deidentyfikacji i przypisać rolę na koncie magazynowym.
- Jak utworzyć klienta dezydentyfikacji
- Jak anonimizować ciągi i tworzyć zadania dotyczące dokumentów na koncie magazynowym.