vCloud Director Object Storage Extension fournit un ensemble d'API compatibles S3 pour les opérations de compartiment et d'objet.

vCloud Director Object Storage Extension API prend en charge les méthodes d'authentification v4 de signature AWS, par jeton d'autorisation vCloud Director et par JWT (JSON Web Token).

vCloud Director Object Storage Extension API prend en charge les formats JSON et XML.

Par défaut, les API S3 de vCloud Director Object Storage Extension sont disponibles sur https://object-storage-extension-host-address/api/v1/s3. En fonction de la configuration réseau de votre fournisseur de services, l'adresse de vCloud Director Object Storage Extension et le chemin d'accès racine de l'API S3 peuvent être différents de la configuration par défaut.

La documentation de vCloud Director Object Storage Extension API S3 est disponible avec le produit sur https://object-storage-extension-host-address/docs et dans l'explorateur d'API VMware sur https://code.vmware.com/apis sous la catégorie de produit vCloud Director Object Storage Extension.

Utilisation des informations d'identification de sécurité et de vCloud Director Object Storage Extension API

Pour voir comment utiliser les informations d'identification de sécurité et vCloud Director Object Storage Extension API, consultez l'exemple suivant.
  1. Créez des informations d'identification de l'utilisateur à l'aide du Object Storage Tenant Portal. Par défaut, les informations d'identification de l'utilisateur récemment créées sont activées lors de la création.
  2. Copiez les clés d'accès et secrètes.
  3. Notez le nom d'un compartiment, tel qu'il s'affiche dans le Object Storage Tenant Portal.
  4. Dans votre client d'API, utilisez la méthode d'authentification de signature AWS pour authentifier votre demande d'API en entrant le point de terminaison d'API et les clés d'accès et de sécurité.
    Par exemple, entrez les informations de connexion suivantes :
    • Point de terminaison d'API : https://vCloud-Director-Object-Storage-Extension-IP-addres:443/api/v1/s3
    • Clé d'accès : 5a5af54cf34a172a511f
    • Clé secrète : omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
  5. Exécutez une demande GET d'API S3 pour répertorier tous les compartiments détenus par le propriétaire des informations d'identification de l'utilisateur.

    Vous trouverez ci-après un exemple de la demande d'API :

    GET /api/v1/s3/ 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
    
Le système renvoie la représentation XML suivante du contenu du compartiment :
<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>

Pour obtenir les informations d'identification d'un utilisateur ou d'une application, reportez-vous au Utilisation des informations d'identifications de sécurité.