Udostępnij przez


Funkcja Always Encrypted na serwerze raportów usługi Power BI

W tym artykule wyjaśniono obsługę funkcji Always Encrypted na serwerze raportów usługi Power BI podczas korzystania z typów źródeł danych Microsoft SQL Server i Microsoft Azure SQL Database. Aby uzyskać więcej informacji na temat funkcji Always Encrypted w programie SQL Server, zobacz artykuł Always Encrypted .

Izolacja użytkownika Always Encrypted

Obecnie serwer raportów usługi Power BI nie ogranicza dostępu do kolumn Always Encrypted w raportach, jeśli użytkownik ma dostęp do raportu. W związku z tym, jeśli serwer otrzymał dostęp do kluczy szyfrowania kolumn za pośrednictwem klucza głównego kolumn, użytkownicy mają dostęp do wszystkich kolumn raportów, do których mogą uzyskać dostęp.

Użycie kolumny Always Encrypted

Kluczowe strategie magazynowania

Magazyn Wsparte
Magazyn certyfikatów systemu Windows Tak
Azure Key Vault Nie.
Kryptografia nowej generacji (CNG) Nie.

Magazyn certyfikatów i dostęp

Konto, które wymaga dostępu do certyfikatu, to konto usługi. Certyfikat powinien być przechowywany w magazynie certyfikatów komputera lokalnego. Aby uzyskać więcej informacji, zobacz:

Strategia szyfrowania kolumn

Na serwerze raportów usługi Power BI strategia szyfrowania kolumn może być deterministyczna lub losowa. W poniższej tabeli przedstawiono różnice w zależności od używanej strategii.

Użyj Deterministyczny Zrandomizowany
Można odczytać w takiej postaci, w wynikach zapytania, na przykład instrukcji SELECT. Tak Tak
Można użyć jako jednostki do grupowania według w zapytaniu. Tak Nie.
Może służyć jako pole agregacji, z wyjątkiem funkcji COUNT i DISTINCT. Nie, z wyjątkiem funkcji COUNT i DISTINCT Nie.
Może być używany jako parametr raportu Tak Nie.

Przeczytaj więcej na temat deterministycznego i losowego szyfrowania.

Użycie parametrów

Użycie parametrów dotyczy tylko szyfrowania deterministycznego.

Parametr z jedną wartością. Można użyć parametru o pojedynczej wartości względem kolumny Always Encrypted.

Parametr z wieloma wartościami. Nie można użyć parametru wielowartego z więcej niż jedną wartością względem kolumny Always Encrypted.

Parametry kaskadowe. Jeśli spełnione są wszystkie następujące warunki, można użyć parametrów kaskadowych z funkcją Always Encrypted:

  • Wszystkie kolumny Always Encrypted muszą być szyfrowane zawsze za pomocą strategii deterministycznej.
  • Wszystkie parametry używane względem kolumn Always Encrypted są parametrami o pojedynczej wartości.
  • Wszystkie porównania SQL używają operatora Equals (=).

Obsługa typów danych

Typ danych SQL Obsługuje pole odczytu Obsługuje użycie jako elementu grupowania według Obsługiwane agregacje (COUNT, DISTINCT, MAX, MIN, SUM itp.) Obsługuje filtrowanie za pośrednictwem równości przy użyciu parametrów Notatki
int Tak Tak LICZ, RÓŻNE Tak, jako liczba całkowita
float Tak Tak LICZ, RÓŻNE Tak, jako float
nvarchar Tak Tak LICZ, RÓŻNE Tak, jako tekst Szyfrowanie deterministyczne musi używać sortowania kolumn z binarnym2 kolejnością sortowania dla kolumn znaków. Aby uzyskać szczegółowe informacje, zobacz artykuł Sql Server Always Encrypted .
Varchar powiedział: Tak Tak LICZ, RÓŻNE Nie.
liczba dziesiętna Tak Tak LICZ, RÓŻNE Nie.
numeryczny Tak Tak LICZ, RÓŻNE Nie.
data/godzina Tak Tak LICZ, RÓŻNE Nie.
datetime2 Tak Tak LICZ, RÓŻNE Tak, jako data/godzina Obsługiwane, jeśli kolumna nie ma dokładności milisekund (innymi słowy, bez daty/godziny 2(0))

Alternatywy agregacji

Obecnie jedynymi obsługiwanymi agregacjami dla deterministycznych kolumn Always Encrypted są te agregacje, które bezpośrednio używają operatora Equals (=). To ograniczenie programu SQL Server jest spowodowane charakterem kolumn Always Encrypted. Użytkownicy muszą agregować w raporcie zamiast w bazie danych.

Funkcja Always Encrypted w parametrach połączenia

Należy włączyć funkcję Always Encrypted w parametrach połączenia dla źródła danych programu SQL Server. Przeczytaj więcej na temat włączania funkcji Always Encrypted w zapytaniach aplikacji.

Więcej pytań? Spróbuj zapytać społeczność usługi Power BI