Udostępnij za pośrednictwem


Ochrona zasobów usługi Azure Quantum za pomocą blokad usługi Azure Resource Manager (ARM)

Firma Microsoft zaleca zablokowanie wszystkich obszarów roboczych usługi Azure Quantum i połączonych kont magazynu za pomocą blokady zasobów usługi Azure Resource Manager (ARM), aby zapobiec przypadkowemu lub złośliwemu usunięciu. Na przykład profesorowie mogą chcieć ograniczyć studentom możliwość modyfikowania jednostek SKU dostawcy, ale nadal umożliwiają im korzystanie z notesów i przesyłanie zadań.

Istnieją dwa typy blokad zasobów usługi ARM:

  • Blokada CannotDelete uniemożliwia użytkownikom usunięcie zasobu, ale zezwala na odczytywanie i modyfikowanie jego konfiguracji.
  • Blokada ReadOnly uniemożliwia użytkownikom modyfikowanie konfiguracji zasobu (w tym jej usunięcie), ale zezwala na odczytywanie jego konfiguracji. Aby uzyskać więcej informacji na temat blokad zasobów, zobacz Blokowanie zasobów, aby zapobiec nieoczekiwanym zmianom.

Uwaga

Jeśli już używasz szablonu usługi ARM lub Bicep do zarządzania obszarami roboczymi usługi Azure Quantum, możesz dodać procedury opisane w tym artykule do istniejących szablonów.

W poniższej tabeli przedstawiono zalecane konfiguracje blokady zasobów do wdrożenia dla obszaru roboczego usługi Azure Quantum.

Zasób Typ blokady Uwagi
Workspace Usuń Uniemożliwia usunięcie obszaru roboczego.
Workspace Tylko odczyt Zapobiega wszelkim modyfikacjom obszaru roboczego, w tym dodawaniu lub usuwaniu dostawców, jednocześnie umożliwiając użytkownikom tworzenie i usuwanie notesów oraz przesyłanie zadań. Aby zmodyfikować dostawców po ustawieniu tej blokady, należy usunąć blokadę zasobu, wprowadzić zmiany, a następnie ponownie wdrożyć blokadę.
Konto magazynu Usuń Uniemożliwia usunięcie konta magazynu.

Należy unikać następujących konfiguracji:

Ważne

Ustawienie następujących blokad usługi ARM może spowodować nieprawidłowe działanie obszaru roboczego.

Zasób Typ blokady Uwagi
Konto magazynu Tylko odczyt Ustawienie blokady zasobów tylko do odczytu na koncie magazynu może spowodować błędy podczas tworzenia obszaru roboczego, interfejsu notesów Jupyter i przesyłania i pobierania zadań.
Nadrzędna subskrypcja obszaru roboczego lub nadrzędnej grupy zasobów obszaru roboczego lub konta magazynu Tylko odczyt Po zastosowaniu blokady zasobów do zasobu nadrzędnego wszystkie zasoby w ramach tego elementu nadrzędnego dziedziczą tę samą blokadę, w tym zasoby utworzone w późniejszym terminie. Aby uzyskać bardziej szczegółową kontrolę, blokady zasobów powinny być stosowane bezpośrednio na poziomie zasobu.

Wymagania wstępne

Aby zastosować blokady zasobów usługi ARM, musisz być właścicielem lub administratorem dostępu użytkowników . Aby uzyskać więcej informacji, zobacz Role wbudowane platformy Azure.

Wdrażanie wiersza polecenia

Aby wdrożyć blokadę, musisz Azure PowerShell lub interfejsu wiersza polecenia platformy Azure. Jeśli używasz interfejsu wiersza polecenia platformy Azure, musisz mieć najnowszą wersję. Aby uzyskać instrukcje instalacji, zobacz:

Ważne

Jeśli wcześniej nie używasz interfejsu wiersza polecenia platformy Azure z usługą Azure Quantum, wykonaj kroki opisane w sekcji Konfiguracja środowiska , aby dodać quantum rozszerzenie i zarejestrować przestrzeń nazw usługi Azure Quantum.

Logowanie do platformy Azure

Po zainstalowaniu interfejsu wiersza polecenia platformy Azure lub Azure PowerShell upewnij się, że logujesz się po raz pierwszy. Wybierz jedną z następujących kart i uruchom odpowiednie polecenia wiersza polecenia, aby zalogować się na platformie Azure:

az login

Jeśli masz wiele subskrypcji platformy Azure, wybierz subskrypcję z zasobami, które chcesz zablokować. Zastąp SubscriptionName ciąg nazwą subskrypcji lub identyfikatorem subskrypcji. Na przykład

