Criar uma SAS de conta
Importante
Para uma segurança ideal, a Microsoft recomenda a utilização de Microsoft Entra ID com identidades geridas para autorizar pedidos relativamente a dados de blobs, filas e tabelas, sempre que possível. A autorização com Microsoft Entra ID e identidades geridas proporciona uma segurança superior e facilidade de utilização através da autorização da Chave Partilhada. Para saber mais, veja Autorizar com Microsoft Entra ID. Para saber mais sobre identidades geridas, veja O que são identidades geridas para recursos do Azure.
Para recursos alojados fora do Azure, como aplicações no local, pode utilizar identidades geridas através do Azure Arc. Por exemplo, as aplicações em execução em servidores compatíveis com o Azure Arc podem utilizar identidades geridas para ligar aos serviços do Azure. Para saber mais, veja Authenticate against Azure resources with Azure Arc-enabled servers (Autenticar em recursos do Azure com servidores preparados para o Azure Arc).
Para cenários em que são utilizadas assinaturas de acesso partilhado (SAS), a Microsoft recomenda a utilização de uma SAS de delegação de utilizador. Uma SAS de delegação de utilizador é protegida com credenciais Microsoft Entra em vez da chave de conta. Para saber mais sobre assinaturas de acesso partilhado, veja Create uma SAS de delegação de utilizador.
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 SAS de conta, pode:
Delegue o acesso a operações ao nível do serviço que não estão atualmente disponíveis com uma SAS específica do serviço, como as
Get/Set Service Properties
operações eGet Service Stats
.Delegue o acesso a mais do que um serviço numa conta de armazenamento de cada vez. Por exemplo, pode delegar o acesso aos recursos no Armazenamento de Blobs do Azure e Ficheiros do Azure através de uma SAS de conta.
Delegue o acesso a operações de escrita e eliminação para contentores, filas, tabelas e partilhas de ficheiros, 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 do qual aceitar pedidos.
Especifique o protocolo HTTP a partir do qual aceitar pedidos (HTTPS ou HTTP/HTTPS).
Atualmente, as políticas de acesso armazenadas não são suportadas para uma SAS de conta.
Atenção
As assinaturas de acesso partilhado são chaves que concedem permissões aos recursos de armazenamento e deve protegê-las tal como protegeria uma chave de conta. É importante proteger uma SAS contra utilização maliciosa ou não intencional. Utilize a discrição na distribuição de uma SAS e tenha um plano para revogar uma SAS comprometida. As operações que utilizam assinaturas de acesso partilhado devem ser realizadas apenas através de uma ligação HTTPS e os URIs de SAS devem ser distribuídos apenas numa ligação segura, como HTTPS.
Autorizar uma SAS de conta
Pode proteger uma SAS de conta com uma chave de conta de armazenamento. Quando cria uma SAS de conta, a aplicação cliente tem de possuir a chave de conta.
Para utilizar Microsoft Entra credenciais para proteger uma SAS para um contentor ou blob, crie uma SAS de delegação de utilizador.
Construir um URI de SAS de conta
O URI de SAS da conta consiste no URI para o recurso para o qual a SAS irá delegar o acesso, seguido de um token de SAS. O token de SAS é a cadeia de consulta que inclui todas as informações necessárias para autorizar um pedido para o recurso. Especifica o serviço, o recurso e as permissões que estão disponíveis para acesso e o período de tempo durante o qual a assinatura é válida.
Especificar os parâmetros de SAS da conta
Os parâmetros obrigatórios e opcionais para o token de SAS estão descritos na tabela seguinte:
Parâmetro de consulta SAS | Description |
---|---|
api-version |
Opcional. Especifica a versão do serviço de armazenamento a utilizar para executar o pedido efetuada com o URI de SAS da conta. Para obter mais informações, veja Autorizar pedidos com uma assinatura de acesso partilhado. |
SignedVersion (sv) |
Obrigatório. Especifica a versão do serviço de armazenamento assinada a utilizar para autorizar pedidos efetuados com esta SAS de conta. Tem de estar definido para a versão 2015-04-05 ou posterior. Para obter mais informações, veja Autorizar pedidos com uma assinatura de acesso partilhado. |
SignedServices (ss) |
Obrigatório. Especifica os serviços assinados que estão acessíveis com a SAS da conta. Valores possíveis incluem: - Blob ( b )- Fila ( q )- Tabela ( t )- Ficheiro ( f )Pode combinar valores para fornecer acesso a mais do que um serviço. Por exemplo, ss=bf especifica o acesso ao Armazenamento de Blobs e Ficheiros do Azure pontos finais. |
SignedResourceTypes (srt) |
Obrigatório. Especifica os tipos de recursos assinados que estão acessíveis com a SAS da conta. - Serviço ( s ): acesso a APIs ao nível do serviço (por exemplo, Obter/Definir Propriedades do Serviço, Obter Estatísticas de Serviço, Listar Contentores/Filas/Tabelas/Partilhas).- Contentor ( c ): acesso a APIs ao nível do contentor (por exemplo, Create/Eliminar Contentor, Create/Eliminar Fila, Create/Eliminar Tabela, Create/Eliminar Partilha, Listar Blobs/Ficheiros e Diretórios).- Objeto ( o ): acesso a APIs ao nível do objeto para blobs, mensagens de fila, entidades de tabela e ficheiros (por exemplo, Colocar Blob, Entidade de Consulta, Obter Mensagens, Create Ficheiro).Pode combinar valores para fornecer acesso a mais do que um tipo de recurso. Por exemplo, srt=sc especifica o acesso aos recursos de serviço e de contentor. |
SignedPermissions (sp) |
Obrigatório. Especifica as permissões assinadas para a SAS da conta. As permissões só são válidas se corresponderem ao tipo de recurso assinado especificado. Se não corresponderem, serão ignorados. - Leitura ( r ): válido para todos os tipos de recursos assinados (Serviço, Contentor e Objeto). Permite permissões de leitura para o tipo de recurso especificado.- Escrita ( w ): válido para todos os tipos de recursos assinados (Serviço, Contentor e Objeto). Permite o acesso de escrita para o tipo de recurso especificado, permitindo que um utilizador crie e atualize recursos.- Eliminar ( d ): válido para tipos de recursos contentor e objeto, exceto para mensagens de fila.- Eliminação Permanente ( y ): Válido apenas para o tipo de recurso objeto de Blob.- Lista ( l ): válido apenas para tipos de recursos de Serviço e Contentor.- 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 de Contentor e os seguintes tipos de recursos de Objeto: blobs e ficheiros. Os utilizadores podem criar novos recursos, mas podem não 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.- Etiqueta ( t ): válido apenas para o seguinte tipo de recurso de Objeto: blobs. Permite operações de etiquetas de blobs.- Filtro ( f ): válido apenas para o seguinte tipo de recurso objeto: blob. Permite a filtragem por etiqueta de blob.- Definir Política de Imutabilidade ( i ): válido apenas para o seguinte tipo de recurso de objeto: blob. Permite definir/eliminar a política de imutabilidade e a retenção legal num blob. |
SignedStart (st) |
Opcional. A hora em que a SAS se torna válida, expressa num dos formatos ISO 8601 UTC aceites. Se for omitido, assume-se que a hora de início é a hora em que o serviço de armazenamento recebe o pedido. Para obter mais informações sobre os formatos UTC aceites, veja Formatar valores DateTime. |
SignedExpiry (se) |
Obrigatório. A hora em que a assinatura de acesso partilhado se torna inválida, expressa num dos formatos ISO 8601 UTC aceites. Para obter mais informações sobre os formatos UTC aceites, veja Formatar valores DateTime. |
SignedIP (sip) |
Opcional. Especifica um endereço IP ou um intervalo de endereços IP a partir do qual aceitar pedidos. Quando especificar um intervalo, tenha em atenção que o intervalo é inclusivo. Apenas são suportados endereços IPv4. Por exemplo, sip=168.1.5.65 ou sip=168.1.5.60-168.1.5.70 . |
SignedProtocol (spr) |
Opcional. Especifica o protocolo permitido para um pedido efetuado com a SAS da conta. Os valores possíveis são apenas HTTPS e HTTP (https,http ) ou HTTPS (https ). O valor predefinido é https,http .Tenha em atenção que HTTP apenas não é um valor permitido. |
SignedEncryptionScope (ses) |
Opcional. Indica o âmbito de encriptação a utilizar para encriptar o conteúdo do pedido. Este campo é suportado com a versão 2020-12-06 e posterior. |
Signature (sig) |
Obrigatório. A parte da assinatura do URI é utilizada para autorizar o pedido efetuado com a assinatura de acesso partilhado. A cadeia de carateres a assinar é uma cadeia exclusiva que é construída a partir dos campos que têm de ser verificados para autorizar o pedido. A assinatura é um código de autenticação de mensagens baseado em hash (HMAC) que é calculado através da cadeia de carateres para assinar e da chave através do algoritmo SHA256 e, em seguida, codificado através da codificação Base64. |
Especificar o signedVersion
campo
O signedVersion
campo (sv
) contém a versão de serviço da assinatura de acesso partilhado. Este valor especifica a versão da autorização de Chave Partilhada utilizada por esta assinatura de acesso partilhado (no signature
campo). O valor também especifica a versão do serviço para pedidos efetuados com esta assinatura de acesso partilhado.
Para obter informações sobre que versão é utilizada quando executa pedidos através de uma assinatura de acesso partilhado, veja Controlo de versões dos serviços de Armazenamento do Azure.
Para obter informações sobre como este parâmetro afeta a autorização dos pedidos feitos com uma assinatura de acesso partilhado, veja Delegar acesso com uma assinatura de acesso partilhado.
Nome do campo | Parâmetro de consulta | Description |
---|---|---|
signedVersion |
sv |
Obrigatório. Suportado na versão 2015-04-05 e posterior. A versão do serviço de armazenamento a utilizar para autorizar e processar pedidos efetuados com esta assinatura de acesso partilhado. Para obter mais informações, veja Controlo de versões dos 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 pedidos. Se o endereço IP a partir do qual o pedido é originado não corresponder ao endereço IP ou intervalo de endereços especificado no token de SAS, o pedido não está autorizado. Só são suportados endereços IPv4.
Quando estiver a especificar um intervalo de endereços IP, tenha em atenção que o intervalo é inclusivoPara exemplo, especificar sip=168.1.5.65
ou sip=168.1.5.60-168.1.5.70
no SAS restringe o pedido a esses endereços IP.
A tabela seguinte descreve se deve incluir o signedIp
campo num token de SAS para um cenário especificado, com base no ambiente de cliente e na localização da conta de armazenamento.
Ambiente de 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 signedIp campo. Os pedidos efetuados a partir da mesma região que utilizam uma SAS com um endereço IP de saída especificado falharão.Em vez disso, utilize uma rede virtual do Azure para gerir restrições de segurança de rede. Os pedidos para o Armazenamento do Azure a partir da mesma região ocorrem sempre através de um endereço IP privado. Para obter mais informações, veja Configurar firewalls e redes virtuais do Armazenamento do Microsoft Azure. |
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 signedIp campo. Um pedido feito com a SAS tem de ter origem no endereço IP especificado ou no intervalo de endereços. |
Cliente a executar no local ou num ambiente de cloud 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 signedIp campo. Um pedido feito com a SAS tem de ter origem no endereço IP especificado ou no intervalo de endereços.Se o pedido passar por um proxy ou gateway, forneça o endereço IP de saída público desse proxy ou gateway para o signedIp campo. |
Especificar o protocolo HTTP
A partir da versão 2015-04-05, o campo opcional signedProtocol
(spr
) especifica o protocolo permitido para um pedido feito com a SAS. Os valores possíveis são apenas HTTPS e HTTP (https,http
) ou HTTPS (https
). O valor predefinido é https,http
. Tenha em atenção que HTTP apenas não é um valor permitido.
Especificar o âmbito de encriptação
Ao utilizar o signedEncryptionScope
campo no URI, pode especificar o âmbito de encriptação que a aplicação cliente pode utilizar. Impõe a encriptação do lado do servidor com o âmbito de encriptação especificado quando carrega blobs (PUT) com o token de SAS. O GET e o HEAD não serão restringidos e executados como anteriormente.
A tabela seguinte descreve como fazer referência a um âmbito de encriptação assinado no URI:
Nome do campo | Parâmetro de consulta | Descrição |
---|---|---|
signedEncryptionScope |
ses |
Opcional. Indica o âmbito de encriptação a utilizar para encriptar o conteúdo do pedido. |
Este campo é suportado com a versão 2020-12-06 ou posterior. Se adicionar o ses
antes da versão suportada, o serviço devolve o código de resposta de erro 403 (Proibido).
Se definir o âmbito de encriptação predefinido para o sistema de contentores ou ficheiros, o ses
parâmetro de consulta respeita a política de encriptação de contentor. Se existir um erro de correspondência entre o parâmetro de consulta e x-ms-default-encryption-scope
o ses
cabeçalho e o x-ms-deny-encryption-scope-override
cabeçalho estiver definido como true
, o serviço devolve o código de resposta de erro 403 (Proibido).
Quando fornece o x-ms-encryption-scope
cabeçalho e o ses
parâmetro de consulta no pedido PUT, o serviço devolve o código de resposta de erro 400 (Pedido Incorreto) se existir um erro de correspondência.
Construir a cadeia de assinatura
Para construir a cadeia de assinatura para uma SAS de conta, crie primeiro a cadeia de carateres para assinar a partir dos campos que compõem o pedido e, em seguida, codifique a cadeia como UTF-8 e calcule a assinatura com o algoritmo HMAC-SHA256.
Nota
Os campos incluídos na cadeia para assinar têm de ser descodificados por URL.
Para construir a cadeia de carateres para assinar para uma SAS de conta, utilize 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 âmbito de encriptação assinado. Para construir a cadeia de carateres para assinar para uma SAS de conta, utilize 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 secções seguintes listam várias APIs para cada serviço e os tipos de recursos assinados e permissões assinadas que são suportadas para cada operação.
Serviço Blob
A tabela seguinte lista as operações do serviço Blob e indica que tipo de recurso assinado e permissões assinadas para especificar quando delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Listar Contentores | Blob (b) | Serviço (s) | Lista (l) |
Obter Propriedades do Serviço Blob | Blob (b) | Serviço (s) | Ler (r) |
Definir Propriedades do Serviço blob | Blob (b) | Serviço (s) | Escrever (w) |
Obter Estatísticas do Serviço blob | Blob (b) | Serviço (s) | Ler (r) |
Criar Contentor | Blob (b) | Contentor (c) | Create(c) ou Escrita (w) |
Obter Propriedades do Contentor | Blob (b) | Contentor (c) | Ler (r) |
Obter Metadados de Contentor | Blob (b) | Contentor (c) | Ler (r) |
Definir Metadados de Contentor | Blob (b) | Contentor (c) | Escrever (w) |
Contentor de Concessão | Blob (b) | Contentor (c) | Escrever (w) ou Eliminar (d)1 |
Eliminar Contentor | Blob (b) | Contentor (c) | Eliminar (d)1 |
Localizar Blobs por Etiquetas no Contentor | Blob (b) | Contentor (c) | Filtro (f) |
Listar Blobs | Blob (b) | Contentor (c) | Lista (l) |
Colocar Blob (criar novo blob de blocos) | Blob (b) | Objeto (o) | Create (c) ou Escrita (w) |
Colocar Blob (substituir blob de blocos existente) | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Blob (criar novo blob de página) | Blob (b) | Objeto (o) | Create (c) ou Escrita (w) |
Colocar Blob (substituir blob de página existente) | Blob (b) | Objeto (o) | Escrever (w) |
Obter Blob | Blob (b) | Objeto (o) | Ler (r) |
Get Blob Properties (Obter Propriedades do Blob) | Blob (b) | Objeto (o) | Ler (r) |
Definir Propriedades do Blob | Blob (b) | Objeto (o) | Escrever (w) |
Obter Metadados de Blobs | Blob (b) | Objeto (o) | Ler (r) |
Definir Metadados de Blobs | Blob (b) | Objeto (o) | Escrever (w) |
Obter Etiquetas de Blobs | Blob (b) | Objeto (o) | Etiquetas (t) |
Definir Etiquetas de Blobs | Blob (b) | Objeto (o) | Etiquetas (t) |
Localizar Blobs por Etiquetas | Blob (b) | Objeto (o) | Filtro (f) |
Eliminar Blob | Blob (b) | Objeto (o) | Eliminar (d)1 |
Eliminar permanentemente instantâneo/versão | Blob (b) | Objeto (o) | Eliminação Permanente (y) |
Lease Blob (Blob de Concessão) | Blob (b) | Objeto (o) | Escrever (w) ou Eliminar (d)1 |
Blob de Instantâneo | Blob (b) | Objeto (o) | Create (c) ou Escrita (w) |
Copiar Blob (o destino é um novo blob) | Blob (b) | Objeto (o) | Create (c) ou Escrita (w) |
Copiar Blob (o destino é um blob existente) | Blob (b) | Objeto (o) | Escrever (w) |
Cópia Incremental | Blob (b) | Objeto (o) | Create (c) ou Escrita (w) |
Abortar o Blob de Cópia | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Bloco | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Lista de Blocos (criar novo blob) | Blob (b) | Objeto (o) | Escrever (w) |
Colocar Lista de Blocos (atualizar blob existente) | Blob (b) | Objeto (o) | Escrever (w) |
Obter Lista de Blocos | 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 de Acréscimo | Blob (b) | Objeto (o) | Adicionar (a) ou Escrever (w) |
Limpar Página | Blob (b) | Objeto (o) | Escrever (w) |
1 A Delete
permissão permite interromper uma concessão num blob ou contentor com a versão 2017-07-29 e posterior.
Serviço Fila
A tabela seguinte lista as operações do serviço Fila e indica que tipo de recurso assinado e permissões assinadas para especificar quando delega o acesso a essas operações.
Operação | 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) |
Fila de Create | Fila (q) | Contentor (c) | Create(c) ou Escrita (w) |
Eliminar Fila | Fila (q) | Contentor (c) | Eliminar (d) |
Obter Metadados de Fila | Fila (q) | Contentor (c) | Ler (r) |
Definir Metadados de Fila | Fila (q) | Contentor (c) | Escrever (w) |
Colocar Mensagem | Fila (q) | Objeto (o) | Adicionar (a) |
Obter Mensagens | Fila (q) | Objeto (o) | Processo (p) |
Pré-visualizar Mensagens | Fila (q) | Objeto (o) | Ler (r) |
Eliminar Mensagem | Fila (q) | Objeto (o) | Processo (p) |
Limpar Mensagens | Fila (q) | Objeto (o) | Eliminar (d) |
Atualizar Mensagem | Fila (q) | Objeto (o) | Atualizar (u) |
Serviço Tabela
A tabela seguinte lista operações do serviço Tabela e indica que tipo de recurso assinado e permissões assinadas para especificar quando delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Obter Propriedades do Serviço Tabela | Tabela (t) | Serviço (s) | Ler (r) |
Definir Propriedades do Serviço tabela | Tabela (t) | Serviço (s) | Escrever (w) |
Obter Estatísticas do Serviço tabela | Tabela (t) | Serviço (s) | Ler (r) |
Tabelas de Consulta | Tabela (t) | Contentor (c) | Lista (l) |
Criar a Tabela | Tabela (t) | Contentor (c) | Create (c) ou Escrita (w) |
Eliminar Tabela | Tabela (t) | Contentor (c) | Eliminar (d) |
Entidades de Consulta | Tabela (t) | Objeto (o) | Ler (r) |
Inserir Entidade | Tabela (t) | Objeto (o) | Adicionar (a) |
Inserir ou Intercalar Entidade | Tabela (t) | Objeto (o) | Adicionar (a) e Atualizar (u)1 |
Inserir ou Substituir Entidade | Tabela (t) | Objeto (o) | Adicionar (a) e Atualizar (u)1 |
Atualizar Entidade | Tabela (t) | Objeto (o) | Atualizar (u) |
Intercalar Entidade | Tabela (t) | Objeto (o) | Atualizar (u) |
Eliminar Entidade | Tabela (t) | Objeto (o) | Eliminar (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 seguinte lista as operações do Serviço de ficheiros e indica o tipo de recurso assinado e as permissões assinadas a especificar quando delega o acesso a essas operações.
Operação | 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 Ficheiros | Ficheiro (f) | Serviço (s) | Ler (r) |
Definir Propriedades do Serviço de Ficheiros | Ficheiro (f) | Serviço (s) | Escrever (w) |
Obter Estatísticas de Partilha | Ficheiro (f) | Contentor (c) | Ler (r) |
Create Partilhar | Ficheiro (f) | Contentor (c) | Create (c) ou Escrita (w) |
Partilha de Instantâneos | Ficheiro (f) | Contentor (c) | Create (c) ou Escrita (w) |
Obter Propriedades de Partilha | Ficheiro (f) | Contentor (c) | Ler (r) |
Definir Propriedades da Partilha | Ficheiro (f) | Contentor (c) | Escrever (w) |
Obter Metadados de Partilha | Ficheiro (f) | Contentor (c) | Ler (r) |
Definir Metadados de Partilha | Ficheiro (f) | Contentor (c) | Escrever (w) |
Eliminar Partilha | Ficheiro (f) | Contentor (c) | Eliminar (d) |
Listar Diretórios e Ficheiros | Ficheiro (f) | Contentor (c) | Lista (l) |
Diretório Create | Ficheiro (f) | Objeto (o) | Create (c) ou Escrita (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) |
Eliminar Diretório | Ficheiro (f) | Objeto (o) | Eliminar (d) |
Create Ficheiro (criar novo) | Ficheiro (f) | Objeto (o) | Create (c) ou Escrita (w) |
Create Ficheiro (substituir existente) | Ficheiro (f) | Objeto (o) | Escrever (w) |
Obter Ficheiro | Ficheiro (f) | Objeto (o) | Ler (r) |
Obter Propriedades do Ficheiro | Ficheiro (f) | Objeto (o) | Ler (r) |
Obter Metadados de Ficheiro | Ficheiro (f) | Objeto (o) | Ler (r) |
Definir Metadados de Ficheiro | Ficheiro (f) | Objeto (o) | Escrever (w) |
Eliminar Ficheiro | Ficheiro (f) | Objeto (o) | Eliminar (d) |
Mudar o Nome de Ficheiro | Ficheiro (f) | Objeto (o) | Eliminar (d) ou Escrever (w) |
Colocar Intervalo | Ficheiro (f) | Objeto (o) | Escrever (w) |
Intervalos de Lista | Ficheiro (f) | Objeto (o) | Ler (r) |
Abortar Ficheiro de Cópia | Ficheiro (f) | Objeto (o) | Escrever (w) |
Copiar Ficheiro | Ficheiro (f) | Objeto (o) | Escrever (w) |
Limpar Intervalo | Ficheiro (f) | Objeto (o) | Escrever (w) |
Exemplo de URI de SAS de Conta
O exemplo seguinte mostra um URI do serviço Blob com um token SAS de conta anexado ao mesmo. O token DE SAS da conta fornece permissões para o serviço, contentor e objetos. A tabela divide 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>
Name | Parte SAS | Description |
---|---|---|
URI do Recurso | https://myaccount.blob.core.windows.net/?restype=service&comp=properties |
O ponto final de serviço, com parâmetros para obter propriedades de serviço (quando chamado com GET) ou definir propriedades do serviço (quando chamado com SET). Com base no valor do campo de serviços assinados (ss ), esta SAS pode ser utilizada com o Armazenamento de Blobs ou com Ficheiros do Azure. |
Delimitador | ? |
O delimitador que precede a cadeia de consulta. O delimitador não faz parte do token de SAS. |
Versão dos serviços de armazenamento | sv=2022-11-02 |
Para a versão 2012-02-12 dos serviços de Armazenamento do Azure e posterior, este parâmetro indica a versão a utilizar. |
Serviços | ss=b |
A SAS aplica-se aos serviços de Blob. |
Tipos de recurso | srt=sco |
A SAS aplica-se às operações ao nível do serviço, ao nível do contentor e ao nível do objeto. |
Permissões | sp=rwlc |
As permissões concedem acesso a operações de leitura, escrita, lista e criação. |
Hora de início | st=2019-08-01T22%3A18%3A26Z |
Especificado na hora UTC. Se quiser que a SAS seja válida imediatamente, omita a hora de início. |
Tempo de expiração | se=2019-08-10T02%3A23%3A26Z |
Especificado na hora UTC. |
Protocolo | spr=https |
Só são permitidos pedidos que utilizem HTTPS. |
Assinatura | sig=<signature> |
Utilizado para autorizar o acesso ao blob. A assinatura é um HMAC que é calculado através de uma cadeia de carateres para assinar e chave com o algoritmo SHA256 e, em seguida, codificado através da codificação Base64. |
Uma vez que as permissões estão restritas ao nível do serviço, as operações acessíveis com esta SAS são Obter Propriedades do Serviço blob (ler) e Definir Propriedades do Serviço blob (escrita). No entanto, com um URI de recurso diferente, o mesmo token de SAS também pode ser utilizado para delegar o acesso a Obter Estatísticas do Serviço blob (leitura).