> ## Documentation Index
> Fetch the complete documentation index at: https://docs.basaltic.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Criptografia de bucket

> O que é criptografado por padrão e vinculando um bucket a uma chave própria.

<a id="encryption" />

## Criptografia

A criptografia do lado do servidor é **opt-in** e está desativada até que você a ative. Dois modos:

<Tabs>
  <Tab title="Console">
    O cartão **Default encryption** na guia **Settings** do bucket é um switch e um **Save**. Ele define o bucket padrão e nada mais — a página de upload do console não tem campo de criptografia, então criptografar um único objeto contra um bucket sem padrão é apenas API.
  </Tab>

  <Tab title="API">
    Por bucket, que é o que se deve alcançar:

    ```bash theme={null}
    PUT /v1/buckets/{bucket}/encryption
    { "encryption": { "rules": [ { "default": { "sse_algorithm": "AES256" } } ] } }
    ```

    Ou por objeto, na escrita em si:

    ```bash theme={null}
    PUT /v1/buckets/{bucket}/objects/{key}
    X-Amz-Server-Side-Encryption: AES256
    ```
  </Tab>

  <Tab title="CLI">
    ```bash theme={null}
    basaltic storage bucket set-encryption <bucket> --from-file encryption.json
    ```

    O corpo é o mesmo JSON que a API recebe; `--from-file -` lê stdin.
  </Tab>

  <Tab title="Go">
    ```go theme={null}
    err := storage.New(cfg).PutBucketEncryption(ctx, bucket,
        &storage.PutBucketEncryptionRequest{Encryption: enc})
    ```
  </Tab>
</Tabs>

O padrão do bucket se aplica a gravações que não possuem cabeçalho próprio — um cabeçalho por solicitação vence. Somente `AES256` é suportado; `aws:kms` e chaves fornecidas pelo cliente são rejeitadas com um erro claro em vez de serem silenciosamente desclassificadas.

<Info>
  Um upload de várias partes não carrega nenhum cabeçalho de criptografia próprio em cada parte: a decisão é tomada quando o upload é criado e sobrevive ao objeto montado. Verifique `ServerSideEncryption` em um `HEAD` do objeto terminado, não na resposta de criação.
</Info>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.