1 of 20
2 of 20
3 of 20
4 of 20
5 of 20
6 of 20
7 of 20
8 of 20
9 of 20
10 of 20
11 of 20
12 of 20
13 of 20
14 of 20
15 of 20
16 of 20
17 of 20
18 of 20
19 of 20
20 of 20

doc

Como utilizar a solution Secure Token através do Marketplace da Azion

Visão geral

A Azion Secure Token é uma solution serverless disponível no Azion Marketplace.

Com a ajuda da solution Secure Token da Azion, você pode criar URLs por tempo limitado baseadas em token. A criação e validação de assinaturas para cookies, cabeçalhos de autenticação e outras medidas de segurança podem ser feitas usando esses tokens, que podem ser alterados de várias maneiras. Utilizando tanto o HLS quanto o Progressive Download, a solution é frequentemente usada para proteger ativos de vídeo, incluindo aqueles usados para transmissão ao vivo e conteúdo sob demanda.


  1. Obtendo a solution
  2. Gerando o token
  3. Usando a solution
    3.1 Configurando a regra de Firewall de Borda
    3.2 Configurando a solution
  4. Configurando o Rules Engine

1. Obtendo a solution

Para usar a solution Secure Token fornecida pelo Marketplace da Azion, você deverá seguir os seguintes passos:

  1. Faça login na sua conta do Real-Time Manager (RTM).
  2. No canto superior esquerdo da página, selecione Products ⁠menu > Marketplace.
  3. Selecione a caixa de pesquisa e digite “secure token” ou navegue pelos cards para encontrar a solution Secure Token.
  4. Depois de encontrar o card de Secure Token, selecione-o para ir para a página da solution.
  5. Na página da solution, procure a seção Subscribe for no canto inferior direito.
  6. Clique no botão Get it now.

Você verá uma mensagem indicando que sua solution foi instalada com sucesso e está pronta para uso.


2. Gerando o token

Para usar esta solution, você terá que gerar um token. Para fazer isso, siga estes passos:

  1. Vá para o repositório Secure Token da Azion no GitHub.
    • Nele você encontrará uma breve explicação sobre como o secure token é gerado e como usá-lo.
  2. No repositório, você encontrará dois scripts de exemplo para gerar os tokens, um em Python e outro em PHP. Você pode executá-los localmente e gerar o token ou pode gerar esses tokens em sua própria plataforma com seu próprio código.
  3. Salve o token gerado, qualquer que seja a maneira como você utilizou para gerá-lo.

Nota: usando o script Python como exemplo, você terá o seguinte código-fonte:

#!/usr/bin/env python

import base64
import hashlib

secret = 'mysecret'
uri = '/my/uri'
expire = '1470055000'

md5 = hashlib.md5()
md5.update(secret + uri + expire)
token = base64.b64encode(md5.digest()).replace('=','').replace('+','-').replace('/','_')

print 'http://www.example.org%s?st=%s&e=%s' % (uri, token, expire)

Where:

  • secret = uma string de sua escolha que será usada para gerar o token.
  • uri = a URI que será usada com o token.
  • expire = o tempo de expiração do token.

3. Usando a solution

3.1 Configurando uma regra no Edge Firewall

Para instanciar a solution Secure Token, siga as etapas:

  1. No Products menu, selecione Edge Firewall na seção SECURE.
  2. Clique no botão Add Rule Set.
  3. Dê um nome fácil de lembrar à sua nova regra.
  4. Selecione os domínios que deseja proteger com a função.
  5. Habilite o switch para Edge Functions.
  6. Clique no botão Save.

Pronto. Agora você instanciou a regra para sua função.

3.2 Configurando a solution

Para instanciar a solution Secure Token, enquanto ainda estiver na página do Edge Firewall, selecione a aba Functions e siga estes passos:

  1. Clique no botão Add ⁠Function.
  2. Dê um nome fácil de lembrar à sua instância.
  3. No menu suspenso, selecione a função Secure Token.

Esta ação carregará a função, mostrando um formulário com o código-fonte da função e, logo acima dele, duas abas: Code e Args. Ao clicar na aba Code, você poderá navegar pelo código, mas não alterá-lo. No mesmo formulário, você tem outra aba: Args.

Na aba Args, você passará o secret que foi usado para gerar o token.

A aba Args carregará um arquivo JSON que se parece com o mostrado abaixo:

{
    "secure_token_secret": "thatisthesecret"
}

Onde o secure_token_secret será a string secreta que você passou no código ao gerar o token na etapa anterior.

Clique no botão Save e pronto. Sua solution Secure Token foi instanciada.


4. Configurando o Rules Engine

Para concluir, você precisa configurar o Rules Engine para determinar o behavior e os criteria para executar a função.

Ainda na página Edge Firewall, selecione a aba Rules Engine e siga estas etapas:

  1. Clique no botão New Rule.
  2. Dê um nome fácil de se lembrar para a regra.
  3. Selecione um *criteria *para executar a solution. Por exemplo: if Hostname is equal xxxxxxxxxxxx.map.azionedge.net/classes.
  4. Abaixo, selecione um behavior para os criteria. Neste caso, será Run Function.
  5. Em seguida, selecione a função Secure Token de acordo com o nome que você deu a ela na etapa instanciada.
  6. Clique no botão Save.

Pronto. Agora, a solution Secure Token está em execução para cada solicitação feita ao domínio que você indicou.

Importante: o servidor Azion Nginx, sendo executado no edge, roda duas verificações em tokens: se o tempo atual é maior que o tempo de expiração especificado no token e se a assinatura corresponde à assinatura do token. Se a assinatura for inválida, o Nginx retornará um erro 403 e, se o tempo de expiração for excedido, retornará um erro 410. Usuários mal-intencionados não podem alterar o tempo de expiração do token sem quebrar a assinatura.


Você pode encontrar alguns exemplos de trechos de código no repositório público GitHub da Azion para a solution Secure Token e você pode ler um caso de uso para esta solution na página de documentação da Azion.


Não encontrou o que procurava? Abra um ticket.