Arquivos privados

Todo arquivo no Fóir é público ou privado, e a configuração pertence ao arquivo. Um arquivo público é servido a partir de uma URL simples, e um arquivo privado por meio de um link assinado que expira.

Como cada tipo é servido

Um arquivo público tem uma URL direta que a CDN pode armazenar em cache e que qualquer pessoa com o link pode acessar. A URL de um arquivo privado carrega um token assinado, e a CDN recusa uma requisição sem um token válido. Um token abre um arquivo e expira, por padrão após uma hora. Guarde o id do arquivo e leia sua URL de novo quando precisar, porque uma URL mais antiga deixa de funcionar.

Um arquivo tem seu próprio dono e visibilidade

Ambos são definidos no arquivo, e referenciá-lo a partir de um registro não muda nenhum dos dois. Um arquivo público continua acessível pela sua URL, qualquer que seja a visibilidade do registro que aponta para ele.

Quando um registro que referencia um arquivo privado é lido, o Fóir assina a URL do arquivo apenas se o chamador puder acessar o próprio arquivo. Caso contrário, a URL sai sem assinatura e a CDN a recusa.

Padrões

O padrão segue a propriedade. Um arquivo pertencente a um dos seus usuários é armazenado como privado, tenha ele enviado o arquivo ou o tenha criado uma operação que ele disparou. Um arquivo que nenhum usuário possui é armazenado como público, o que inclui uploads da sua equipe, com uma chave secreta ou por uma organização. Indicar uma visibilidade no upload substitui o padrão.

Alterando a visibilidade e listando

setFileVisibility move um arquivo armazenado entre público e privado. Ele exige o escopo files:write e funciona apenas para um chamador autorizado a editar esse arquivo.

A listagem é decidida separadamente do serviço. Um usuário logado lista seus próprios arquivos e a biblioteca compartilhada, e o arquivo privado de outro usuário é lido como null. Listar arquivos de todos os usuários exige uma chave secreta com files:list.all como escopo.

Vídeo privado

Um vídeo privado é coberto de ponta a ponta. Sua miniatura, a prévia e o manifesto HLS são assinados, e o token é levado para cada rendition e segmento.

Leia os detalhes

A referência de arquivos cobre visibilidade, o padrão para cada tipo de upload, URLs assinadas e quem pode listar quais arquivos.