Tokens SAS para seus contêineres de armazenamento
Aprenda a criar delegação de usuário, tokens de assinatura de acesso compartilhado (SAS), usando o portal do Azure. Os tokens SAS de delegação de usuários são protegidos com credenciais do Microsoft Entra. Os tokens SAS fornecem acesso seguro e delegado a recursos em sua conta de armazenamento do Azure.
Gorjeta
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 em suas solicitações HTTP.
- Você pode usar identidades gerenciadas para conceder acesso a qualquer recurso que ofereça suporte à autenticação do Microsoft Entra, incluindo seus próprios aplicativos.
- O uso de identidades gerenciadas substitui o requisito de incluir tokens de assinatura de acesso compartilhado (SAS) com suas URLs de origem e de destino.
- Não existem custos adicionais para usar identidades geridas no Azure.
Em um alto nível, veja como os tokens SAS funcionam:
Seu aplicativo envia o token SAS para o Armazenamento do Azure como parte de uma solicitação de API REST.
Se o serviço de armazenamento verificar se 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 seus dados.
- Os contêineres de armazenamento de dados estã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 texto e dados binários , como arquivos, texto e imagens.
Importante
Os tokens SAS são usados para conceder permissões a recursos de armazenamento e devem ser protegidos da mesma maneira que uma chave de conta.
As operações que usam tokens SAS devem ser executadas somente em uma conexão HTTPS, e os URIs 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 ativa do Azure. Se não tiver uma, poderá criar uma conta gratuita.
Um recurso de linguagem de IA do Azure.
Uma conta de Armazenamento de Blob do Azure de desempenho padrão. Você também precisa criar contêineres para armazenar e organizar seus arquivos em sua conta de armazenamento. Se você não souber como criar uma conta de armazenamento do Azure com um contêiner de armazenamento, siga estes inícios rápidos:
- Criar uma conta de armazenamento. Ao criar sua conta de armazenamento, selecione Desempenho padrão no campo Detalhes>da instância Desempenho.
- Crie um contêiner. Ao criar seu contêiner, defina Nível de acesso público como Contêiner (acesso de leitura anônimo para contêineres e arquivos) na janela Novo contêiner .
Criar tokens SAS no portal do Azure
Vá para o portal do Azure e navegue até seu contêiner ou um arquivo específico da seguinte maneira e continue com estas etapas:
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 permissões marcando e/ou desmarcando a caixa de seleção apropriada:
Seu arquivo de origem deve designar acesso de leitura e lista .
Seu arquivo de destino deve designar acesso de gravação e lista .
Especifique a chave assinada Tempos de início e expiração .
- 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 mais longo para o tempo em que você estiver usando sua conta de armazenamento para operações do Serviço de Idiomas.
- O valor do tempo de expiração é determinado pelo fato de você estar usando uma chave de conta ou um método de assinatura de chave de delegação de usuário:
- Chave da conta: não há limite de tempo máximo imposto, no entanto, as práticas recomendadas recomendam que você configure uma política de expiração para limitar o intervalo e minimizar o comprometimento. Configure uma política de expiração para assinaturas de acesso compartilhado.
- Chave de delegação do usuário: o valor para o tempo de expiração é de no máximo sete dias a partir da criação do token SAS. A SAS é inválida depois que a chave de delegação do usuário expira, portanto, uma SAS com um tempo de expiração superior a sete dias ainda será válida apenas por sete dias. Para obter mais informações, consulte Usar credenciais do Microsoft Entra para proteger uma SAS.
O campo Endereços IP permitidos é opcional e especifica um endereço IP ou um intervalo de endereços IP a partir dos quais aceitar solicitações. Se o endereço IP da solicitação não corresponder ao endereço IP ou intervalo de endereços especificado no token SAS, a autorização falhará. O endereço IP ou um intervalo de endereços IP deve ser IP público, não privado. 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 o SAS. O valor padrão é HTTPS.
Revise e selecione Gerar token SAS e URL.
A cadeia de caracteres de consulta do token Blob SAS e a URL do Blob SAS são exibidas na área inferior da janela.
Copie e cole o token SAS de Blob e os valores de URL em um local seguro. Eles só serão exibidos uma vez e não podem ser recuperados quando a janela for fechada.
Para construir uma URL SAS, acrescente o token SAS (URI) à URL de um serviço de armazenamento.
Use sua URL SAS para conceder acesso
O 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 SAS com solicitações de API REST de duas maneiras:
Use o URL SAS como seus valores sourceURL e targetURL.
Anexe a cadeia de caracteres de consulta SAS aos valores sourceURL e targetURL existentes.
Aqui está um exemplo de solicitação de 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}"
}
}
]
}
}
Está feito! Você aprendeu como criar tokens SAS para autorizar como os clientes acessam seus dados.