Como acessar o Edge Storage utilizando o protocolo S3

O Edge Storage da Azion oferece compatibilidade com o protocolo S3 por meio de credenciais. Quando você cria uma credencial para qualquer bucket que você possui, você receberá uma chave de acesso e uma chave secreta para configurar permissões para operações. O acesso ao seu bucket por meio do protocolo S3 será verificado usando a credencial.

O protocolo S3 permite que você acesse buckets e objetos usando uma URL do Edge Storage. Essa configuração facilita operações com arquivos por meio de ferramentas de interface de linha de comando (CLI), como s3cmd, serviços de banco de dados ou funções.


Crie uma credencial via API

  1. Execute a seguinte requisição POST no seu terminal, substituindo [TOKEN VALUE] pelo seu personal token:
Terminal window
curl --location 'https://api.azion.com/v4/storage/s3-credentials' \
--header 'Accept: application/json' \
--header 'Authorization: Token [TOKEN VALUE]' \
--header 'Content-Type: application/json' \
--data '{
"name": "my-s3-credential",
"capabilities": [
"listAllBucketNames",
"listBuckets",
"listFiles",
"readFiles",
"writeFiles",
"deleteFiles"
],
"bucket": "<bucket_name>",
"expiration_date": "<datetime>"
}'
ChaveDescrição
nameDefine um valor de tipo string como o nome da credencial
capabilitiesAceita uma lista de funcionalidades para permitir a execução de operações
bucketOpcional. Restringe o uso da credencial somente ao bucket especificado
expiration_dateDefine o tempo de expiração da credencial. O formato deve ser no padrão: YYYY-MM-DDT00:00:00Z
  1. Você deve receber uma resposta semelhante a esta:
{
"state": "executed",
"data": {
"name": "my-s3-credential",
"access_key": "<s3_credential_access_key>",
"secret_key": "<s3_credential_secret_key>", // this value can no longer be accessed in future requests
"capabilities": [
"listAllBucketNames",
"listBuckets",
"listFiles",
"readFiles",
"writeFiles",
"deleteFiles"
],
"bucket": "<bucket_name>",
"expiration_date": "<datetime>",
"created_at": "<datetime>"
}
}
  1. Copie os valores de access_key e secret_key para configurar o acesso através do protocolo S3.

Configure o acesso ao bucket através do s3cmd

S3cmd é uma ferramenta de interface de linha de comando (CLI) para gerenciar o S3 e outros serviços de armazenamento em nuvem. Ele pode ser usada para gerenciar objetos no Edge Storage e outros serviços de armazenamento compatíveis com o S3.

Para usar o s3cmd para gerenciar seu bucket do Edge Storage, siga estes passos:

  1. Baixe e instale o pacote s3cmd através do site oficial.
  2. Certifique-se de que s3cmd está adicionado ao PATH do seu sistema.
  3. Execute s3cmd --configure e insira a access_key e a secret_key.
  4. Insira a região padrão para a região do Edge Storage: us-east.
  5. Insira a URL do endpoint para o Edge Storage: s3.us-east-005.azionstorage.net.
  6. Use o template DNS padrão: %(bucket).s3.us-east-005.azionstorage.net.
  7. Informe uma senha de criptografia e um caminho para o programa GPG se necessário.
  1. Ative o protocolo HTTPS digitando true.
  2. Informe servidores proxy HTTP se necessário.
  3. Pressione y para testar o acesso.

Se suas chaves de acesso e secretas estiverem corretas, você deve receber a seguinte mensagem de sucesso:

Terminal window
Please wait, attempting to list all buckets...
Success. Your access key and secret key worked fine :-)

Você pode salvar suas configurações em um arquivo .s3cfg se necessário e modificá-las novamente usando s3cmd --configure. Execute o comando s3cmd --help para ver todos os comandos disponíveis.


Comandos s3cmd para gerenciar objetos no Edge Storage

Depois de ter configurado o acesso ao bucket através do s3cmd, você pode executar operações para gerenciar seus objetos no Edge Storage usando os comandos disponíveis.

EscopoDescrição
s3cmd lsListe todos os seus buckets
s3cmd mb s3://nome-do-novo-bucketCrie um novo bucket. Os nomes dos buckets devem ser únicos e as melhores práticas para nomear buckets incluem especificar quais tipos de objetos são armazenados e quais são os tipos de permissões para os objetos
s3cmd ls s3://nome-do-novo-bucketListe o conteúdo do bucket
s3cmd put file.xml s3://nome-do-novo-bucket/file.xmlFaça o upload de um arquivo para o bucket
s3cmd get s3://nome-do-novo-bucket/file.xml file-2.xmlRecupere o arquivo novamente e verifique se não foi corrompido
s3cmd del s3://nome-do-novo-bucket/addrbook.xml s3://nome-do-novo-bucket/storage.jpgExclua o objeto
s3cmd rb s3://logix.cz-testRemova o bucket. Apenas buckets vazios podem ser removidos

Para mais detalhes sobre o protocolo S3 e comandos s3cmd, consulte a documentação oficial. Você também pode visitar a referência do Edge Storage.


Contribuidores