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

# Certificación de almacenamiento compatible con S3

> Política de cualificación para productos que no son de AWS y usan el adaptador S3 de CaseBender

Una API compatible con S3 no es automáticamente equivalente a AWS S3 y no está
soportada de forma automática. Certifique cada producto, versión exacta, modo de
endpoint, política de bucket y versión de CaseBender de forma independiente.

## Contrato requerido

La matriz de la versión es autoritativa. Un candidato suele necesitar:

* HTTPS verificado, incluida la ruta de CA privada desplegada;
* acceso a un bucket existente sin permiso de administración del bucket;
* carga, HEAD/metadata, descarga, integridad SHA-256, copy, paginación,
  creación condicional, versionado, delete y comportamiento de delete-marker;
* cifrado del lado del servidor;
* retención y retención legal cuando se requieran para el perfil `records`; y
* limpieza limitada a un prefijo de prueba único y a versiones exactas.

No infiera la capacidad a partir de un nivel de API S3 anunciado. Las
escrituras condicionales, las cabeceras de checksum, los ID de versión, la
semántica de copy, los delete markers, Object Lock y el comportamiento de CA
privada difieren entre productos y versiones.

## Procedimiento de cualificación

1. Registre el nombre del producto y la versión exacta del servidor, las
   revisiones/digests de imagen de CaseBender, el modo de endpoint, el digest
   de CA, la política de bucket y la política de identidad.
2. Use buckets de prueba dedicados precreados o un prefijo dedicado.
3. Ejecute desde el mismo contexto de red, DNS, proxy, CA e identidad que web
   y worker.
4. Establezca cada indicador de capacidad de forma veraz. `false` significa
   omitido y no puede satisfacer una operación requerida de la matriz.
5. Ejecute el ciclo de vida de carga/cuarentena/escaneo/promoción/descarga/
   eliminación de la aplicación.
6. Ejercite los flujos de copia de seguridad, restauración, migración,
   reversión, retención y retención legal que requiera el cliente.
7. Sanee, calcule el hash, revise y firme el paquete de evidencia.

Para Ceph RGW:

```bash theme={null}
STORAGE_TEST_ENDPOINT='https://<s3-compatible-host>' \
STORAGE_TEST_BUCKET='<dedicated-test-bucket>' \
AWS_REGION='<region>' \
STORAGE_TEST_CA_BUNDLE='<ca-file>' \
STORAGE_TEST_ODF_VERSION='<exact-odf-version-or-n-a>' \
STORAGE_TEST_CEPH_VERSION='<exact-product-version>' \
STORAGE_TEST_CAP_METADATA=true \
STORAGE_TEST_CAP_PAGINATION=true \
STORAGE_TEST_CAP_COPY=true \
STORAGE_TEST_CAP_CONDITIONAL_CREATE='<true-or-false>' \
STORAGE_TEST_CAP_VERSIONING='<true-or-false>' \
STORAGE_TEST_CAP_DELETE_MARKERS='<true-or-false>' \
STORAGE_TEST_CAP_ENCRYPTION=true \
STORAGE_TEST_CAP_OBJECT_LOCK='<true-or-false>' \
./scripts/storage/validate-ceph-rgw.sh
```

El contrato general de smoke es:

```bash theme={null}
STORAGE_TEST_PROVIDER=s3 \
STORAGE_TEST_ENDPOINT='https://<s3-compatible-host>' \
STORAGE_TEST_BUCKET='<dedicated-test-bucket>' \
AWS_REGION='<region>' \
./scripts/storage/validate-storage.sh
```

El script general es complementario y no cubre la puerta completa de la
versión por versión exacta.

## Reglas de evidencia

Use `scripts/storage/certification-evidence.template.json` y valide con:

```bash theme={null}
node scripts/storage/validate-certification-matrix.mjs \
  --release \
  --evidence '<sanitized-evidence.json>'
```

La evidencia debe nombrar una versión de destino exacta e incluir un digest.
No debe contener claves de acceso, tokens de sesión, cadenas de conexión,
claves privadas, URL firmadas, nombres de objeto del cliente ni contenidos
de objeto.

## Limitación del emulador

`./scripts/storage/run-emulator-contracts.sh s3` comprueba el adaptador S3
contra LocalStack. Crea un artefacto de emulador que indica explícitamente
que no es certificación en vivo. Nunca reutilice ese resultado para Ceph
RGW, MinIO, AWS S3 u otro producto compatible con S3.

## Control de cambios

Recualifique después de cualquier actualización del servidor, cambio de
puerta de enlace/configuración, rotación de TLS/CA, cambio de
identidad/política, cambio de versionado/Object Lock, cambio de red/proxy,
versión de CaseBender o actualización del SDK de almacenamiento.

Consulte [Selección y certificación de proveedores](/es/deployment/storage-provider-selection)
y [OpenShift ODF y Ceph RGW](/es/deployment/storage-openshift-odf-rgw).