az account set --subscription "Azure subscription 1"

Tworzenie blokady zasobów usługi ARM

Podczas wdrażania blokady zasobów należy określić nazwę blokady, typ blokady i dodatkowe informacje o zasobie. Te informacje można skopiować i wkleić ze strony głównej zasobu w witrynie Azure Quantum Portal.

az lock create \
    --name <lock> \
    --resource-group <resource-group> \
    --resource <workspace> \
    --lock-type CanNotDelete \
    --resource-type Microsoft.Quantum/workspaces

  • name: opisowa nazwa blokady
  • grupa zasobów: nazwa nadrzędnej grupy zasobów.
  • resource: nazwa zasobu, do których ma być zastosowana blokada.
  • lock-type: typ blokady do zastosowania, CanNotDelete lub ReadOnly.
  • typ zasobu: typ target zasobu.

Aby na przykład utworzyć blokadę CanNotDelete w obszarze roboczym:

az lock create \
    --name ArmLockWkspDelete \
    --resource-group armlocks-resgrp \
    --resource armlocks-wksp \
    --lock-type CanNotDelete \
    --resource-type Microsoft.Quantum/workspaces

W przypadku powodzenia platforma Azure zwraca konfigurację blokady w formacie JSON:

{
  "id": "/subscriptions/<ID>/resourcegroups/armlocks-resgrp/providers/Microsoft.Quantum/workspaces/armlocks-wksp/providers/Microsoft.Authorization/locks/ArmLockWkspDelete",
  "level": "CanNotDelete",
  "name": "ArmLockWkspDelete",
  "notes": null,
  "owners": null,
  "resourceGroup": "armlocks-resgrp",
  "type": "Microsoft.Authorization/locks"
}

Aby utworzyć blokadę ReadOnly w obszarze roboczym:

az lock create \
    --name ArmLockWkspRead \
    --resource-group armlocks-resgrp \
    --resource armlocks-wksp \
    --lock-type ReadOnly \
    --resource-type Microsoft.Quantum/workspaces
{
  "id": "/subscriptions/<ID>/resourcegroups/armlocks-resgrp/providers/Microsoft.Quantum/workspaces/armlocks-wksp/providers/Microsoft.Authorization/locks/ArmLockWkspRead",
  "level": "ReadOnly",
  "name": "ArmLockWkspRead",
  "notes": null,
  "owners": null,
  "resourceGroup": "armlocks-resgrp",
  "type": "Microsoft.Authorization/locks"
}

Aby utworzyć blokadę CanNotDelete na koncie magazynu:

az lock create \
    --name ArmLockStoreDelete \
    --resource-group armlocks-resgrp \
    --resource armlocksstorage \--lock-type CanNotDelete \
    --resource-type Microsoft.Storage/storageAccounts
{
  "id": "/subscriptions/<ID>/resourcegroups/armlocks-resgrp/providers/Microsoft.Storage/storageAccounts/armlocksstorage/providers/Microsoft.Authorization/locks/ArmLockStoreDelete",
  "level": "CanNotDelete",
  "name": "ArmLockStoreDelete",
  "notes": null,
  "owners": null,
  "resourceGroup": "armlocks-resgrp",
  "type": "Microsoft.Authorization/locks"
}

Wyświetlanie i usuwanie blokad

Aby wyświetlić lub usunąć blokady:

Aby uzyskać więcej informacji, zobacz az lock reference .

Wyświetlanie wszystkich blokad w subskrypcji

az lock list

Wyświetlanie wszystkich blokad w obszarze roboczym

az lock list \
    --resource-group armlocks-resgrp \
    --resource-name armlocks-wksp  \
    --resource-type Microsoft.Quantum/workspaces

Wyświetlanie wszystkich blokad dla wszystkich zasobów w grupie zasobów

az lock list --resource-group armlocks-resgrp

Wyświetlanie właściwości pojedynczej blokady

az lock show \
    --name ArmLockStoreDelete \
    --resource-group armlocks-resgrp \
    --resource-name armlocksstorage \
    --resource-type  Microsoft.Storage/storageAccounts

Usuwanie blokady

az lock delete \
    --name ArmLockStoreDelete \
    --resource-group armlocks-resgrp \
    --resource-name armlocksstorage \
    --resource-type  Microsoft.Storage/storageAccounts

Jeśli usunięcie zakończy się pomyślnie, platforma Azure nie zwróci komunikatu. Aby zweryfikować usunięcie, możesz uruchomić polecenie az lock list.

Następne kroki