Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Microsoft recomenda bloquear todos os workspaces do Azure Quantum e contas de armazenamento vinculadas com um bloqueio de recurso do ARM (Azure Resource Manager) para evitar a exclusão acidental ou mal-intencionada. Por exemplo, os professores podem querer impedir que os alunos modifiquem SKUs de provedor, mas ainda permitem que eles enviem trabalhos.
Há dois tipos de bloqueios de recursos do ARM:
- Um bloqueio CannotDelete impede que os usuários excluam um recurso, mas permite ler e modificar sua configuração.
- Um bloqueio ReadOnly impede que os usuários modifiquem a configuração de um recurso (incluindo excluí-lo), mas permite a leitura de sua configuração. Para obter mais informações sobre bloqueios de recursos, consulte Bloquear recursos para evitar alterações inesperadas.
Observação
Se você já usar um modelo ARM ou Bicep para gerenciar seus workspaces do Azure Quantum, poderá adicionar os procedimentos neste artigo aos modelos existentes.
Configurações de bloqueio recomendadas
A tabela a seguir mostra as configurações de bloqueio de recursos recomendadas a serem implantadas para um workspace do Azure Quantum.
| Recurso | Tipo de bloqueio | Anotações |
|---|---|---|
| Espaço de Trabalho | Excluir | Impede que o espaço de trabalho seja excluído. |
| Espaço de Trabalho | Somente leitura | Impede qualquer modificação no workspace, incluindo adições ou exclusões de provedores, ao mesmo tempo em que permite que os usuários enviem trabalhos. Para modificar os provedores quando esse bloqueio estiver definido, você precisa remover o bloqueio de recursos, fazer suas alterações e reimplantar o bloqueio. |
| Conta de armazenamento | Excluir | Impede que a conta de armazenamento seja excluída. |
As seguintes configurações devem ser evitadas:
Importante
Definir os bloqueios do ARM a seguir pode fazer com que o workspace funcione incorretamente.
| Recurso | Tipo de bloqueio | Anotações |
|---|---|---|
| Conta de armazenamento | Somente leitura | A configuração de um bloqueio de recurso somente leitura na conta de armazenamento pode causar falhas na criação do espaço de trabalho, na submissão de tarefas e na recuperação de tarefas. |
| Assinatura pai do workspace ou do grupo de recursos pai da conta de armazenamento ou workspace | Somente leitura | Quando um bloqueio de recurso é aplicado a um recurso pai, todos os recursos sob esse pai herdam o mesmo bloqueio, incluindo recursos criados posteriormente. Para um controle mais granular, os bloqueios de recursos devem ser aplicados diretamente no nível do recurso. |
Pré-requisitos
Você deve ser um Proprietário ou Administrador de Acesso do Usuário de um recurso para aplicar bloqueios de recursos do ARM. Para obter mais informações, consulte funções integradas do Azure.
Implantação de linha de comando
Você precisará do Azure PowerShell ou da CLI do Azure para implantar o bloqueio. Se você usar a CLI do Azure, deverá ter a versão mais recente. Para obter as instruções de instalação, confira:
Importante
Se você não usou a CLI do Azure com o Azure Quantum antes, siga as etapas na seção Configuração do Ambiente para adicionar a quantum extensão e registrar o namespace do Azure Quantum.
Entrar no Azure
Depois de instalar a CLI do Azure ou o Azure PowerShell, certifique-se de entrar pela primeira vez. Escolha uma das seguintes guias e execute os comandos de linha de comando correspondentes para entrar no Azure:
az login
Se você tiver várias assinaturas do Azure, selecione a assinatura com os recursos que deseja bloquear. Substitua SubscriptionName pelo nome da assinatura ou pela ID da assinatura. Por exemplo
az account set --subscription "Azure subscription 1"
Criar um bloqueio de recursos do ARM
Ao implantar um bloqueio de recurso, especifique um nome para o bloqueio, o tipo de bloqueio e informações adicionais sobre o recurso. Essas informações podem ser copiadas e coladas da home page do recurso no portal do Azure Quantum.
az lock create \
--name <lock> \
--resource-group <resource-group> \
--resource <workspace> \
--lock-type CanNotDelete \
--resource-type Microsoft.Quantum/workspaces
- nome: um nome descritivo para a trava
- grupo de recursos: o nome do grupo de recursos pai.
- recurso: o nome do recurso ao qual aplicar o bloqueio.
- tipo de bloqueio: o tipo de bloqueio a ser aplicado, CanNotDelete ou ReadOnly.
- resource-type: o tipo do recurso target.
Por exemplo, para criar um bloqueio CanNotDelete em um workspace:
az lock create \
--name ArmLockWkspDelete \
--resource-group armlocks-resgrp \
--resource armlocks-wksp \
--lock-type CanNotDelete \
--resource-type Microsoft.Quantum/workspaces
Se tiver êxito, o Azure retornará a configuração de bloqueio no formato 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"
}
Para criar um bloqueio ReadOnly em uma área de trabalho:
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"
}
Para criar um bloqueio CanNotDelete em uma conta de armazenamento:
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"
}
Exibindo e excluindo bloqueios
Para exibir ou excluir bloqueios:
Para obter mais informações, confira a referência az lock.
Exibir todos os bloqueios em uma assinatura
az lock list
Exibir todos os bloqueios em um espaço de trabalho
az lock list \
--resource-group armlocks-resgrp \
--resource-name armlocks-wksp \
--resource-type Microsoft.Quantum/workspaces
Exibir todos os bloqueios para todos os recursos em um grupo de recursos
az lock list --resource-group armlocks-resgrp
Exibir as propriedades de um único bloqueio
az lock show \
--name ArmLockStoreDelete \
--resource-group armlocks-resgrp \
--resource-name armlocksstorage \
--resource-type Microsoft.Storage/storageAccounts
Excluir um bloqueio
az lock delete \
--name ArmLockStoreDelete \
--resource-group armlocks-resgrp \
--resource-name armlocksstorage \
--resource-type Microsoft.Storage/storageAccounts
Se a exclusão for bem-sucedida, o Azure não retornará uma mensagem. Para verificar a exclusão, você pode executar az lock list.