Criar uma conta SAS
Importante
Para uma segurança ideal, a Microsoft recomenda o uso do Microsoft Entra ID com identidades gerenciadas para autorizar solicitações contra dados de blob, fila e tabela, sempre que possível. A autorização com ID do Microsoft Entra e identidades gerenciadas oferece segurança superior e facilidade de uso em relação à autorização de chave compartilhada. Para saber mais, consulte Autorizar com o Microsoft Entra ID. Para saber mais sobre identidades gerenciadas, consulte O que são identidades gerenciadas para recursos do Azure.
Para recursos hospedados fora do Azure, como aplicativos locais, você pode usar identidades gerenciadas por meio do Azure Arc. Por exemplo, os aplicativos executados em servidores habilitados para Azure Arc podem usar identidades gerenciadas para se conectar aos serviços do Azure. Para saber mais, consulte Autenticar em recursos do Azure com servidores habilitados para Azure Arc.
Para cenários em que as assinaturas de acesso compartilhado (SAS) são usadas, a Microsoft recomenda o uso de uma SAS de delegação de usuário. Uma SAS de delegação de usuário é protegida com credenciais do Microsoft Entra em vez da chave da conta. Para saber mais sobre assinaturas de acesso compartilhado, consulte Criar uma delegação de usuário SAS.
A partir da versão 2015-04-05, o Armazenamento do Azure suporta a criação de um novo tipo de assinatura de acesso partilhado (SAS) ao nível da conta de armazenamento. Ao criar uma conta SAS, você pode:
Delegue o acesso a operações de nível de serviço que não estão disponíveis no momento com uma SAS específica do serviço, como as operações
Get/Set Service Properties
eGet Service Stats
.Delegue acesso a mais de um serviço em uma conta de armazenamento de cada vez. Por exemplo, você pode delegar acesso a recursos no Armazenamento de Blobs do Azure e nos Arquivos do Azure usando uma conta SAS.
Delegue acesso para gravar e excluir operações para contêineres, filas, tabelas e compartilhamentos de arquivos, que não estão disponíveis com uma SAS específica do objeto.
Especifique um endereço IP ou um intervalo de endereços IP a partir dos quais aceitar solicitações.
Especifique o protocolo HTTP a partir do qual aceitar solicitações (HTTPS ou HTTP/HTTPS).
Atualmente, não há suporte para políticas de acesso armazenado para uma SAS de conta.
Atenção
As assinaturas de acesso compartilhado são chaves que concedem permissões a recursos de armazenamento, e você deve protegê-las da mesma forma que protegeria uma chave de conta. É importante proteger uma SAS contra uso mal-intencionado ou não intencional. Use discrição na distribuição de um SAS e tenha um plano para revogar um SAS comprometido. As operações que usam assinaturas de acesso compartilhado devem ser executadas somente em uma conexão HTTPS, e os URIs SAS devem ser distribuídos somente em uma conexão segura, como HTTPS.
Autorizar uma conta SAS
Você protege uma conta SAS usando uma chave de conta de armazenamento. Quando você cria uma conta SAS, seu aplicativo cliente deve possuir a chave da conta.
Para usar as credenciais do Microsoft Entra para proteger uma SAS para um contêiner ou blob, crie uma delegação de usuário SAS.
Construir um URI SAS de conta
O URI SAS da conta consiste no URI do recurso ao qual o SAS delegará acesso, seguido por um token SAS. O token SAS é a cadeia de caracteres de consulta que inclui todas as informações necessárias para autorizar uma solicitação ao recurso. Ele especifica o serviço, o recurso e as permissões disponíveis para acesso e o período de tempo durante o qual a assinatura é válida.
Especificar os parâmetros SAS da conta
Os parâmetros necessários e opcionais para o token SAS são descritos na tabela a seguir:
Parâmetro de consulta SAS | Descrição |
---|---|
api-version |
Opcional. Especifica a versão do serviço de armazenamento a ser usada para executar a solicitação feita usando o URI SAS da conta. Para obter mais informações, consulte Autorizar solicitações usando uma assinatura de acesso compartilhado. |
SignedVersion (sv) |
Necessário. Especifica a versão do serviço de armazenamento assinado a ser usada para autorizar solicitações feitas com essa conta SAS. Ele deve ser definido para a versão 2015-04-05 ou posterior. Para obter mais informações, consulte Autorizar solicitações usando uma assinatura de acesso compartilhado. |
SignedServices (ss) |
Necessário. Especifica os serviços assinados que podem ser acessados com a conta SAS. Os valores possíveis incluem: - Blob ( b )- Fila ( q )- Tabela ( t )- Arquivo ( f )Você pode combinar valores para fornecer acesso a mais de um serviço. Por exemplo, ss=bf especifica o acesso aos pontos de extremidade Armazenamento de Blob e Arquivos do Azure. |
SignedResourceTypes (srt) |
Necessário. Especifica os tipos de recursos assinados que podem ser acessados com a conta SAS. - Serviço ( s ): Acesso a APIs de nível de serviço (por exemplo, Get/set Service Properties, Get Service Stats, List Containers/Queues/Tables/Shares).- Container ( c ): Acesso a APIs no nível de contêiner (por exemplo, Create/Delete Container, Create/Delete Queue, Create/Delete Table, Create/Delete Share, List Blobs/Files and Directories).- Object ( o ): Acesso a APIs de nível de objeto para blobs, mensagens de fila, entidades de tabela e arquivos (por exemplo, Put Blob, Query Entity, Get Messages, Create File).Você pode combinar valores para fornecer acesso a mais de um tipo de recurso. Por exemplo, srt=sc especifica o acesso a recursos de serviço e contêiner. |
SignedPermissions (sp) |
Necessário. Especifica as permissões assinadas para a conta SAS. As permissões são válidas somente se corresponderem ao tipo de recurso assinado especificado. Se não corresponderem, são ignorados. - Ler ( r ): Válido para todos os tipos de recursos assinados (Serviço, Contêiner e Objeto). Permite permissões de leitura para o tipo de recurso especificado.- Write ( w ): Válido para todos os tipos de recursos assinados (Service, Container e Object). Permite acesso de gravação para o tipo de recurso especificado, permitindo que um usuário crie e atualize recursos.- Excluir ( d ): Válido para os tipos de recursos Container e Object, exceto para mensagens de fila.- Delete Version ( x ): Válido apenas para o tipo de recurso Object do Blob.- Permanent Delete ( y ): Válido apenas para o tipo de recurso Object de Blob.- Lista ( l ): Válido apenas para os tipos de recursos Serviço e Contêiner.- Adicionar ( a ): Válido apenas para os seguintes tipos de recursos de objeto: mensagens de fila, entidades de tabela e blobs de acréscimo.- Create ( c ): Válido para tipos de recursos Container e os seguintes tipos de recursos Object: blobs e files. Os usuários podem criar novos recursos, mas não podem substituir os recursos existentes.- Atualização ( u ): Válido apenas para os seguintes tipos de recursos de objeto: mensagens de fila e entidades de tabela.- Processo ( p ): Válido apenas para o seguinte tipo de recurso de objeto: mensagens de fila.- Tag ( t ): Válido apenas para o seguinte tipo de recurso Object: blobs. Permite operações de tag de blob.- Filtro ( f ): Válido apenas para o seguinte tipo de recurso Object: blob. Permite a filtragem por tag blob.- Definir Política de Imutabilidade ( i ): Válido apenas para o seguinte tipo de recurso de objeto: blob. Permite definir/excluir política de imutabilidade e retenção legal em um blob. |
SignedStart (st) |
Opcional. A hora em que o SAS se torna válido, expresso num dos formatos aceites ISO 8601 UTC. Se for omitido, presume-se que a hora de início é a hora em que o serviço de armazenamento recebe a solicitação. Para obter mais informações sobre formatos UTC aceitos, consulte Formatando valores DateTime. |
SignedExpiry (se) |
Necessário. O momento em que a assinatura de acesso compartilhado se torna inválida, expressa em um dos formatos aceitos ISO 8601 UTC. Para obter mais informações sobre formatos UTC aceitos, consulte Formatando valores DateTime. |
SignedIP (sip) |
Opcional. Especifica um endereço IP ou um intervalo de endereços IP dos quais aceitar solicitações. Ao especificar um intervalo, lembre-se de que o intervalo é inclusivo. Apenas endereços IPv4 são suportados. Por exemplo, sip=198.51.100.0 ou sip=198.51.100.10-198.51.100.20 . |
SignedProtocol (spr) |
Opcional. Especifica o protocolo permitido para uma solicitação feita com a SAS da conta. Os valores possíveis são HTTPS e HTTP (https,http ) ou HTTPS apenas (https ). O valor padrão é https,http .Observe que somente HTTP não é um valor permitido. |
SignedEncryptionScope (ses) |
Opcional. Indica o escopo de criptografia a ser usado para criptografar o conteúdo da solicitação. Este campo é suportado com a versão 2020-12-06 e posterior. |
Signature (sig) |
Necessário. A parte de assinatura do URI é usada para autorizar a solicitação feita com a assinatura de acesso compartilhado. A cadeia de caracteres para sinal é uma cadeia de caracteres exclusiva construída a partir dos campos que devem ser verificados para autorizar a solicitação. A assinatura é um código de autenticação de mensagem baseado em hash (HMAC) que é calculado sobre a cadeia de caracteres para assinar e a chave usando o algoritmo SHA256 e, em seguida, codificado usando a codificação Base64. |
Especificar o campo signedVersion
O campo signedVersion
(sv
) contém a versão de serviço da assinatura de acesso compartilhado. Esse valor especifica a versão da autorização de Chave Compartilhada usada por essa assinatura de acesso compartilhado (no campo signature
). O valor também especifica a versão do serviço para solicitações feitas com essa assinatura de acesso compartilhado.
Para obter informações sobre qual versão é usada quando você executa solicitações por meio de uma assinatura de acesso compartilhado, consulte Versionamento para serviços de Armazenamento do Azure.
Para obter informações sobre como esse parâmetro afeta a autorização de solicitações feitas com uma assinatura de acesso compartilhado, consulte Delegar acesso com uma assinatura de acesso compartilhado.
Nome do campo | Parâmetro de consulta | Descrição |
---|---|---|
signedVersion |
sv |
Necessário. Suportado na versão 2015-04-05 e posterior. A versão do serviço de armazenamento a ser usada para autorizar e lidar com solicitações feitas com essa assinatura de acesso compartilhado. Para obter mais informações, consulte Versionamento para serviços de Armazenamento do Azure. |
Especificar um endereço IP ou intervalo de IP
A partir da versão 2015-04-05, o campo opcional signedIp
(sip
) especifica um endereço IP público ou um intervalo de endereços IP públicos a partir dos quais aceitar solicitações. Se o endereço IP do qual a solicitação se origina não corresponder ao endereço IP ou intervalo de endereços especificado no token SAS, a solicitação não será autorizada. Apenas endereços IPv4 são suportados.
Ao especificar um intervalo de endereços IP, lembre-se de que o intervalo é inclusivo. Por exemplo, especificar sip=198.51.100.0
ou sip=198.51.100.10-198.51.100.20
no SAS restringe a solicitação a esses endereços IP.
A tabela a seguir descreve se o campo signedIp
deve ser incluído em um token SAS para um cenário especificado, com base no ambiente do cliente e no local da conta de armazenamento.
Ambiente do cliente | Localização da conta de armazenamento | Recomendação |
---|---|---|
Cliente em execução no Azure | Na mesma região que o cliente | Uma SAS fornecida ao cliente neste cenário não deve incluir um endereço IP de saída para o campo signedIp . As solicitações feitas de dentro da mesma região que usam uma SAS com um endereço IP de saída especificado falharão.Em vez disso, use uma rede virtual do Azure para gerenciar restrições de segurança de rede. As solicitações para o Armazenamento do Azure de dentro da mesma região sempre ocorrem em um endereço IP privado. Para obter mais informações, consulte Configurar firewalls de armazenamento do Azure e redes virtuais. |
Cliente em execução no Azure | Numa região diferente do cliente | Uma SAS fornecida ao cliente neste cenário pode incluir um endereço IP público ou um intervalo de endereços para o campo signedIp . Uma solicitação feita com o SAS deve ter origem no endereço IP especificado ou no intervalo de endereços. |
Cliente em execução no local ou em um ambiente de nuvem diferente | Em qualquer região do Azure | Uma SAS fornecida ao cliente neste cenário pode incluir um endereço IP público ou um intervalo de endereços para o campo signedIp . Uma solicitação feita com o SAS deve ter origem no endereço IP especificado ou no intervalo de endereços.Se a solicitação passar por um proxy ou gateway, forneça o endereço IP de saída público desse proxy ou gateway para o campo signedIp . |
Especificar o protocolo HTTP
A partir da versão 2015-04-05, o campo signedProtocol
opcional (spr
) especifica o protocolo permitido para uma solicitação feita com o SAS. Os valores possíveis são HTTPS e HTTP (https,http
) ou HTTPS apenas (https
). O valor padrão é https,http
. Observe que apenas HTTP não é um valor permitido.
Especificar o âmbito da encriptação
Usando o campo signedEncryptionScope
no URI, você pode especificar o escopo de criptografia que o aplicativo cliente pode usar. Ele impõe a criptografia do lado do servidor com o escopo de criptografia especificado quando você carrega blobs (PUT) com o token SAS. O GET e o HEAD não serão restritos e realizados como antes.
A tabela a seguir descreve como fazer referência a um escopo de criptografia assinado no URI:
Nome do campo | Parâmetro de consulta | Descrição |
---|---|---|
signedEncryptionScope |
ses |
Opcional. Indica o escopo de criptografia a ser usado para criptografar o conteúdo da solicitação. |
Este campo é suportado com a versão 2020-12-06 ou posterior. Se você adicionar o ses
antes da versão suportada, o serviço retornará o código de resposta de erro 403 (Proibido).
Se você definir o escopo de criptografia padrão para o contêiner ou sistema de arquivos, o parâmetro de consulta ses
respeitará a política de criptografia de contêiner. Se houver uma incompatibilidade entre o parâmetro de consulta ses
e x-ms-default-encryption-scope
cabeçalho e o cabeçalho x-ms-deny-encryption-scope-override
estiver definido como true
, o serviço retornará o código de resposta de erro 403 (Proibido).
Quando você fornece o cabeçalho x-ms-encryption-scope
e o parâmetro de consulta ses
na solicitação PUT, o serviço retorna o código de resposta de erro 400 (Solicitação incorreta) se houver uma incompatibilidade.
Construir a cadeia de caracteres de assinatura
Para construir a cadeia de caracteres de assinatura para uma SAS de conta, primeiro construa a cadeia de caracteres para assinar a partir dos campos que compõem a solicitação e, em seguida, codifique a cadeia de caracteres como UTF-8 e calcule a assinatura usando o algoritmo HMAC-SHA256.
Observação
Os campos incluídos na cadeia de caracteres para assinar devem ser decodificados por URL.
Para construir a cadeia de caracteres para assinar para uma conta SAS, use o seguinte formato:
StringToSign = accountname + "\n" +
signedpermissions + "\n" +
signedservice + "\n" +
signedresourcetype + "\n" +
signedstart + "\n" +
signedexpiry + "\n" +
signedIP + "\n" +
signedProtocol + "\n" +
signedversion + "\n"
A versão 2020-12-06 adiciona suporte para o campo de escopo de criptografia assinado. Para construir a cadeia de caracteres para assinar para uma conta SAS, use o seguinte formato:
StringToSign = accountname + "\n" +
signedpermissions + "\n" +
signedservice + "\n" +
signedresourcetype + "\n" +
signedstart + "\n" +
signedexpiry + "\n" +
signedIP + "\n" +
signedProtocol + "\n" +
signedversion + "\n" +
signedEncryptionScope + "\n"
Permissões SAS de conta por operação
As tabelas nas seções a seguir listam várias APIs para cada serviço e os tipos de recursos assinados e permissões assinadas com suporte para cada operação.
Serviço de Blob
A tabela a seguir lista as operações do serviço Blob e indica qual tipo de recurso assinado e permissões assinadas devem ser especificadas quando você delega acesso a essas operações.
Funcionamento | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Listar contêineres | Blob (b) | Serviço(s) | Lista (l) |
Obter propriedades de serviço de Blob | Blob (b) | Serviço(s) | Ler (r) |
Definir propriedades do serviço de Blob | Blob (b) | Serviço(s) | Escrever (w) |
Obter estatísticas de serviço de Blob | Blob (b) | Serviço(s) | Ler (r) |
Criar contêiner | Blob (b) | Contentor (c) | Criar(c) ou Escrever (w) |
Obter propriedades de contêiner | Blob (b) | Contentor (c) | Ler (r) |
Obter metadados de contêiner | Blob (b) | Contentor (c) | Ler (r) |
Definir metadados de contêiner | Blob (b) | Contentor (c) | Escrever (w) |
Contentor de Arrendamento | Blob (b) | Contentor (c) | Escrever (w) ou Excluir (d)1 |
Excluir contêiner | Blob (b) | Contentor (c) | Suprimir d)1 |
Localizar Blobs por Tags no Container | Blob (b) | Contentor (c) | Filtrar (f) |
Listar Blobs | Blob (b) | Contentor (c) | Lista (l) |
Colocar Blob (criar novo blob de bloco) | Blob (b) | Objeto (o) | Criar (c) ou Escrever (w) |
Colocar Blob (substituir blob de bloco existente) | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Blob (criar novo blob de página) | Blob (b) | Objeto (o) | Criar (c) ou Escrever (w) |
Colocar Blob (substituir blob de página existente) | Blob (b) | Objeto (o) | Escrever (w) |
Obter Blob | Blob (b) | Objeto (o) | Ler (r) |
Obter propriedades de Blob | Blob (b) | Objeto (o) | Ler (r) |
Definir propriedades de Blob | Blob (b) | Objeto (o) | Escrever (w) |
Obter metadados de Blob | Blob (b) | Objeto (o) | Ler (r) |
Definir metadados de Blob | Blob (b) | Objeto (o) | Escrever (w) |
Obter tags de Blob | Blob (b) | Objeto (o) | Etiquetas (t) |
Definir tags de Blob | Blob (b) | Objeto (o) | Etiquetas (t) |
Encontrar Blobs por Tags | Blob (b) | Objeto (o) | Filtrar (f) |
Excluir Blob | Blob (b) | Objeto (o) | Suprimir d)1 |
Excluir versão do Blob | Blob (b) | Objeto (o) | Excluir versão (x)2 |
Excluir permanentemente instantâneo / versão | Blob (b) | Objeto (o) | Eliminação permanente (y)3 |
Blob de Arrendamento | Blob (b) | Objeto (o) | Escrever (w) ou Excluir (d)1 |
Blob de instantâneo | Blob (b) | Objeto (o) | Criar (c) ou Escrever (w) |
Copiar Blob (o destino é o novo blob) | Blob (b) | Objeto (o) | Criar (c) ou Escrever (w) |
Blob de cópia (o destino é um blob existente) | Blob (b) | Objeto (o) | Escrever (w) |
Cópia incremental | Blob (b) | Objeto (o) | Criar (c) ou Escrever (w) |
Anular Blob de Cópia | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Bloco | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Lista de Bloqueios (criar novo blob) | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Lista de Bloqueios (atualizar blob existente) | Blob (b) | Objeto (o) | Escrever (w) |
Obter Lista de Bloqueios | Blob (b) | Objeto (o) | Ler (r) |
Colocar página | Blob (b) | Objeto (o) | Escrever (w) |
Obter intervalos de páginas | Blob (b) | Objeto (o) | Ler (r) |
Bloco Acrescentar | Blob (b) | Objeto (o) | Adicionar (a) ou Escrever (w) |
Limpar página | Blob (b) | Objeto (o) | Escrever (w) |
1 A permissão Delete
permite quebrar uma locação em um blob ou contêiner com a versão 2017-07-29 e posterior.
2 A permissão Delete Version
permite a exclusão de versões de blob com a versão 2019-12-12 e posterior.
3 A permissão Permanent Delete
permite a exclusão permanente de um instantâneo de blob ou versão com a versão 2020-02-10 e posterior.
Serviço de fila
A tabela a seguir lista as operações do serviço de fila e indica qual tipo de recurso assinado e permissões assinadas devem ser especificadas quando você delega acesso a essas operações.
Funcionamento | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Obter propriedades do serviço de fila | Fila (q) | Serviço(s) | Ler (r) |
Definir propriedades do serviço de fila | Fila (q) | Serviço(s) | Escrever (w) |
Listar filas | Fila (q) | Serviço(s) | Lista (l) |
Obter estatísticas do serviço de fila | Fila (q) | Serviço(s) | Ler (r) |
Criar fila | Fila (q) | Contentor (c) | Criar(c) ou Escrever (w) |
Excluir fila | Fila (q) | Contentor (c) | Suprimir d) |
Obter metadados da fila | Fila (q) | Contentor (c) | Ler (r) |
Definir metadados da fila | Fila (q) | Contentor (c) | Escrever (w) |
Colocar mensagem | Fila (q) | Objeto (o) | Aditar alínea a) |
Receber mensagens | Fila (q) | Objeto (o) | Processo (p) |
Mensagens de Espreitar | Fila (q) | Objeto (o) | Ler (r) |
Excluir mensagem | Fila (q) | Objeto (o) | Processo (p) |
Limpar mensagens | Fila (q) | Objeto (o) | Suprimir d) |
Mensagem de atualização | Fila (q) | Objeto (o) | Atualização (u) |
Serviço de mesa
A tabela a seguir lista as operações do serviço Tabela e indica qual tipo de recurso assinado e permissões assinadas devem ser especificadas quando você delega acesso a essas operações.
Funcionamento | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Obter propriedades do serviço de tabela | Quadro (t) | Serviço(s) | Ler (r) |
Definir propriedades do serviço de tabela | Quadro (t) | Serviço(s) | Escrever (w) |
Obter estatísticas de serviço de tabela | Quadro (t) | Serviço(s) | Ler (r) |
Tabelas de consulta | Quadro (t) | Contentor (c) | Lista (l) |
Criar tabela | Quadro (t) | Contentor (c) | Criar (c) ou Escrever (w) |
Excluir tabela | Quadro (t) | Contentor (c) | Suprimir d) |
Entidades de consulta | Quadro (t) | Objeto (o) | Ler (r) |
Inserir entidade | Quadro (t) | Objeto (o) | Aditar alínea a) |
Inserir ou mesclar entidade | Quadro (t) | Objeto (o) | Adicionar (a) e Atualizar (u)1 |
Inserir ou substituir entidade | Quadro (t) | Objeto (o) | Adicionar (a) e Atualizar (u)1 |
Entidade de atualização | Quadro (t) | Objeto (o) | Atualização (u) |
Entidade de fusão | Quadro (t) | Objeto (o) | Atualização (u) |
Excluir entidade | Quadro (t) | Objeto (o) | Suprimir d) |
1 As permissões Adicionar e Atualizar são necessárias para operações de upsert no serviço Tabela.
Serviço de ficheiros
A tabela a seguir lista as operações do serviço de arquivo e indica qual tipo de recurso assinado e permissões assinadas devem ser especificadas quando você delega acesso a essas operações.
Funcionamento | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Listar Partilhas | Ficheiro (f) | Serviço(s) | Lista (l) |
Obter propriedades do serviço de arquivo | Ficheiro (f) | Serviço(s) | Ler (r) |
Definir propriedades do serviço de arquivo | Ficheiro (f) | Serviço(s) | Escrever (w) |
Obter estatísticas de compartilhamento | Ficheiro (f) | Contentor (c) | Ler (r) |
Criar Partilha | Ficheiro (f) | Contentor (c) | Criar (c) ou Escrever (w) |
Compartilhamento de instantâneo | Ficheiro (f) | Contentor (c) | Criar (c) ou Escrever (w) |
Obter propriedades de compartilhamento | Ficheiro (f) | Contentor (c) | Ler (r) |
Definir propriedades de compartilhamento | Ficheiro (f) | Contentor (c) | Escrever (w) |
Obter metadados de compartilhamento | Ficheiro (f) | Contentor (c) | Ler (r) |
Definir metadados de compartilhamento | Ficheiro (f) | Contentor (c) | Escrever (w) |
Excluir compartilhamento | Ficheiro (f) | Contentor (c) | Suprimir d) |
Listar diretórios e arquivos | Ficheiro (f) | Contentor (c) | Lista (l) |
Criar diretório | Ficheiro (f) | Objeto (o) | Criar (c) ou Escrever (w) |
Obter propriedades do diretório | Ficheiro (f) | Objeto (o) | Ler (r) |
Obter metadados de diretório | Ficheiro (f) | Objeto (o) | Ler (r) |
Definir metadados de diretório | Ficheiro (f) | Objeto (o) | Escrever (w) |
Excluir diretório | Ficheiro (f) | Objeto (o) | Suprimir d) |
Criar arquivo (criar novo) | Ficheiro (f) | Objeto (o) | Criar (c) ou Escrever (w) |
Criar arquivo (substituir existente) | Ficheiro (f) | Objeto (o) | Escrever (w) |
Obter ficheiro | Ficheiro (f) | Objeto (o) | Ler (r) |
Obter propriedades do arquivo | Ficheiro (f) | Objeto (o) | Ler (r) |
Obter metadados de arquivo | Ficheiro (f) | Objeto (o) | Ler (r) |
Definir metadados de arquivo | Ficheiro (f) | Objeto (o) | Escrever (w) |
Excluir arquivo | Ficheiro (f) | Objeto (o) | Suprimir d) |
Renomear arquivo | Ficheiro (f) | Objeto (o) | Excluir (d) ou Gravar (w) |
Gama Put | Ficheiro (f) | Objeto (o) | Escrever (w) |
Listar intervalos | Ficheiro (f) | Objeto (o) | Ler (r) |
Anular arquivo de cópia | Ficheiro (f) | Objeto (o) | Escrever (w) |
Copiar ficheiro | Ficheiro (f) | Objeto (o) | Escrever (w) |
Faixa clara | Ficheiro (f) | Objeto (o) | Escrever (w) |
Exemplo de URI SAS de conta
O exemplo a seguir mostra um URI de serviço Blob com um token SAS de conta anexado a ele. O token SAS da conta fornece permissões para o serviço, contêiner e objetos. A tabela decompõe cada parte do URI:
https://blobsamples.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwlc&se=2023-05-24T09:51:36Z&st=2023-05-24T01:51:36Z&spr=https&sig=<signature>
Designação | Porção SAS | Descrição |
---|---|---|
URI do recurso | https://myaccount.blob.core.windows.net/?restype=service&comp=properties |
O ponto de extremidade de serviço, com parâmetros para obter propriedades de serviço (quando chamado com GET) ou definir propriedades de serviço (quando chamado com SET). Com base no valor do campo de serviços assinados (ss ), essa SAS pode ser usada com o Armazenamento de Blob ou com Arquivos do Azure. |
Delimitador | ? |
O delimitador que precede a cadeia de caracteres de consulta. O delimitador não faz parte do token SAS. |
Versão dos serviços de armazenamento | sv=2022-11-02 |
Para os serviços de Armazenamento do Azure versão 2012-02-12 e posteriores, esse parâmetro indica qual versão usar. |
Serviços | ss=b |
O SAS aplica-se aos serviços de Blob. |
Tipos de recursos | srt=sco |
O SAS aplica-se a operações de nível de serviço, nível de contêiner e nível de objeto. |
Permissões | sp=rwlc |
As permissões concedem acesso para ler, gravar, listar e criar operações. |
Hora de início | st=2019-08-01T22%3A18%3A26Z |
Especificado na hora UTC. Se quiser que o SAS seja válido imediatamente, omita a hora de início. |
Prazo de validade | se=2019-08-10T02%3A23%3A26Z |
Especificado na hora UTC. |
Protocolo | spr=https |
Somente solicitações que usam HTTPS são permitidas. |
Assinatura | sig=<signature> |
Usado para autorizar o acesso ao blob. A assinatura é um HMAC que é calculado sobre uma cadeia de caracteres para assinar e chave usando o algoritmo SHA256 e, em seguida, codificado usando a codificação Base64. |
Como as permissões são restritas ao nível de serviço, as operações acessíveis com essa SAS são Obter Propriedades do Serviço de Blob (leitura) e Definir Propriedades do Serviço de Blob (gravação). No entanto, com um URI de recurso diferente, o mesmo token SAS também pode ser usado para delegar acesso a obter estatísticas de serviço de Blob (ler).