Tokens SAS para os contêineres de armazenamento
Saiba como criar delegação de usuário, tokens SAS, usando o portal do Azure. Os tokens SAS de delegação de usuário são protegidos com credenciais do Microsoft Entra. Um token SAS oferece acesso seguro e delegado aos recursos da conta de armazenamento do Azure.
Dica
O Controle de acesso baseado em função (identidades gerenciadas) fornece um método alternativo para conceder acesso aos dados de armazenamento sem a necessidade de incluir tokens SAS com solicitações HTTP.
- Você pode usar identidades gerenciadas para conceder acesso a qualquer recurso que dê suporte à autenticação do Microsoft Entra, incluindo seus próprios aplicativos.
- O uso de identidades gerenciadas substitui o requisito para incluir tokens de assinatura de acesso compartilhado (SAS) nas suas URLs de origem e destino.
- Não há nenhum custo adicional para usar identidades gerenciadas no Azure.
Em linhas gerais, veja como os tokens SAS funcionam:
O aplicativo envia o token SAS ao Armazenamento do Azure como parte de uma solicitação de API REST.
Se o serviço de armazenamento verificar que a SAS é válida, a solicitação será autorizada.
Se o token SAS for considerado inválido, a solicitação será recusada e o código de erro 403 (Proibido) será retornado.
O Armazenamento de Blobs do Azure oferece três tipos de recursos:
- As contas de armazenamento fornecem um namespace exclusivo no Azure para os dados.
- Os contêineres de armazenamento de dadosestão localizados em contas de armazenamento e organizam conjuntos de blobs (arquivos, texto ou imagens).
- Os blobs estão localizados em contêineres e armazenam dados binários e de texto, como arquivos, texto e imagens.
Importante
Os tokens SAS são usados para conceder permissões aos recursos de armazenamento e devem ser protegidos da mesma maneira que uma chave de conta.
As operações que usam tokens SAS só devem ser executadas em uma conexão HTTPS e URIs de SAS só devem ser distribuídos em uma conexão segura como HTTPS.
Pré-requisitos
Para começar, você precisa dos seguintes recursos:
Uma conta do Azure ativa. Se você não tem uma, crie uma conta gratuita.
Um recurso de Linguagem de IA do Azure.
O Desempenho Standard de uma conta de Armazenamento de Blobs do Azure. Você também precisa criar contêineres para armazenar e organizar arquivos em sua conta de armazenamento. Se você não sabe como criar uma conta de armazenamento do Azure com um contêiner de armazenamento, siga este início rápido:
- Criar uma conta de armazenamento. Ao criar sua a conta de armazenamento, selecione desempenho Standard no campo Detalhes da instância>Desempenho.
- Criar um contêiner. Ao criar seu contêiner, defina o Nível de acesso público como Contêiner (acesso de leitura anônimo de contêineres e arquivos) na janela Novo contêiner.
Criar tokens SAS no portal do Azure
Acesse o portal do Azure e navegue até seu contêiner ou arquivo específico da seguinte maneira e continue com as etapas abaixo:
Fluxo de trabalho: Sua conta de armazenamento → contêineres → seu contêiner → seu arquivo
Clique com o botão direito do mouse no contêiner ou arquivo e selecione Gerar SAS no menu suspenso.
Selecione Método de assinatura → Chave de delegação do usuário.
Defina as Permissões marcando e/ou desmarcando a caixa de seleção apropriada:
Seu arquivo de origem deve designar o acesso de leitura e à lista.
Seu arquivo de destino deve designar o acesso de gravação e à lista.
Especifique a hora de Início e de Expiração da chave assinada.
- Quando você cria uma assinatura de acesso compartilhado (SAS), a duração padrão é de 48 horas. Após 48 horas, você precisará criar um novo token.
- Considere definir um período de duração maior para o tempo que usa a conta de armazenamento para operações de Serviço de linguagem.
- O valor do tempo de expiração é determinado pelo fato de você estar usando uma Chave de conta ou Chave de delegação de usuário Método de assinatura:
- Chave de conta: sem limite de tempo máximo imposto; no entanto, as melhores práticas recomendam que você configure uma política de expiração para limitar o intervalo e minimizar o comprometimento. Configurar uma política de expiração para assinaturas de acesso compartilhado.
- Chave de delegação de usuário: o valor máximo do período de expiração é de sete dias a partir da criação do token SAS. Como a chave de delegação de usuário expira em sete dias e invalida a SAS depois disso, mesmo que uma SAS tenha o tempo de expiração superior a sete dias, ainda assim ela será válida apenas durante esse período. Para obter mais informações, veja Usar credenciais do Microsoft Entra para proteger um SAS.
O campo Endereços IP permitidos é opcional e especifica um endereço IP ou intervalo de endereços IP do qual aceitar solicitações. Se o endereço IP da solicitação não for igual ao endereço IP ou intervalo de endereços especificados no token SAS, a autorização falhará. O endereço IP ou um intervalo de endereços IP devem ser IPs públicos, não privados. Para obter mais informações, consulte, Especificar um endereço IP ou intervalo de IP.
O campo Protocolos permitidos é opcional e especifica o protocolo permitido para uma solicitação feita com a SAS. O valor padrão é HTTPS.
Confira os dados e selecione Gerar token SAS e URL.
A cadeia de caracteres de consulta do Token SAS do Blob e a URL SAS do Blob serão exibidas na área inferior da janela.
Copie e cole o token SAS do blob e os valores da URL em um local seguro. Eles são exibidos apenas uma vez e não podem ser recuperados depois que a janela é fechada.
Para criar uma URL SAS, acrescente o token SAS (URI) à URL de um serviço de armazenamento.
Usar a URL SAS para permitir acesso
A URL SAS inclui um conjunto especial de parâmetros de consulta. Esses parâmetros indicam como o cliente acessa os recursos.
Você pode incluir sua URL da SAS com solicitações de API REST de duas maneiras:
Use a URL da SAS como seus valores de sourceURL e targetURL.
Acrescente a cadeia de caracteres de consulta da SAS aos valores de sourceURL e targetURL existentes.
Aqui está uma amostra de solicitação da API REST:
{
"analysisInput": {
"documents": [
{
"id": "doc_0",
"language": "en",
"source": {
"location": "myaccount.blob.core.windows.net/sample-input/input.pdf?{SAS-Token}"
},
"target": {
"location": "https://myaccount.blob.core.windows.net/sample-output?{SAS-Token}"
}
}
]
}
}
É isso! Você aprendeu a criar tokens SAS para autorizar como os clientes a acessam seus dados.