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

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

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

Par défaut, les API S3 de VMware Cloud 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 cloud, l'adresse de VMware Cloud 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 VMware Cloud 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 VMware Cloud Director Object Storage Extension.

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

Pour voir comment utiliser les informations d'identification de sécurité et VMware Cloud Director Object Storage Extension API, utilisez l'exemple suivant.
  1. Créez des informations d'identification de l'utilisateur à l'aide du VMware Cloud Director Object Storage Extension 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 VMware Cloud Director Object Storage Extension 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://Cloud-Director-Object-Storage-Extension-IP-Andreas:443/api/v1/s3
    Clé d'accès 5a5af54cf34a172a511f
    Clé secrète omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
  5. Pour répertorier tous les compartiments détenus par le propriétaire des informations d'identification de l'utilisateur, exécutez une demande GET d'API S3.

    Par exemple :

    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é.