Trabalhando com a API do
VMware Cloud Director Object Storage Extension
S3

O
VMware Cloud Director Object Storage Extension
fornece um conjunto de APIs compatíveis com o S3 para operações de objeto e bucket.
A API do
VMware Cloud Director Object Storage Extension
é compatível com o método de autenticação do AWS Signature v4 e do JSON Web Token (JWT) do
VMware Cloud Director
.
A interface de programação de aplicativos do
VMware Cloud Director Object Storage Extension
é compatível com os formatos JSON e XML.
Por padrão, as APIs do S3 do
VMware Cloud Director Object Storage Extension
estão disponíveis em
https://object-storage-extension-host-address/
e
https://object-storage-extension-host-address/api/v1/s3
. Dependendo da configuração de rede do seu provedor de nuvem, o endereço do
VMware Cloud Director Object Storage Extension
e o caminho raiz para a API do S3 podem ser diferentes da configuração padrão.
A documentação da API do S3
VMware Cloud Director Object Storage Extension
está disponível com o produto em
https://
object-storage-extension-host-address
/docs
e no VMware API Explorer em https://code.vmware.com/apis, abaixo da categoria de produto do
VMware Cloud Director Object Storage Extension
.

Usando credenciais de segurança e API do
VMware Cloud Director Object Storage Extension

Para ver como trabalhar com credenciais de segurança e a interface de programação de aplicativos do
VMware Cloud Director Object Storage Extension
, use o exemplo a seguir.
  1. Crie uma credencial de usuário usando o
    Portal de tenant do VMware Cloud Director Object Storage Extension
    .
    Por padrão, as credenciais de usuário recém-criadas são ativadas durante a criação.
  2. Copie as chaves de acesso e secreta.
  3. Observe o nome de um bucket, conforme exibido no
    Portal de tenant do VMware Cloud Director Object Storage Extension
    .
  4. No seu cliente de API, use o método de autenticação de Assinatura do AWS para autenticar sua solicitação de API inserindo o endpoint da API e as chaves de acesso e de segurança.
    Por exemplo, insira as seguintes informações de conexão:
    Endpoint da interface de programação de aplicativos
    https://
    Cloud-Director-Object-Storage-Extension-IP-Andreas
    :443
    Chave de acesso
    5a5af54cf34a172a511f
    Chave secreta
    omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
  5. Para listar todos os buckets pertencentes ao proprietário da credencial do usuário, execute uma solicitação
    GET
    da interface de programação de aplicativos do S3.
    Por exemplo:
    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
O sistema retorna a seguinte representação XML do conteúdo do bucket:
<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 obter uma credencial de usuário ou de aplicativo, consulte Trabalhando com credenciais de segurança.