Przenoszenie magazynu kluczy platformy Azure do innej subskrypcji

Uwaga

W tym artykule użyto modułu Azure Az programu PowerShell, który jest zalecanym modułem programu PowerShell do interakcji z platformą Azure. Aby rozpocząć pracę z modułem Azure PowerShell, zobacz Instalowanie programu Azure PowerShell. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Omówienie

Ważne

Przeniesienie magazynu kluczy do innej subskrypcji spowoduje niezgodną zmianę środowiska. Przed podjęciem decyzji o przeniesieniu magazynu kluczy do nowej subskrypcji upewnij się, że rozumiesz wpływ tej zmiany i postępuj zgodnie ze wskazówkami zawartymi w tym artykule. Jeśli używasz tożsamości usługi zarządzanej (MSI), przeczytaj instrukcje po przeniesieniu na końcu dokumentu.

Usługa Azure Key Vault jest automatycznie powiązana z domyślnym identyfikatorem dzierżawy usługi Azure Active Directory dla subskrypcji, w której została utworzona. Identyfikator dzierżawy skojarzony z subskrypcją można znaleźć, postępując zgodnie z tym przewodnikiem. Wszystkie wpisy zasad dostępu i przypisania ról są również powiązane z tym identyfikatorem dzierżawy. Jeśli przeniesiesz subskrypcję platformy Azure z dzierżawy A do dzierżawy B, istniejące magazyny kluczy będą niedostępne dla jednostek usługi (użytkowników i aplikacji) w dzierżawie B. Aby rozwiązać ten problem, należy wykonać następujące kroki:

Uwaga

Jeśli usługa Key Vault jest tworzona za pośrednictwem usługi Azure Lighthouse, jest ona powiązana z identyfikatorem dzierżawy. Usługa Azure Lighthouse jest obsługiwana tylko przez model uprawnień zasad dostępu magazynu. Aby uzyskać więcej informacji na temat dzierżaw w usłudze Azure Lighthouse, zobacz Dzierżawy, użytkownicy i role w usłudze Azure Lighthouse.

  • Zmień identyfikator dzierżawy skojarzony ze wszystkimi istniejącymi magazynami kluczy w subskrypcji na dzierżawę B.
  • usunąć wszystkie istniejące wpisy zasad dostępu,
  • Dodaj nowe wpisy zasad dostępu skojarzone z dzierżawą B.

Aby uzyskać więcej informacji na temat usługi Azure Key Vault i usługi Azure Active Directory, zobacz

Ograniczenia

Ważne

Nie można przenieść magazynów kluczy używanych do szyfrowania dysków Jeśli używasz magazynu kluczy z szyfrowaniem dysków dla maszyny wirtualnej, nie można przenieść magazynu kluczy do innej grupy zasobów lub subskrypcji podczas włączania szyfrowania dysków. Przed przeniesieniem magazynu kluczy do nowej grupy zasobów lub subskrypcji należy wyłączyć szyfrowanie dysków.

Niektóre jednostki usługi (użytkownicy i aplikacje) są powiązane z określoną dzierżawą. W przypadku przeniesienia magazynu kluczy do subskrypcji w innej dzierżawie istnieje prawdopodobieństwo, że nie będzie można przywrócić dostępu do określonej jednostki usługi. Upewnij się, że wszystkie podstawowe jednostki usługi istnieją w dzierżawie, w której przenosisz magazyn kluczy.

Wymagania wstępne

Istniejące role można sprawdzić przy użyciu witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia platformy Azure lub interfejsu API REST.

Przenoszenie magazynu kluczy do nowej subskrypcji

  1. Zaloguj się do witryny Azure Portal pod adresem https://portal.azure.com.
  2. Przejdź do magazynu kluczy
  3. Kliknij kartę "Przegląd"
  4. Wybierz przycisk "Przenieś"
  5. Wybierz pozycję "Przenieś do innej subskrypcji" z opcji listy rozwijanej
  6. Wybierz grupę zasobów, w której chcesz przenieść magazyn kluczy
  7. Potwierdzanie ostrzeżenia dotyczącego przenoszenia zasobów
  8. Wybierz pozycję „OK”

Dodatkowe kroki, gdy subskrypcja znajduje się w nowej dzierżawie

Jeśli magazyn kluczy został przeniesiony do subskrypcji w nowej dzierżawie, należy ręcznie zaktualizować identyfikator dzierżawy i usunąć stare zasady dostępu i przypisania ról. Poniżej przedstawiono samouczki dotyczące tych kroków w programie PowerShell i interfejsie wiersza polecenia platformy Azure. Jeśli używasz programu PowerShell, może być konieczne uruchomienie polecenia Clear-AzContext udokumentowane poniżej, aby umożliwić wyświetlanie zasobów poza bieżącym wybranym zakresem.

Aktualizowanie identyfikatora dzierżawy w magazynie kluczy

Select-AzSubscription -SubscriptionId <your-subscriptionId>                # Select your Azure Subscription
$vaultResourceId = (Get-AzKeyVault -VaultName myvault).ResourceId          # Get your key vault's Resource ID 
$vault = Get-AzResource -ResourceId $vaultResourceId -ExpandProperties     # Get the properties for your key vault
$vault.Properties.TenantId = (Get-AzContext).Tenant.TenantId               # Change the Tenant that your key vault resides in
$vault.Properties.AccessPolicies = @()                                     # Access policies can be updated with real
                                                                           # applications/users/rights so that it does not need to be                             # done after this whole activity. Here we are not setting 
                                                                           # any access policies. 
Set-AzResource -ResourceId $vaultResourceId -Properties $vault.Properties  # Modifies the key vault's properties.

Clear-AzContext                                                            #Clear the context from PowerShell
Connect-AzAccount                                                          #Log in again to confirm you have the correct tenant id
az account set -s <your-subscriptionId>                                    # Select your Azure Subscription
$tenantId=$(az account show --query tenantId)                               # Get your tenantId
az keyvault update -n myvault --remove Properties.accessPolicies           # Remove the access policies
az keyvault update -n myvault --set Properties.tenantId=$tenantId          # Update the key vault tenantId

Aktualizowanie zasad dostępu i przypisań ról

Uwaga

Jeśli usługa Key Vault korzysta z modelu uprawnień RBAC platformy Azure . Należy również usunąć przypisania ról magazynu kluczy. Przypisania ról można usunąć przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu PowerShell.

Teraz, gdy magazyn jest skojarzony z prawidłowym identyfikatorem dzierżawy, a stare wpisy zasad dostępu lub przypisania ról zostaną usunięte, ustaw nowe wpisy zasad dostępu lub przypisania ról.

Aby przypisać zasady, zobacz:

Aby dodać przypisania ról, zobacz:

Aktualizowanie tożsamości zarządzanych

Jeśli przenosisz całą subskrypcję i używasz tożsamości zarządzanej dla zasobów platformy Azure, musisz zaktualizować ją również do nowej dzierżawy usługi Azure Active Directory. Aby uzyskać więcej informacji na temat tożsamości zarządzanych, omówienie tożsamości zarządzanej.

Jeśli używasz tożsamości zarządzanej, musisz również zaktualizować tożsamość, ponieważ stara tożsamość nie będzie już znajdować się w odpowiedniej dzierżawie usługi Azure Active Directory. Zapoznaj się z poniższymi dokumentami, aby rozwiązać ten problem.

Następne kroki