Udostępnij za pośrednictwem


Zarządzanie zaszyfrowanymi danymi w usłudze Windows Azure Pack

 

Dotyczy: Windows Azure Pack

Windows Azure Pack for Windows Server używa algorytmów szyfrowania, kluczy szyfrowania i haseł w celu zabezpieczenia komunikacji między bazami danych a użytkownikami w portalu zarządzania. Te dane są przechowywane w dwóch lub trzech lokalizacjach.

Aby chronić bezpieczeństwo danych, należy regularnie zmieniać lub obracać dane. Po zmianie danych w jednej lokalizacji należy zmienić je we wszystkich lokalizacjach.

Udostępniamy arkusz kalkulacyjny zawierający listę wszystkich algorytmów szyfrowania, kluczy i haseł oraz ich przechowywanych lokalizacji. Ten arkusz kalkulacyjny zawiera również informacje na temat sposobu zmieniania poszczególnych punktów danych. Dostęp do arkusza kalkulacyjnego można uzyskać w pakiecie dokumentacji technicznej pakietu Windows Azure Pack (https://go.microsoft.com/fwlink/?LinkId=329811) dostępnym w Centrum pobierania Microsoft. Kliknij przycisk Pobierz, wybierz plik WAPv1_encryption.xsl, a następnie kliknij przycisk Dalej , aby rozpocząć pobieranie pliku.

Możesz również użyć analizatora najlepszych rozwiązań dla Windows Azure Pack, aby zweryfikować bezpieczeństwo danych. Aby uzyskać informacje na temat analizatora najlepszych rozwiązań, zobacz Skanowanie składników Windows Azure Pack.

Aby zarządzać zaszyfrowanymi danymi, skorzystaj z poniższych informacji:

  • Zmienianie hasła bazy danych

  • Rotacja zaszyfrowanych danych związanych z kluczem maszyny

  • Rotacja algorytmów szyfrowania i kluczy

  • Zmienianie hasła interfejsu API Administracja użycia

  • Zmienianie haseł związanych z dostawcami zasobów

  • Zmienianie hasła związanego z usługą Service Reporting

Zmienianie hasła bazy danych

Istnieje kilka baz danych w Windows Azure Pack, z których każde ma hasło bazy danych. Aby obrócić hasła bazy danych, wykonaj następujące kroki:

Aby obrócić hasło bazy danych

  1. Uzyskaj nowe hasło. Uruchom następujące polecenie cmdlet:

    $password = New-MgmtSvcPassword –Length 64
    
  2. Użyj danych w arkuszu kalkulacyjnym, aby znaleźć i obrócić hasło bazy danych w pierwszej lokalizacji. Jeśli na przykład obracasz hasło bazy danych dla interfejsu API Administracja, pierwszą lokalizacją jest magazyn konfiguracji wpisu tajnego (sprawdź kolumnę C dla lokalizacji 1).

    Uruchom następujące polecenie cmdlet, aby zmienić hasło:

    Set-MgmtSvcDatabaseSetting <Service>  <Secret>  $password -Server <Server> -Passphrase <Passphrase> -Database “Microsoft.MgmtSvc.Config” -Force
    
  3. Następnie znajdź trzecią lokalizację hasła bazy danych i obróć hasło bazy danych. W powyższym przykładzie dla hasła bazy danych interfejsu API Administracja jest to SQL Server identyfikator logowania zabezpieczeń (sprawdź kolumnę G dla lokalizacji 3).

    Uruchom następujące polecenie cmdlet:

    Set-MgmtSvcDatabaseUser -Server <Server> -Database <Database> -Schema <Schema> -User <User> -UserPassword $password
    
  4. Na koniec znajdź drugą lokalizację hasła bazy danych i obróć hasło. Ponownie dla hasła bazy danych interfejsu API Administracja jest to web.config parametry połączenia (sprawdź kolumnę E dla lokalizacji 2).

    Uruchom następujące polecenia cmdlet:

    $setting = Get-MgmtSvcDatabaseSetting <Service> <Secret> -Server <Server> -Passphrase <Passphrase>
    $connectionString = Get-MgmtSvcSetting $namespace <ConnectionString>
    $builder = New-Object System.Data.SqlClient.SqlConnectionStringBuilder($connectionString.Value)
    $builder.Password = $setting.Value
    Set-MgmtSvcSetting <Service> <ConnectionString> $builder.ConnectionString
    

Ustawienia i klucze odszyfrowywania i walidacji dla interfejsu API Administracja, portalu zarządzania dla administratorów (AdminSite), witryny uwierzytelniania (AuthSite), portalu zarządzania dla dzierżaw (TenantSite) i witryny uwierzytelniania Windows (WindowsAuthSite) są przechowywane przy użyciu klucza komputera. Aby obrócić te dane, wykonaj następujące czynności.

  1. Uzyskaj nowy klucz maszyny. Poniższy przykład pobiera nowy klucz maszyny dla machineKey.decrytpion dla usługi interfejsu API Administracja. Te kroki umożliwiają zmianę innych wartości klucza maszyny.

    Uruchom następujące polecenia cmdlet, aby uzyskać nowy klucz maszyny:

    $machineKey = New-MgmtSvcMachineKey
    $decryption = $machineKey.Attribute('decryption').Value
    
  2. Użyj danych w arkuszu kalkulacyjnym, aby znaleźć pierwszą lokalizację pliku machineKey.decryption. W przypadku usługi interfejsu API Administracja jest to magazyn konfiguracji wpisów tajnych.

    Uruchom następujące polecenie cmdlet, aby zmienić ustawienie machineKey.decryption:

    Set-MgmtSvcDatabaseSetting <Service> "machineKey.decryption" $decryption -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Znajdź drugą lokalizację pliku machineKey.decryption. W przypadku usługi interfejsu API Administracja jest to sekcja machineKey web.config.

    Uruchom następujące polecenia cmdlet, aby zmienić ustawienie machineKey.decryption:

    $decryption = Get-MgmtSvcDatabaseSetting <Service> “machineKey.decryption” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "machineKey.decryption" $decryption.Value
    

Rotacja algorytmów szyfrowania i kluczy

Wykonaj poniższe kroki, aby obrócić algorytmy szyfrowania i klucze szyfrowania.

Aby obrócić algorytmy szyfrowania i klucze szyfrowania

  1. Uzyskaj nowy klucz maszyny. Poniższy przykład pobiera nowy klucz maszyny dla algorytmu szyfrowania powiadomień i klucza dla lokacji Administracja. Te kroki umożliwiają zmianę innych algorytmów szyfrowania i kluczy.

    Uwaga

    Te same klucze są używane do szyfrowania i odszyfrowywania. W zależności od wykonanej operacji można je traktować zarówno jako klucze szyfrowania, jak i odszyfrowywania. W związku z tym używamy poniższej wartości odszyfrowywania , chociaż obracany klucz jest kluczem szyfrowania .

    Uruchom następujące polecenia cmdlet, aby uzyskać nowy klucz maszyny:

    $machineKey = New-MgmtSvcMachineKey
    $encryption = $machineKey.Attribute('decryption').Value
    $encryptionKey = $machineKey.Attribute('decryptionKey').Value
    
  2. Użyj danych w arkuszu kalkulacyjnym, aby znaleźć pierwszą lokalizację algorytmu szyfrowania lub klucza. W przypadku algorytmu szyfrowania powiadomień i klucza lokacji Administracja jest to magazyn konfiguracji wpisów tajnych.

    Uruchom następujące polecenia cmdlet, aby zmienić algorytm szyfrowania i klucz:

    Set-MgmtSvcDatabaseSetting <Service> "NotificationEncryptionAlgorithm " $encryption -Server <Server> -Passphrase <Passphrase> -Force
    Set-MgmtSvcDatabaseSetting <Service> "EncryptionKey " $encryptionKey -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Znajdź drugą lokalizację algorytmu szyfrowania lub klucza. W przypadku algorytmu szyfrowania powiadomień i klucza witryny Administracja jest to sekcja ustawień aplikacji web.config.

    Uruchom następujące polecenia cmdlet, aby zmienić algorytm szyfrowania i klucz:

    $encryption = Get-MgmtSvcDatabaseSetting <Service> “NotificationEncryptionAlgorithm” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "NotificationEncryptionAlgorithm" $encryption.Value
    $encryptionKey = Get-MgmtSvcDatabaseSetting <Service> “EncryptionKey” –Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> "EncryptionKey" $encryptionKey.Value
    

Zmienianie hasła interfejsu API Administracja użycia

W przeciwieństwie do haseł używanych przez dostawców zasobów (które opisano w następnej sekcji), hasło interfejsu API Administracja użycia jest przechowywane w magazynie konfiguracji wpisów tajnych i w sekcji ustawień aplikacji web.config. Wykonaj poniższe kroki, aby zmienić hasło interfejsu API Administracja użycia.

Aby obrócić hasło interfejsu API Administracja użycia

  1. Uzyskaj nowe hasło. Uruchom następujące polecenie cmdlet:

    $password = New-MgmtSvcPassword
    
  2. Zmień hasło w pierwszej lokalizacji — magazynie Secret Config. Uruchom następujące polecenie cmdlet:

    Set-MgmtSvcDatabaseSetting <Service>  <Secret>  $password -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Zmień hasło w drugiej lokalizacji w sekcji ustawienia aplikacji web.config. Uruchom następujące polecenia cmdlet:

    $setting = Get-MgmtSvcDatabaseSetting <Service> <Secret> -Server <Server> -Passphrase <Passphrase>
    Set-MgmtSvcSetting <Service> <Secret> $setting.Value
    

Użyj poniższych informacji, aby obrócić hasła dla dostawców zasobów Monitorowanie, MySQL, SQL Server i Użycie.

Aby wymienić hasła dostawcy zasobów

  1. Uzyskaj nowe hasło dla dostawcy zasobów. Uruchom następujące polecenie cmdlet:

    $password = New-MgmtSvcPassword
    
  2. Zmień hasło w pierwszej lokalizacji. Uruchom następujące polecenie cmdlet:

    Set-MgmtSvcDatabaseSetting <Service> “Password” $pw -Server <Server> -Passphrase <Passphrase> -Force
    
  3. Zmień hasło w trzeciej lokalizacji.

    Uwaga

    W przypadku usługi Monitorowania hasło nosi nazwę "MonitoringRestBasicAuthKnownPassword". W przypadku innych dostawców zasobów hasło nosi nazwę "Hasło".

    Uruchom następujące polecenie cmdlet:

    Set-MgmtSvcSetting <Service>  “Password” $pw -Encode
    
  4. Zmień hasło w drugiej lokalizacji.

    Uwaga

    Następujące polecenia cmdlet zmieniają hasło dla wszystkich czterech punktów końcowych, ale nie wszyscy dostawcy zasobów mają wszystkie te punkty końcowe. Przyjrzyj się wynikom $rp, aby zidentyfikować punkty końcowe dla każdego dostawcy zasobów, a następnie odpowiednio dostosować wartości AuthenticationPassword.

    Uruchom następujące polecenia cmdlet:

    $rp = Get-MgmtSvcResourceProviderConfiguration <Resource Provider Name> -DecryptPassword
    $rp.AdminEndpoint.AuthenticationPassword = $pw
    $rp.TenantEndpoint.AuthenticationPassword = $pw
    $rp.UsageEndpoint.AuthenticationPassword = $pw
    $rp.NotificationEndpoint.AuthenticationPassword = $pw
    Add-MgmtSvcResourceProviderConfiguration $rp -Force
    

Jeśli używasz usługi Service Reporting z programem Windows Azure Pack, musisz zaktualizować hasło na maszynach wirtualnych SQL na potrzeby raportowania usług podczas zmiany hasła dla usługi Użycie.

Wykonaj następujące kroki, aby zresetować hasło.

Aby zmienić hasła maszyn wirtualnych SQL na potrzeby raportowania usług

  1. Na maszynie wirtualnej, na której zainstalowano bazę danych SQL, która obsługuje usługę Service Reporting, upewnij się, że zadanie agenta usługi Service Reporting SQL nie jest uruchomione. Aby wyświetlić stan zadania, wykonaj następujące czynności:

    1. Połączenie do <wystąpienia bazy danych prefiks-DW-SQL>\CPSDW.

    2. W Eksplorator obiektów rozwiń węzeł SQL Server Agent.

    3. Kliknij pozycję Zadania.

    4. Na karcie Widok kliknij pozycję Eksplorator obiektów Szczegóły.

      Sprawdź kolumnę Stan , aby sprawdzić, czy zadanie agenta jest uruchomione.

  2. Raportowanie usług zawiera skrypt, który można uruchomić, aby zmienić hasło. Uruchom następujące polecenie cmdlet z poziomu wiersza polecenia programu PowerShell, aby uruchomić ten skrypt.

    \\<Service reporting host>\ServiceReporting\Maintenance\PostDeploymentConfig.ps1 -User UsageClient –Password $newPassword