vCloud Director Object Storage Extension은 버킷 및 개체 작업에 대한 S3 호환 API를 제공합니다.

vCloud Director Object Storage Extension API는 AWS 서명 v4, vCloud Director 인증 토큰 및 JWT(JSON Web Token) 인증 방법을 지원합니다.

vCloud Director Object Storage Extension API는 JSON 및 XML 형식을 지원합니다.

기본적으로 vCloud Director Object Storage Extension의 S3 API는 https://object-storage-extension-host-address/api/v1/s3에서 사용할 수 있습니다. 서비스 제공자의 네트워크 구성에 따라 S3 API의 주소 vCloud Director Object Storage Extension 및 루트 경로가 기본 구성과 다를 수 있습니다.

vCloud Director Object Storage Extension S3 API 설명서는 https://object-storage-extension-host-address/docs(제품용) 및 vCloud Director Object Storage Extension 제품 범주의 VMware API Explorer(https://code.vmware.com/apis)에서 사용할 수 있습니다.

보안 자격 증명 및 vCloud Director Object Storage Extension API 사용

보안 자격 증명 및 vCloud Director Object Storage Extension API로 작업하는 방법을 보려면 다음 예를 참조하십시오.
  1. Object Storage Tenant Portal을 사용하여 사용자 자격 증명을 생성합니다. 기본적으로 새로 생성된 사용자 자격 증명은 생성 중에 활성화됩니다.
  2. 액세스 및 비밀 키를 복사합니다.
  3. Object Storage Tenant Portal에 표시되는 버킷 이름을 적어 둡니다.
  4. API 클라이언트에서 AWS 서명 인증 방법을 사용하여 API 끝점과 액세스 및 보안 키를 입력하여 API 요청을 인증합니다.
    예를 들어 다음과 같은 연결 정보를 입력합니다.
    • API 끝점: https://vCloud-Director-Object-Storage-Extension-IP-addres:443/api/v1/s3
    • 액세스 키: 5a5af54cf34a172a511f
    • 비밀 키: omSG+UXSoyD1fbdFt0iia3I8I+f0QLSiIn5wpq1L
  5. S3 API GET 요청을 실행하여 사용자 자격 증명 소유자가 소유하는 버킷을 표시합니다.

    다음은 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
    
시스템은 버킷 내용에 대한 다음과 같은 XML 표현을 반환합니다.
<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>

사용자 또는 애플리케이션 자격 증명을 가져오려면 보안 자격 증명 사용 항목을 참조하십시오.