Compartilhar via


Criar tokens SAS para os contêineres de armazenamento

Neste artigo, aprenda a criar tokens SAS (Assinatura de Acesso Compartilhado) de delegação de usuário usando o portal do Azure ou o Gerenciador de Armazenamento 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.

Captura de tela de um URL de armazenamento com token SAS anexado.

Dica

As identidades gerenciadas fornecem um método alternativo para que você conceda acesso aos seus dados de armazenamento sem a necessidade de incluir tokens SAS com solicitações HTTP. Confira, Identidades gerenciadas para Tradução de Documento.

  • 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:

  • Um aplicativo envia o token SAS ao Armazenamento do Azure como parte de uma solicitação de API REST.

  • O serviço de armazenamento verifica se a SAS é válida. Em caso afirmativo, a solicitação será autorizada.

  • A solicitação será recusada se o token SAS for considerado inválido. Nesse caso, 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 tiver uma, poderá criar uma conta gratuita.

  • Um recurso Tradutor.

  • 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:

Criar token SAS para um contêiner Criar token SAS para um arquivo específico
Sua conta de armazenamentocontêineresseu contêiner Sua conta de armazenamentocontêineresseu contêinerseu arquivo
  1. Clique com o botão direito do mouse no contêiner ou arquivo e selecione Gerar SAS no menu suspenso.

  2. Selecione Método de assinaturaChave de delegação do usuário.

  3. Defina as Permissões marcando e/ou desmarcando a caixa de seleção apropriada:

    • O contêiner ou o arquivo de origem deve designar o acesso de leitura e listagem.

    • O contêiner ou arquivo de destino deve designar o acesso de gravação e listagem.

  4. 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 Tradução.
    • 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: embora um limite de tempo máximo não seja imposto, 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, consulte Usar credenciais do Microsoft Entra para proteger um SAS.
  5. 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 um intervalo de IP.

  6. O campo Protocolos permitidos é opcional e especifica o protocolo permitido para uma solicitação feita com a SAS. O valor padrão é HTTPS.

  7. Confira os dados e selecione Gerar token SAS e URL.

  8. 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.

  9. 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.

  10. Para criar uma URL de SAS, acrescente o token SAS (URI) à URL de um serviço de armazenamento.

Criar tokens SAS com o Gerenciador de Armazenamento do Azure

O Gerenciador de Armazenamento do Azure é uma ferramenta gratuita autônoma para o gerenciamento de recursos do armazenamento em nuvem do Azure do seu desktop.

  • Você precisa do aplicativo Gerenciador de Armazenamento do Azure instalado em um ambiente de desenvolvimento do Windows, do macOS ou do Linux.

  • Após instalar o aplicativo Gerenciador de Armazenamento do Azure, conecte-o à conta de armazenamento que você está usando para a tradução de documento. Siga estas etapas para criar tokens para um contêiner de armazenamento ou um arquivo de blob específico:

  1. Abra o aplicativo Gerenciador de Armazenamento do Azure no computador local e navegue até suas contas de armazenamento conectadas.

  2. Expanda o nó Contas de Armazenamento e selecione Contêineres de Blob.

  3. Expanda o nó Contêineres de Blob e clique com o botão direito do mouse em um nó de contêiner de armazenamento para exibir o menu de opções.

  4. Selecione Obtenha Assinatura de Acesso Compartilhado... no menu de opções.

  5. Na janela Assinatura de Acesso Compartilhado, faça as seguintes seleções:

    • Selecione sua Política de acesso (o padrão é nenhuma política).
    • Especifique a data e a hora de Início e de Expiração da chave assinada. Recomendamos usar um período de vida útil curto, pois não é possível revogar uma SAS depois de gerada.
    • Selecione o Fuso horário da data e hora de início e de expiração (o padrão é Local).
    • Defina as Permissões do contêiner marcando e/ou desmarcando a caixa de seleção apropriada.
    • Confira os dados e selecione Criar.
  6. Uma nova janela será exibida com o nome do Contêiner, o URI e a Cadeia de caracteres de consulta do contêiner.

  7. Copie e cole os valores de contêiner, de URI e de cadeia de caracteres de consulta em uma localização segura. Eles são exibidos apenas uma vez e não podem ser recuperados depois que a janela é fechada.

  8. Para criar uma URL de 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:

{
    "inputs": [
        {
            "storageType": "File",
            "source": {
                "sourceUrl": "https://my.blob.core.windows.net/source-en/source-english.docx?sv=2019-12-12&st=2021-01-26T18%3A30%3A20Z&se=2021-02-05T18%3A30%3A00Z&sr=c&sp=rl&sig=d7PZKyQsIeE6xb%2B1M4Yb56I%2FEEKoNIF65D%2Fs0IFsYcE%3D"
            },
            "targets": [
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-Spanish.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "es"
                },
                {
                    "targetUrl": "https://my.blob.core.windows.net/target/try/Target-German.docx?sv=2019-12-12&st=2021-01-26T18%3A31%3A11Z&se=2021-02-05T18%3A31%3A00Z&sr=c&sp=wl&sig=AgddSzXLXwHKpGHr7wALt2DGQJHCzNFF%2F3L94JHAWZM%3D",
                    "language": "de"
                }
            ]
        }
    ]
}

É isso! Você acabou de aprender a criar tokens SAS para autorizar como os clientes acessam seus dados.

Próximas etapas