Criar uma SAS de conta
Importante
Para obter a segurança ideal, a Microsoft recomenda usar a ID do Microsoft Entra com identidades gerenciadas para autorizar solicitações contra dados de blob, fila e tabela, sempre que possível. A autorização com a ID do Microsoft Entra e identidades gerenciadas fornece segurança superior e facilidade de uso sobre a 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, aplicativos em execução 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 SAS (assinaturas de acesso compartilhado) são usadas, a Microsoft recomenda usar uma SAS de delegação de usuário. Uma SAS de delegação de usuário é protegida com as credenciais do Microsoft Entra em vez da chave da conta. Para saber mais sobre assinaturas de acesso compartilhado, consulte Criar uma SAS de delegação de usuário.
A partir da versão 2015-04-05, o Armazenamento do Azure dá suporte à criação de um novo tipo de SAS (assinatura de acesso compartilhado) no nível da conta de armazenamento. Ao criar uma SAS de conta, você pode:
Delegar 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
.Delegar acesso a mais de um serviço em uma conta de armazenamento por vez. Por exemplo, você pode delegar o acesso a recursos no Armazenamento de Blobs do Azure e nos Arquivos do Azure usando uma SAS de conta.
Delegar acesso a operações de gravação e exclusão para contêineres, filas, tabelas e compartilhamentos de arquivos, que não estão disponíveis com uma SAS específica ao objeto.
Especifique um endereço IP ou um intervalo de endereços IP dos quais aceitar solicitações.
Especifique o protocolo HTTP do qual aceitar solicitações (HTTPS ou HTTP/HTTPS).
Atualmente, não há suporte para políticas de acesso armazenadas para uma SAS de conta.
Cuidado
As assinaturas de acesso compartilhado são chaves que concedem permissões aos 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 a discrição na distribuição de uma SAS e tenha um plano em vigor para revogar uma SAS comprometida. As operações que usam assinaturas de acesso compartilhado devem ser executadas somente em uma conexão HTTPS, e as URIs SAS devem ser distribuídas apenas em uma conexão segura, como HTTPS.
Autorizar uma SAS de conta
Você protege uma SAS de conta usando uma chave de conta de armazenamento. Quando você cria uma SAS de conta, 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, criar uma SAS de delegação de usuário.
Construir um URI SAS de conta
O URI sas da conta consiste no URI do recurso para o qual a SAS delegará o 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 que estão 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 obrigató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) |
Obrigatória. 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 como 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) |
Obrigatória. Especifica os serviços assinados que são acessíveis com a SAS da conta. Entre os valores possíveis estão: - 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 do Armazenamento de Blobs e dos Arquivos do Azure. |
SignedResourceTypes (srt) |
Obrigatória. Especifica os tipos de recursos assinados que são acessíveis com a SAS da conta. - Serviço ( s ): Acesso a APIs de nível de serviço (por exemplo, Obter/Definir Propriedades de Serviço, Obter Estatísticas de Serviço, Listar Contêineres/Filas/Tabelas/Compartilhamentos).- Contêiner ( c ): Acesso a APIs no nível do contêiner (por exemplo, Criar/Excluir Contêiner, Criar/Excluir Fila, Criar/Excluir Tabela, Criar/Excluir Compartilhamento, Listar Blobs/Arquivos e Diretórios).- Objeto ( o ): Acesso a APIs no nível do objeto para blobs, mensagens de fila, entidades de tabela e arquivos (por exemplo, Colocar Blob, Entidade de Consulta, Obter Mensagens, Criar Arquivo).Você pode combinar valores para fornecer acesso a mais de um tipo de recurso. Por exemplo, srt=sc especifica o acesso aos recursos de serviço e contêiner. |
SignedPermissions (sp) |
Obrigatória. Especifica as permissões assinadas para a SAS da conta. As permissões são válidas somente se corresponderem ao tipo de recurso assinado especificado. Se eles não corresponderem, eles são ignorados. - Leitura ( 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.- Gravação ( w ): válido para todos os tipos de recursos assinados (Serviço, Contêiner e Objeto). Permite o acesso de gravação para o tipo de recurso especificado, permitindo que um usuário crie e atualize recursos.– Excluir ( d ): válido para tipos de recurso de contêiner e objeto, exceto para mensagens de fila.– Excluir versão ( x ): válido apenas para o tipo de recurso de objeto do Blob.– Exclusão permanente ( y ): válido apenas para o tipo de recurso de objeto de Blob.- Lista ( l ): válido somente para tipos de recursos de serviço e contêiner.- Adicionar ( a ): Válido apenas para os seguintes tipos de recurso de objeto: mensagens de fila, entidades de tabela e blobs de acréscimo.- Criar ( c ): válido para tipos de recurso de contêiner e os seguintes tipos de recurso de objeto: blobs e arquivos. Os usuários podem criar novos recursos, mas podem não substituir os recursos existentes.- Atualização ( u ): válido apenas para os seguintes tipos de recurso 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.- Marca ( t ): válido apenas para o seguinte tipo de recurso de objeto: blobs. Permite operações de marca de blob.- Filtro ( f ): válido apenas para o seguinte tipo de recurso de objeto: blob. Permite filtragem por marca de blob.- Definir Política de Imutabilidade ( i ): válido apenas para o seguinte tipo de recurso de objeto: blob. Permite definir/excluir a política de imutabilidade e a retenção legal em um blob. |
SignedStart (st) |
Opcional. A hora em que a SAS se torna válida, expressa em um dos formatos UTC ISO 8601 aceitos. Se for omitido, a hora de início será considerada a hora em que o serviço de armazenamento recebe a solicitação. Para obter mais informações sobre formatos UTC aceitos, consulte Formatação de valores datetime. |
SignedExpiry (se) |
Obrigatória. A hora em que a assinatura de acesso compartilhado se torna inválida, expressa em um dos formatos UTC ISO 8601 aceitos. Para obter mais informações sobre formatos UTC aceitos, consulte Formatação de 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, tenha em mente que o intervalo é inclusivo. Há suporte apenas para endereços IPv4. 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 somente HTTPS (https ). O valor padrão é https,http .Observe que HTTP não é apenas um valor permitido. |
SignedEncryptionScope (ses) |
Opcional. Indica o escopo de criptografia a ser usado para criptografar o conteúdo da solicitação. Esse campo tem suporte com a versão 2020-12-06 e posterior. |
Signature (sig) |
Obrigatória. A parte de assinatura do URI é usada para autorizar a solicitação feita com a assinatura de acesso compartilhado. A cadeia de caracteres a assinar é uma cadeia de caracteres exclusiva que é construída a partir dos campos que devem ser verificados para autorizar a solicitação. A assinatura é um HMAC (código de autenticação de mensagem baseado em hash) que é computado na cadeia de caracteres para assinar e na chave usando o algoritmo SHA256 e 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 Controle de versão dos 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 |
Obrigatória. Com suporte na versão 2015-04-05 e posterior. A versão do serviço de armazenamento a ser usada para autorizar e manipular solicitações que você faz com essa assinatura de acesso compartilhado. Para obter mais informações, consulte controle de versão 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 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. Há suporte apenas para endereços IPv4.
Ao especificar um intervalo de endereços IP, tenha em mente que o intervalo é inclusivo. Por exemplo, especificar sip=198.51.100.0
ou sip=198.51.100.10-198.51.100.20
na 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 | Local 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 saber mais, consulte Configurar Redes Virtuais e Firewalls de Armazenamento do Azure. |
Cliente em execução no Azure | Em uma região diferente do cliente | Uma SAS fornecida ao cliente nesse 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 a SAS deve se originar do endereço IP especificado ou do intervalo de endereços. |
Cliente em execução local ou em um ambiente de nuvem diferente | Em qualquer região do Azure | Uma SAS fornecida ao cliente nesse 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 a SAS deve se originar do endereço IP especificado ou do 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 opcional signedProtocol
(spr
) especifica o protocolo permitido para uma solicitação feita com a SAS. Os valores possíveis são HTTPS e HTTP (https,http
) ou somente HTTPS (https
). O valor padrão é https,http
. Observe que HTTP não é apenas um valor permitido.
Especificar o escopo de criptografia
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 executados como antes.
A tabela a seguir descreve como se referir 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. |
Esse campo tem suporte com a versão 2020-12-06 ou posterior. Se você adicionar o ses
antes da versão com suporte, 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 o cabeçalho x-ms-default-encryption-scope
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 compute a assinatura usando o algoritmo HMAC-SHA256.
Observação
Os campos incluídos na cadeia de caracteres a assinar devem ser decodificados por URL.
Para construir a cadeia de caracteres para assinar uma SAS de conta, 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 uma SAS de conta, 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 da 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 blob
A tabela a seguir lista as operações de serviço blob e indica qual tipo de recurso assinado e permissões assinadas para especificar quando você delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Listar contêineres | Blob (b) | Serviço (s) | Lista (l) |
Obter propriedades do serviço Blob | Blob (b) | Serviço (s) | Leitura (r) |
Definir propriedades do serviço blob | Blob (b) | Serviço (s) | Gravação (w) |
Obter estatísticas do serviço blob | Blob (b) | Serviço (s) | Leitura (r) |
Criar contêiner | Blob (b) | Contêiner (c) | Create(c) ou Write (w) |
Obter propriedades de contêiner | Blob (b) | Contêiner (c) | Leitura (r) |
Obter metadados de contêiner | Blob (b) | Contêiner (c) | Leitura (r) |
Definir metadados de contêiner | Blob (b) | Contêiner (c) | Gravação (w) |
Contêiner de Concessão | Blob (b) | Contêiner (c) | Gravar (w) ou excluir (d)1 |
Excluir Contêiner | Blob (b) | Contêiner (c) | Excluir (d)1 |
Localizar blobs por marcas no contêiner | Blob (b) | Contêiner (c) | Filtro (f) |
Listar Blobs | Blob (b) | Contêiner (c) | Lista (l) |
Colocar Blob (criar novo blob de blocos) | Blob (b) | Objeto (o) | Criar (c) ou gravar (w) |
Colocar Blob (substituir blob de blocos existente) | Blob (b) | Objeto (o) | Gravação (w) |
Colocar Blob (criar novo blob de página) | Blob (b) | Objeto (o) | Criar (c) ou gravar (w) |
Colocar Blob (substituir blob de página existente) | Blob (b) | Objeto (o) | Gravação (w) |
Obter Blob | Blob (b) | Objeto (o) | Leitura (r) |
Obter propriedades de blob | Blob (b) | Objeto (o) | Leitura (r) |
Definir propriedades de blob | Blob (b) | Objeto (o) | Gravação (w) |
Obter metadados de blob | Blob (b) | Objeto (o) | Leitura (r) |
Definir metadados de blob | Blob (b) | Objeto (o) | Gravação (w) |
Obter marcas de blob | Blob (b) | Objeto (o) | Marcas (t) |
Definir marcas de blob | Blob (b) | Objeto (o) | Marcas (t) |
Localizar blobs por marcas | Blob (b) | Objeto (o) | Filtro (f) |
Excluir Blob | Blob (b) | Objeto (o) | Excluir (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) | Exclusão permanente (y)3 |
Blob de Concessão | Blob (b) | Objeto (o) | Gravar (w) ou excluir (d)1 |
Blob de Instantâneo | Blob (b) | Objeto (o) | Criar (c) ou gravar (w) |
Copiar Blob (o destino é um novo blob) | Blob (b) | Objeto (o) | Criar (c) ou gravar (w) |
Copiar Blob (o destino é um blob existente) | Blob (b) | Objeto (o) | Gravação (w) |
Cópia Incremental | Blob (b) | Objeto (o) | Criar (c) ou gravar (w) |
Anular Blob de Cópia | Blob (b) | Objeto (o) | Gravação (w) |
Colocar Bloco | Blob (b) | Objeto (o) | Gravação (w) |
Colocar Lista de Blocos (criar novo blob) | Blob (b) | Objeto (o) | Gravação (w) |
Colocar Lista de Blocos (atualizar blob existente) | Blob (b) | Objeto (o) | Gravação (w) |
Obter lista de blocos | Blob (b) | Objeto (o) | Leitura (r) |
Página Colocar | Blob (b) | Objeto (o) | Gravação (w) |
Obter intervalos de página | Blob (b) | Objeto (o) | Leitura (r) |
Bloco de acréscimo | Blob (b) | Objeto (o) | Adicionar (a) ou gravar (w) |
Limpar Página | Blob (b) | Objeto (o) | Gravação (w) |
1 A permissão Delete
permite quebrar uma concessã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 fila
A tabela a seguir lista as operações de serviço fila e indica qual tipo de recurso assinado e permissões assinadas para especificar quando você delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Obter propriedades do serviço Fila | Fila (q) | Serviço (s) | Leitura (r) |
Definir propriedades do serviço fila | Fila (q) | Serviço (s) | Gravação (w) |
Listar Filas | Fila (q) | Serviço (s) | Lista (l) |
Obter estatísticas de serviço de fila | Fila (q) | Serviço (s) | Leitura (r) |
Criar Fila | Fila (q) | Contêiner (c) | Create(c) ou Write (w) |
Excluir Fila | Fila (q) | Contêiner (c) | Excluir (d) |
Obter metadados de fila | Fila (q) | Contêiner (c) | Leitura (r) |
Definir metadados de fila | Fila (q) | Contêiner (c) | Gravação (w) |
Colocar Mensagem | Fila (q) | Objeto (o) | Adicionar (a) |
Obter mensagens | Fila (q) | Objeto (o) | Processo (p) |
Espiar Mensagens | Fila (q) | Objeto (o) | Leitura (r) |
Excluir Mensagem | Fila (q) | Objeto (o) | Processo (p) |
Limpar Mensagens | Fila (q) | Objeto (o) | Excluir (d) |
Atualizar Mensagem | Fila (q) | Objeto (o) | Atualização (u) |
Serviço tabela
A tabela a seguir lista as operações de serviço tabela e indica qual tipo de recurso assinado e permissões assinadas para especificar quando você delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Obter propriedades de serviço de tabela | Tabela (t) | Serviço (s) | Leitura (r) |
Definir propriedades de serviço de tabela | Tabela (t) | Serviço (s) | Gravação (w) |
Obter estatísticas de serviço de tabela | Tabela (t) | Serviço (s) | Leitura (r) |
Tabelas de consulta | Tabela (t) | Contêiner (c) | Lista (l) |
Criar Tabela | Tabela (t) | Contêiner (c) | Criar (c) ou gravar (w) |
Excluir Tabela | Tabela (t) | Contêiner (c) | Excluir (d) |
Entidades de consulta | Tabela (t) | Objeto (o) | Leitura (r) |
Inserir Entidade | Tabela (t) | Objeto (o) | Adicionar (a) |
Inserir ou mesclar 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) | Atualização (u) |
Mesclar Entidade | Tabela (t) | Objeto (o) | Atualização (u) |
Excluir Entidade | Tabela (t) | Objeto (o) | Excluir (d) |
as permissões 1 Adicionar e Atualizar são necessárias para operações upsert no serviço Tabela.
Serviço de arquivo
A tabela a seguir lista as operações de serviço de arquivo e indica qual tipo de recurso assinado e permissões assinadas para especificar quando você delega o acesso a essas operações.
Operação | Serviço assinado | Tipo de recurso assinado | Permissão assinada |
---|---|---|---|
Listar compartilhamentos | Arquivo (f) | Serviço (s) | Lista (l) |
Obter propriedades do serviço de arquivo | Arquivo (f) | Serviço (s) | Leitura (r) |
Definir propriedades do serviço de arquivo | Arquivo (f) | Serviço (s) | Gravação (w) |
Obter estatísticas de compartilhamento | Arquivo (f) | Contêiner (c) | Leitura (r) |
Criar compartilhamento | Arquivo (f) | Contêiner (c) | Criar (c) ou gravar (w) |
Compartilhamento de Instantâneo | Arquivo (f) | Contêiner (c) | Criar (c) ou gravar (w) |
Obter propriedades de compartilhamento | Arquivo (f) | Contêiner (c) | Leitura (r) |
Definir propriedades de compartilhamento | Arquivo (f) | Contêiner (c) | Gravação (w) |
Obter metadados de compartilhamento | Arquivo (f) | Contêiner (c) | Leitura (r) |
Definir metadados de compartilhamento | Arquivo (f) | Contêiner (c) | Gravação (w) |
Excluir Compartilhamento | Arquivo (f) | Contêiner (c) | Excluir (d) |
Listar diretórios e arquivos | Arquivo (f) | Contêiner (c) | Lista (l) |
Criar Diretório | Arquivo (f) | Objeto (o) | Criar (c) ou gravar (w) |
Obter propriedades de diretório | Arquivo (f) | Objeto (o) | Leitura (r) |
Obter metadados de diretório | Arquivo (f) | Objeto (o) | Leitura (r) |
Definir metadados de diretório | Arquivo (f) | Objeto (o) | Gravação (w) |
Excluir Diretório | Arquivo (f) | Objeto (o) | Excluir (d) |
Criar Arquivo (criar novo) | Arquivo (f) | Objeto (o) | Criar (c) ou gravar (w) |
Criar Arquivo (substituir existente) | Arquivo (f) | Objeto (o) | Gravação (w) |
Obter Arquivo | Arquivo (f) | Objeto (o) | Leitura (r) |
Obter propriedades do arquivo | Arquivo (f) | Objeto (o) | Leitura (r) |
Obter metadados de arquivo | Arquivo (f) | Objeto (o) | Leitura (r) |
Definir metadados de arquivo | Arquivo (f) | Objeto (o) | Gravação (w) |
Excluir Arquivo | Arquivo (f) | Objeto (o) | Excluir (d) |
Renomear Arquivo | Arquivo (f) | Objeto (o) | Excluir (d) ou gravar (w) |
Colocar Intervalo | Arquivo (f) | Objeto (o) | Gravação (w) |
Listar intervalos | Arquivo (f) | Objeto (o) | Leitura (r) |
Anular arquivo de cópia | Arquivo (f) | Objeto (o) | Gravação (w) |
Copiar Arquivo | Arquivo (f) | Objeto (o) | Gravação (w) |
Limpar Intervalo | Arquivo (f) | Objeto (o) | Gravação (w) |
Exemplo de URI de SAS da conta
O exemplo a seguir mostra um URI do serviço Blob com um token SAS de conta acrescentado a ele. O token SAS da conta fornece permissões para o serviço, o contêiner e os 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>
Nome | Parte 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 chamados 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 Blobs ou 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 |
A SAS se aplica aos serviços de Blob. |
Tipos de recurso | srt=sco |
A SAS se aplica a operações no nível do serviço, no nível do contêiner e no nível do objeto. |
Permissões | sp=rwlc |
As permissões concedem acesso a operações de leitura, gravação, lista e criação. |
Hora de início | st=2019-08-01T22%3A18%3A26Z |
Especificado no horário UTC. Se você quiser que a SAS seja válida imediatamente, omita a hora de início. |
Hora de expiração | se=2019-08-10T02%3A23%3A26Z |
Especificado no horário 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 é computado em uma cadeia de caracteres para sinal e chave usando o algoritmo SHA256 e codificado usando a codificação Base64. |
Como as permissões são restritas ao nível do serviço, as operações acessíveis com essa SAS são Obter propriedades do serviço blob (leitura) e definir propriedades do serviço 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 do serviço blob (leitura).