VMware Cloud Director Object Storage Extension proporciona un conjunto de API compatibles con S3 para operaciones de objetos y depósitos.

La API de VMware Cloud Director Object Storage Extension admite la firma de AWS Signature v4, el método de autenticación de token web de JSON (JWT) VMware Cloud Director.

La API de VMware Cloud Director Object Storage Extension admite los formatos JSON y XML.

De forma predeterminada, las API de S3 de VMware Cloud Director Object Storage Extension están disponibles en https://object-storage-extension-host-address/ y https://object-storage-extension-host-address/api/v1/s3. Según la configuración de red del proveedor de nube, la dirección de VMware Cloud Director Object Storage Extension y la ruta de acceso raíz de la API de S3 pueden diferir de la configuración predeterminada.

La documentación de la API de S3 de VMware Cloud Director Object Storage Extension está disponible con el producto en https://object-storage-extension-host-address/docs y en el Explorador de API de VMware en https://code.vmware.com/apis, en la categoría de productos VMware Cloud Director Object Storage Extension.

Usar credenciales de seguridad y la API de VMware Cloud Director Object Storage Extension

Para ver cómo se trabaja con las credenciales de seguridad y la API de VMware Cloud Director Object Storage Extension, utilice el siguiente ejemplo.
  1. Cree una credencial de usuario con VMware Cloud Director Object Storage Extension tenant portal.

    De forma predeterminada, las credenciales de usuario recién creadas se activan durante la creación.

  2. Copie las claves secreta y de acceso.
  3. Anote el nombre de un depósito tal como aparece en VMware Cloud Director Object Storage Extension tenant portal.
  4. En el cliente de API, use el método de autenticación AWS Signature para autenticar la solicitud de API introduciendo el endpoint de API y las claves de acceso y seguridad.
    Por ejemplo, introduzca la siguiente información de conexión:
    Endpoint de API https://Cloud-Director-Object-Storage-Extension-IP-Andreas:443
    Clave de acceso 5a5af54cf34a172a511f
    Clave secreta omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
  5. Para enumerar todos los depósitos que son propiedad del propietario de la credencial de usuario, ejecute una solicitud GET de API S3.

    Por ejemplo:

    GET /HTTP/1.1
    Host: vCloud-Director-Object-Storage-Extension-IP-addres:443
    Accept: application/xml
    X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
    X-Amz-Date: 20190717T014259Z
    Authorization: AWS4-HMAC-SHA256 Credential=5a5af54cf34a172a511f/20190717/us-east-1/s3/aws4_request, SignedHeaders=accept;host;x-amz-content-sha256;x-amz-date, Signature=a1a0cfdc34fd4275f567ef673f14d8ff963242d29c13515506a3a913e7f38415
    cache-control: no-cache
    
El sistema devuelve la siguiente representación XML del contenido del depósito:
<listBucketResult>
		<Name>bucket-name</Name>
		<KeyCount>1</KeyCount>
		<MaxKeys>1000</MaxKeys>
		<Contents>
			<Key>object-name</Key>
			<Owner>
				<ID>system-id-of-the-user</>
				<DisplayName>display-name-of-the-user</DisplayName>
			</Owner>
			<StorageClass>Storage-Class</StorageClass>
			<Size>object-size-in-KB</Size>
			<LastModified>last-modified-date</LastModified>
		</Contents>
		<IsTruncated>true-or-false</IsTruncated>
		<ContinuationToken>1-or-0</ContinuationToken>
</listBucketResult>

Para obtener una credencial de usuario o de aplicación, consulte Trabajar con credenciales de seguridad.