Używanie własnych kluczy szyfrowania dla usługi Power BI
Domyślnie usługa Power BI używa kluczy zarządzanych przez firmę Microsoft do szyfrowania danych. W usłudze Power BI Premium możesz również użyć własnych kluczy dla danych przechowywanych, które są importowane do modelu semantycznego. Takie podejście jest często określane jako "przynieś własny klucz" (bring your own key, BYOK). Aby uzyskać więcej informacji, zobacz Zagadnienia dotyczące źródła danych i magazynu.
Dlaczego warto używać rozwiązania BYOK?
Usługa BYOK ułatwia spełnienie wymagań dotyczących zgodności, które określają kluczowe ustalenia u dostawcy usług w chmurze, w tym przypadku firmy Microsoft. Dzięki BYOK to Ty dostarczasz i kontrolujesz klucze szyfrowania dla danych Power BI spoczywających na poziomie aplikacji. W związku z tym możesz kontrolować i odwołać dostęp do kluczy swojej organizacji, jeśli zdecydujesz się zrezygnować z usługi. Po cofnięciu kluczy dane stają się nieczytelne dla usługi w ciągu 30 minut.
Zagadnienia dotyczące źródła danych i magazynu
Aby użyć funkcji BYOK, musisz przesłać dane do usługi Power BI z pliku programu Power BI Desktop (PBIX). Nie można używać funkcji BYOK w następujących scenariuszach:
- Połączenie na żywo usług Analysis Services
- Chyba że dane zostaną najpierw zaimportowane do programu Power BI Desktop, skoroszyty programu Excel.
Uwaga
W przypadku skoroszytów programu Excel przechowywanych w usługach SharePoint i OneDrive można użyć klucz klienta.
- Wdrażanie modeli semantycznych
- Modele semantyczne przesyłania strumieniowego
- Metryki usługi Power BI nie obsługują obecnie funkcji BYOK
Funkcja BYOK ma zastosowanie tylko do modeli semantycznych. Modele semantyczne push, pliki Excel i CSV, które użytkownicy mogą przesyłać do usługi, nie są szyfrowane przy użyciu własnego klucza. Aby określić, które elementy są przechowywane w obszarach roboczych, użyj następującego polecenia programu PowerShell:
PS C:\> Get-PowerBIWorkspace -Scope Organization -Include All
Uwaga
To polecenie cmdlet wymaga modułu zarządzania usługi Power BI w wersji 1.0.840. Możesz sprawdzić, która wersja jest zainstalowana, uruchamiając polecenie Get-InstalledModule -Name MicrosoftPowerBIMgmt
. Zainstaluj najnowszą wersję, uruchamiając polecenie Install-Module -Name MicrosoftPowerBIMgmt
. Więcej informacji na temat polecenia cmdlet usługi Power BI i jego parametrów można uzyskać w module poleceń cmdlet programu PowerShell usługi Power BI.
Konfigurowanie usługi Azure Key Vault
W tej sekcji wyjaśniono, jak skonfigurować usługę Azure Key Vault, narzędzie do bezpiecznego przechowywania i uzyskiwania dostępu do wpisów tajnych, takich jak klucze szyfrowania. Możesz użyć istniejącego magazynu kluczy do przechowywania kluczy szyfrowania lub utworzyć nowy magazyn przeznaczony specjalnie do użycia z usługą Power BI.
W poniższych instrukcjach założono podstawową wiedzę na temat usługi Azure Key Vault. Aby uzyskać więcej informacji, zobacz Co to jest usługa Azure Key Vault?
Skonfiguruj magazyn kluczy w następujący sposób:
Dodaj usługę Power BI jako podmiot usługi dla magazynu kluczy z uprawnieniami opakowywania i rozpakowywania.
Utwórz klucz RSA o długości 4096-bitowej lub użyj istniejącego klucza tego typu z uprawnieniami zawijania i odpakowywania.
Ważne
Usługa Power BI BYOK obsługuje klucze RSA i RSA-HSM o długości 4096 bitów.
Zalecane: Sprawdź, czy magazyn kluczy ma włączoną opcję miękkiego usuwania.
Dodaj zasadę usługi
Zaloguj się do witryny Azure Portal i wyszukaj usługę Key Vault.
W magazynie kluczy wybierz Zasady dostępu, a następnie wybierz Utwórz.
Na ekranie Uprawnienia, w sekcji Uprawnienia klucza, wybierz opcje Rozpakuj klucz i Zapakuj klucz, a następnie wybierz Dalej.
Na ekranie Głównym wyszukaj i wybierz pozycję Microsoft.Azure.AnalysisServices.
Uwaga
Jeśli nie możesz znaleźć usługi Microsoft.Azure.AnalysisServices, prawdopodobnie subskrypcja platformy Azure skojarzona z usługą Azure Key Vault nigdy nie miała skojarzonego z nim zasobu usługi Power BI. Spróbuj wyszukać następujący ciąg zamiast tego: 00000009-0000-0000-c000-000000000000000000000.
Wybierz pozycję Dalej, potem Przejrzyj + utwórz>Utwórz.
Uwaga
Aby odwołać dostęp usługi Power BI do danych, usuń prawa dostępu do tej jednostki usługi z usługi Azure Key Vault.
Tworzenie klucza RSA
W magazynie kluczy, w obszarze Klucze, wybierz Generuj/Importuj.
Wybierz typklucza RSA i rozmiarklucza RSA 4096.
Wybierz pozycję Utwórz.
W obszarze Klucze wybierz utworzony klucz.
Wybierz identyfikator GUID bieżącej wersji klucza.
Sprawdź, czy oba elementy Zawijaj klucz i Odpakuj klucz są zaznaczone. Skopiuj identyfikator klucza do użycia podczas włączania funkcji BYOK w usłudze Power BI.
Opcja usuwania tymczasowego
Powinieneś włączyć miękkie usuwanie w skarbcu kluczy, zabezpieczając się przed utratą danych w przypadku przypadkowego usunięcia klucza lub całego skarbca kluczy. Aby włączyć właściwość miękkiego usunięcia, należy użyć PowerShell, ponieważ ta opcja nie jest jeszcze dostępna w Azure Portal.
Po prawidłowej konfiguracji usługi Azure Key Vault, możesz włączyć BYOK w swojej dzierżawie.
Konfigurowanie zapory usługi Azure Key Vault
W tej sekcji opisano użycie mechanizmu obejścia zapory zaufanej usługi Microsoft, aby skonfigurować zaporę dla usługi Azure Key Vault.
Uwaga
Możesz włączyć reguły zapory w key vault. Możesz również pozostawić zaporę wyłączoną w magazynie kluczy zgodnie z ustawieniem domyślnym.
Usługa Power BI jest zaufaną usługą firmy Microsoft. Możesz poinstruować zaporę magazynu kluczy, aby zezwolić na dostęp do wszystkich zaufanych usług firmy Microsoft, co jest ustawieniem umożliwiającym usłudze Power BI dostęp do magazynu kluczy bez konfigurowania połączeń punktów końcowych.
Aby skonfigurować usługę Azure Key Vault, aby zezwolić na dostęp do zaufanych usługi firmy Microsoft, wykonaj następujące kroki:
Wyszukaj Key Vaults w portalu Azure, a następnie wybierz skrytkę kluczy, której chcesz zezwolić na dostęp z usługi Power BI i wszystkich innych zaufanych usług firmy Microsoft.
Wybierz pozycję Sieć w panelu nawigacyjnym po lewej stronie.
W obszarze Zapory i sieci wirtualne wybierz pozycję Zezwalaj na dostęp publiczny z określonych sieci wirtualnych i adresów IP.
Przewiń w dół do sekcji Zapora . Wybierz pozycję Zezwalaj na zaufane usługi firmy Microsoft, aby obejść tę zaporę.
Wybierz Zastosuj.
Włączanie rozwiązania BYOK w dzierżawie
Funkcję BYOK można włączyć na poziomie dzierżawy przy użyciu programu PowerShell. Najpierw zainstaluj pakiet administracyjny usługi Power BI dla programu PowerShell i załaduj klucze szyfrowania utworzone i przechowywane w usłudze Azure Key Vault dla dzierżawy Power BI. Następnie przypisujesz te klucze szyfrowania dla pojemności Premium w celu zaszyfrowania zawartości w tej pojemności.
Ważne uwagi
Przed włączeniem funkcji BYOK należy pamiętać o następujących kwestiach:
Obecnie nie można wyłączyć funkcji BYOK po jej włączeniu. W zależności od sposobu określania parametrów dla
Add-PowerBIEncryptionKey
, można kontrolować sposób używania BYOK dla jednego lub więcej zasobów. Nie można jednak cofnąć wprowadzenia kluczy do dzierżawy. Aby uzyskać więcej informacji, zobacz Włączanie funkcji BYOK.Nie można bezpośrednio przenieść obszaru roboczego korzystającego z funkcji BYOK z pojemności w usłudze Power BI Premium do pojemności udostępnionej. Najpierw należy przenieść obszar roboczy do takiej pojemności, która nie ma włączonego rozwiązania BYOK.
Jeśli przeniesiesz obszar roboczy, który korzysta z rozwiązania BYOK z pojemności w usłudze Power BI Premium do pojemności udostępnionej, raporty i modele semantyczne staną się niedostępne, ponieważ są szyfrowane za pomocą klucza. Aby uniknąć tej sytuacji, należy najpierw przenieść obszar roboczy do pojemności, która nie ma włączonego rozwiązania BYOK.
Włącz BYOK
Aby włączyć usługę BYOK, musisz być administratorem usługi Power BI, zalogowanym przy użyciu Connect-PowerBIServiceAccount
polecenia cmdlet . Następnie użyj polecenia Add-PowerBIEncryptionKey, aby włączyć funkcję BYOK, jak pokazano w poniższym przykładzie:
Add-PowerBIEncryptionKey -Name'Contoso Sales' -KeyVaultKeyUri'https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2'
Aby dodać wiele kluczy, uruchom polecenie Add-PowerBIEncryptionKey
z różnymi wartościami dla -Name
i -KeyVaultKeyUri
.
Polecenie cmdlet akceptuje dwa parametry przełącznika, które mają wpływ na szyfrowanie dla bieżących i przyszłych pojemności. Domyślnie żaden z przełączników nie jest ustawiony:
-Activate
: wskazuje, że ten klucz jest używany dla wszystkich istniejących zasobów w dzierżawie, które nie są jeszcze zaszyfrowane.-Default
: wskazuje, że ten klucz jest teraz domyślny dla całej dzierżawy. Podczas tworzenia nowej pojemności pojemność pojemność dziedziczy ten klucz.
Ważne
Jeśli określisz -Default
, wszystkie pojemności utworzone od tego momentu na dzierżawcy są szyfrowane przy użyciu określonego klucza lub zaktualizowanego klucza domyślnego. Nie można cofnąć operacji domyślnej, więc utracisz możliwość utworzenia pojemności Premium w dzierżawie, która nie korzysta z funkcji BYOK.
Po włączeniu funkcji BYOK w dzierżawie ustaw klucz szyfrowania dla co najmniej jednej pojemności usługi Power BI:
Użyj polecenia Get-PowerBICapacity , aby uzyskać identyfikator pojemności wymagany do następnego kroku.
Get-PowerBICapacity -Scope Individual
Polecenie cmdlet zwraca dane wyjściowe podobne do następujących danych wyjściowych:
Id : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx DisplayName : Test Capacity Admins : adam@sometestdomain.com Sku : P1 State : Active UserAccessRight : Admin Region : North Central US
Użyj Set-PowerBICapacityEncryptionKey, aby ustawić klucz szyfrowania:
Set-PowerBICapacityEncryptionKey -CapacityId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -KeyName 'Contoso Sales'
Masz kontrolę nad tym, jak korzystasz z BYOK w obrębie swojej dzierżawy. Aby na przykład zaszyfrować pojedynczą pojemność, wywołaj metodę Add-PowerBIEncryptionKey
bez -Activate
lub -Default
. Następnie wywołaj Set-PowerBICapacityEncryptionKey
dla pojemności, w której chcesz włączyć funkcję BYOK.
Zarządzanie usługą BYOK
Usługa Power BI udostępnia dodatkowe polecenia cmdlet ułatwiające zarządzanie usługą BYOK w dzierżawie:
Użyj polecenia Get-PowerBICapacity, aby uzyskać klucz, który obecnie wykorzystuje pojemność:
Get-PowerBICapacity -Scope Organization -ShowEncryptionKey
Użyj polecenia Get-PowerBIEncryptionKey, aby uzyskać klucz, którego dzierżawca używa obecnie:
Get-PowerBIEncryptionKey
Użyj polecenia Get-PowerBIWorkspaceEncryptionStatus , aby sprawdzić, czy modele semantyczne w obszarze roboczym są szyfrowane i czy ich stan szyfrowania jest zsynchronizowany z obszarem roboczym:
Get-PowerBIWorkspaceEncryptionStatus -Name'Contoso Sales'
Należy pamiętać, że szyfrowanie jest włączone na poziomie pojemności, ale stan szyfrowania jest wyświetlany na poziomie modelu semantycznego dla określonego obszaru roboczego.
Użyj przełącznika Switch-PowerBIEncryptionKey , aby przełączyć (lub obrócić) wersję klucza używanego do szyfrowania. Polecenie cmdlet po prostu aktualizuje
-KeyVaultKeyUri
dla klucza-Name
:Switch-PowerBIEncryptionKey -Name'Contoso Sales' -KeyVaultKeyUri'https://contoso-vault2.vault.azure.net/keys/ContosoKeyVault/b2ab4ba1c7b341eea5ecaaa2wb54c4d2'
Należy pamiętać, że bieżący klucz powinien być włączony.