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.
É possível usar uma SAS (assinatura de acesso compartilhado) para delegar acesso a recursos em sua conta do Armazenamento do Microsoft Azure. Um token SAS inclui o recurso de destino, as permissões concedidas e o intervalo pelo qual o acesso é permitido. As melhores práticas recomendam que você limite o intervalo de uma SAS em caso de comprometimento. Ao definir uma política de expiração sas para suas contas de armazenamento, você pode recomendar ou impor um limite de expiração superior (intervalo máximo de validade) quando um usuário cria uma SAS de delegação de usuário, uma SAS de serviço ou uma SAS de conta.
Para obter mais informações sobre assinaturas de acesso compartilhado, confira Conceder acesso limitado a recursos de Armazenamento do Azure usando SAS (assinaturas de acesso compartilhado).
Importante
Para cenários em que são usadas assinaturas de acesso compartilhado, a Microsoft recomenda o uso de um SAS de delegação de usuário. Um SAS de delegação de usuário é protegido com credenciais do Microsoft Entra em vez da chave da conta, o que fornece segurança superior.
Sobre as políticas de expiração de SAS
Você pode configurar uma política de expiração de SAS na conta de armazenamento. A política de expiração sas especifica o limite superior para o intervalo de validade em uma SAS de delegação de usuário, uma SAS de serviço ou uma SAS de conta. O limite superior é especificado como um valor de data/hora que é um número combinado de dias, horas, minutos e segundos.
O intervalo de validade para a SAS é calculado, subtraindo o valor de data/hora do campo de início assinado do valor de data/hora do campo de expiração assinado. Se o valor resultante for menor ou igual ao limite superior recomendado, a SAS estará em conformidade com a política de expiração de SAS.
Quando uma política de expiração de SAS estiver em vigor para a conta de armazenamento, o campo de início assinado será obrigatório para cada SAS. Se o campo de início assinado não estiver incluído na SAS e você definiu uma configuração de diagnóstico para registro em log com o Azure Monitor, o Armazenamento do Azure gravará uma mensagem na propriedade SasExpiryStatus nos logs sempre que um usuário usar uma SAS sem um valor para o campo de início assinado.
Depois de configurar a política de expiração sas, qualquer usuário que criar uma SAS com um intervalo que exceda o limite superior recomendado verá um aviso, juntamente com o intervalo máximo recomendado.
Definir a ação de expiração de SAS
A política de expiração de SAS dá suporte a duas ações:
[Padrão] Log: Solicitações feitas com SAS fora de política são permitidas. Se você configurou uma configuração de diagnóstico para registro em log com o Azure Monitor, o Armazenamento do Azure gravará uma mensagem na propriedade SasExpiryStatus nos logs sempre que um usuário usar uma SAS que expira após o intervalo recomendado. A mensagem indica que o intervalo de validade de SAS excede o intervalo recomendado. Essa opção é recomendada para monitorar e auditar o acesso sem interromper fluxos de trabalho.
Bloquear: Solicitações feitas com SAS fora de política são negadas. Essa é sua opção mais rigorosa para impor controles de acesso de acordo com seus requisitos organizacionais.
SAS fora de política são aquelas que não têm um início assinado ou têm um intervalo de validade maior que o limite superior.
Comece examinando o uso atual do token SAS e definindo uma política de expiração apropriada para suas contas de armazenamento. Recomendamos começar com a ação log para monitorar seus logs de diagnóstico para violações de política. É altamente recomendável usar a ação Bloquear para garantir que, se um token SAS tiver passado a validade do período de expiração definido na conta de armazenamento, o acesso ao armazenamento deverá ser bloqueado.
Importante
A Ação de Expiração de SAS não tem suporte para SAS de delegação de usuário por meio do ponto de extremidade HDFS ou assinaturas de acesso compartilhado no nível do serviço com uma política de acesso armazenada.
Configurar uma política de término de SAS
Quando você configura uma política de expiração de SAS em uma conta de armazenamento, a política se aplica a cada tipo de SAS: SAS de delegação de usuário, SAS de serviço e SAS de conta. Os tipos SAS de serviço e SAS de conta são assinados com a chave da conta, enquanto o SAS de delegação de usuário é assinado com as credenciais do Microsoft Entra.
Um SAS de delegação de usuário é assinado com uma chave de delegação de usuário, que é obtida usando as credenciais do Microsoft Entra. A chave de delegação do usuário tem seu próprio intervalo de expiração, que não está sujeito à política de expiração do SAS. A política de expiração do SAS se aplica apenas ao SAS de delegação de usuário, não à chave de delegação de usuário com a qual ele é assinado.
Um SAS de delegação de usuário tem um intervalo máximo de expiração de 7 dias, independentemente da política de expiração do SAS. Se a política de expiração do SAS for definida com um valor superior a 7 dias, a política não terá efeito para um SAS de delegação de usuário. Se a chave de delegação do usuário expirar, qualquer SAS de delegação de usuário assinado com essa chave será inválido e qualquer tentativa de usar o SAS retornará um erro.
A Sincronização de Arquivos do Azure requer um intervalo mínimo de expiração de SAS de 3 dias. Configurar o limite superior para o intervalo de expiração de SAS para menos de 3 dias impede que o agente de Sincronização de Arquivos renove seu token SAS, o que interrompe as operações de sincronização e recuperação de nuvem. Defina o limite superior como 3 dias ou mais.
Preciso girar as chaves de acesso da conta primeiro?
Esta seção se aplica aos tipos de SAS de serviço e SAS de conta, que são assinados com a chave de conta. Para configurar uma política de expiração da SAS, você precisará girar cada uma das chaves de acesso de sua conta pelo menos uma vez. Se a propriedade keyCreationTime da conta de armazenamento tiver um valor nulo para uma das chaves de acesso da conta (key1 e key2), você precisará girá-las. Para determinar se a propriedade keyCreationTime é nula, consulte Obter a hora de criação das chaves de acesso da conta para uma conta de armazenamento. Se você tentar configurar uma política de expiração da SAS e as chaves precisarem ser giradas primeiro, a operação falhará.
Como configurar uma política de expiração da SAS
Você pode configurar uma política de expiração da SAS usando o portal do Microsoft Azure, o PowerShell ou a CLI do Azure.
Para configurar uma política de término de SAS no portal do Microsoft Azure, siga estas etapas:
Navegue até sua conta de armazenamento no portal do Azure.
Em Configurações, escolha Configuração.
Localize a configuração da política de expiração sas (assinatura de acesso compartilhado) e defina-a como Habilitada.
Observação
Se a configuração estiver esmaeecido, talvez seja necessário girar as duas chaves de acesso da conta antes de definir uma política de expiração.
Especifique um valor de tempo abaixo do limite superior para o intervalo de expiração sas para o intervalo máximo desejado para novas assinaturas de acesso compartilhado que são criadas em recursos nesta conta de armazenamento.
[Opcional] Defina a ação de expiração. A ação de Log padrão ajuda você a detectar tendências e investigar o acesso sem interromper os usuários, enquanto a ação Bloquear permite impor tolerância zero para tokens SAS fora de política.
Selecione Salvar para salvar as alterações.
Logs de consulta de violações de política
Para registrar a criação de uma SAS válida por um intervalo maior do que o recomendado pela política de expiração de SAS, crie uma configuração de diagnóstico que envie logs para um workspace do Log Analytics do Azure. Para obter mais informações, consulte Enviar logs para o Log Analytics do Azure.
Depois, use uma consulta de log do Azure Monitor para monitorar se a política foi violada. Crie uma nova consulta no workspace do Log Analytics, adicione o texto de consulta a seguir e pressione Executar.
StorageBlobLogs
| where SasExpiryStatus startswith "Policy violated"
| summarize count() by AccountName, SasExpiryStatus
Usar uma política interna para monitorar a conformidade
Você pode monitorar suas contas de armazenamento com o Azure Policy para garantir que as contas de armazenamento na sua assinatura tenham configurado políticas de expiração da SAS. O Armazenamento do Azure fornece uma política interna para garantir que as contas tenham essa configuração definida. Para obter mais informações sobre a política interna, confira As contas de armazenamento devem ter políticas de SAS (Assinatura de Acesso Compartilhado) configuradas em Lista de definições de política interna.
Atribuir a política interna para um escopo de recurso
Siga estas etapas para atribuir a política interna ao escopo apropriado no portal do Azure:
No portal do Azure, pesquise Política para exibir o painel do Azure Policy.
Na seção Criação, selecione Atribuições.
Escolha Atribuir política.
Na guia Noções Básicas da página Atribuir política, na seção Escopo, especifique o escopo da atribuição de política. Selecione o botão Mais para escolher a assinatura e o grupo de recursos opcional.
Para o campo Definição de política, selecione o botão Mais e insira as chaves da conta de armazenamento no campo Pesquisa. Selecione a definição de política chamada As chaves de conta de armazenamento não devem expirar.
Selecione Revisar + criar para atribuir a definição de política ao escopo especificado.
Monitorar a conformidade com a política de expiração de chave
Para monitorar suas contas de armazenamento para conformidade com a política de expiração de chave, siga estas etapas:
No painel do Azure Policy, localize a definição de política interna para o escopo especificado na atribuição de política. Você pode pesquisar
Storage accounts should have shared access signature (SAS) policies configurednão devem expirar na caixa Pesquisar para filtrar a política interna.Selecione o nome da política com o escopo desejado.
Na página Atribuição de política para a política interna, selecione Exibir conformidade. Todas as contas de armazenamento no grupo de recursos e assinatura especificados que não atenderem aos requisitos de política aparecerão no relatório de conformidade.
Para colocar uma conta de armazenamento em conformidade, configure uma política de expiração de SAS para essa conta, conforme descrito em Configurar uma política de término de SAS.