-
Notifications
You must be signed in to change notification settings - Fork 50
AWS S3 Standard API vs. CB‐Spider S3 API
ByoungSeob Kim edited this page Jul 19, 2025
·
1 revision
카테고리 | API 이름 | AWS 표준 엔드포인트 | CB-Spider 엔드포인트 | 함수명 | 호환성 |
---|---|---|---|---|---|
버킷 관리 | ListBuckets | GET / |
GET / |
ListS3Buckets | ✅ 완전 호환 |
CreateBucket | PUT /{bucket} |
PUT /:Name |
CreateS3Bucket | ✅ 완전 호환 | |
DeleteBucket | DELETE /{bucket} |
DELETE /:Name |
DeleteS3Bucket | ✅ 완전 호환 | |
HeadBucket | HEAD /{bucket} |
HEAD /:Name |
GetS3Bucket | ✅ 완전 호환 | |
GetBucketLocation | GET /{bucket}?location |
GET /:Name?location |
getBucketLocation | ✅ 완전 호환 | |
버킷 설정 | GetBucketVersioning | GET /{bucket}?versioning |
GET /:Name?versioning |
getBucketVersioning | ✅ 완전 호환 |
PutBucketVersioning | PUT /{bucket}?versioning |
PUT /:Name?versioning |
putBucketVersioning | ✅ 완전 호환 | |
GetBucketCors | GET /{bucket}?cors |
GET /:Name?cors |
getBucketCORS | ✅ 완전 호환 | |
PutBucketCors | PUT /{bucket}?cors |
PUT /:Name?cors |
putBucketCORS | ✅ 완전 호환 | |
DeleteBucketCors | DELETE /{bucket}?cors |
DELETE /:Name?cors |
deleteBucketCORS | ✅ 완전 호환 | |
객체 관리 | PutObject | PUT /{bucket}/{key} |
PUT /:BucketName/:ObjectKey+ |
PutS3ObjectFromFile | ✅ 완전 호환 |
GetObject | GET /{bucket}/{key} |
GET /:BucketName/:ObjectKey+ |
DownloadS3Object | ✅ 완전 호환 | |
DeleteObject | DELETE /{bucket}/{key} |
DELETE /:BucketName/:ObjectKey+ |
DeleteS3Object | ✅ 완전 호환 | |
HeadObject | HEAD /{bucket}/{key} |
HEAD /:BucketName/:ObjectKey+ |
GetS3ObjectInfo | ✅ 완전 호환 | |
ListObjects | GET /{bucket} |
GET /:Name |
ListS3Objects | ✅ 완전 호환 | |
ListObjectsV2 | GET /{bucket}?list-type=2 |
GET /:Name |
ListS3Objects | ||
버전 관리 | ListObjectVersions | GET /{bucket}?versions |
GET /:Name?versions |
listObjectVersions | ✅ 완전 호환 |
멀티파트 업로드 | CreateMultipartUpload | POST /{bucket}/{key}?uploads |
POST /:Name?uploads |
initiateMultipartUpload | ✅ 완전 호환 |
UploadPart | PUT /{bucket}/{key}?partNumber&uploadId |
PUT /:BucketName/:ObjectKey+?partNumber&uploadId |
uploadPart | ✅ 완전 호환 | |
CompleteMultipartUpload | POST /{bucket}/{key}?uploadId |
POST /:Name?uploadId |
completeMultipartUpload | ✅ 완전 호환 | |
일괄 작업 | DeleteObjects | POST /{bucket}?delete |
POST /:Name?delete |
deleteMultipleObjects | ✅ 완전 호환 |
폼 업로드 | PostObject | POST /{bucket} |
POST /:Name |
postObject | ✅ 완전 호환 |
기능 | CB-Spider 엔드포인트 | 함수명 | 설명 | 고유 특징 |
---|---|---|---|---|
강제 버킷 비우기 | DELETE /:Name?empty |
ForceEmptyS3Bucket | 버킷 내 모든 객체(버전 포함) 강제 삭제 | 🆕 운영 편의성 |
강제 버킷 삭제 | DELETE /:Name?force |
ForceDeleteS3Bucket | 비어있지 않은 버킷 강제 삭제 | 🆕 운영 편의성 |
다중 인증 지원 | 모든 엔드포인트 | getConnectionName | CB-Spider ConnectionName 방식 지원 | 🆕 CB-Spider 고유 |
AdminWeb 헤더 | 모든 엔드포인트 | getConnectionName | X-Connection-Name 헤더 지원 | 🆕 관리 도구 연동 |
JSON 객체 정보 |
GET /:BucketName/:ObjectKey+ (GET 방식) |
GetS3ObjectInfo | 객체 메타데이터를 JSON으로 반환 | 🆕 개발 편의성 |
AWS API | 표준 엔드포인트 | 미지원 이유 |
---|---|---|
PutBucketPolicy | PUT /{bucket}?policy |
❌ 구현되지 않음 |
GetBucketPolicy | GET /{bucket}?policy |
❌ 구현되지 않음 |
DeleteBucketPolicy | DELETE /{bucket}?policy |
❌ 구현되지 않음 |
PutBucketAcl | PUT /{bucket}?acl |
❌ 구현되지 않음 |
GetBucketAcl | GET /{bucket}?acl |
❌ 구현되지 않음 |
PutObjectAcl | PUT /{bucket}/{key}?acl |
❌ 구현되지 않음 |
GetObjectAcl | GET /{bucket}/{key}?acl |
❌ 구현되지 않음 |
AWS API | 표준 엔드포인트 | 미지원 이유 |
---|---|---|
PutBucketLifecycleConfiguration | PUT /{bucket}?lifecycle |
❌ 구현되지 않음 |
GetBucketLifecycleConfiguration | GET /{bucket}?lifecycle |
❌ 구현되지 않음 |
DeleteBucketLifecycle | DELETE /{bucket}?lifecycle |
❌ 구현되지 않음 |
PutBucketWebsite | PUT /{bucket}?website |
❌ 구현되지 않음 |
GetBucketWebsite | GET /{bucket}?website |
❌ 구현되지 않음 |
DeleteBucketWebsite | DELETE /{bucket}?website |
❌ 구현되지 않음 |
PutBucketNotificationConfiguration | PUT /{bucket}?notification |
❌ 구현되지 않음 |
GetBucketNotificationConfiguration | GET /{bucket}?notification |
❌ 구현되지 않음 |
AWS API | 표준 엔드포인트 | 미지원 이유 |
---|---|---|
PutBucketTagging | PUT /{bucket}?tagging |
❌ 구현되지 않음 |
GetBucketTagging | GET /{bucket}?tagging |
❌ 구현되지 않음 |
DeleteBucketTagging | DELETE /{bucket}?tagging |
❌ 구현되지 않음 |
PutObjectTagging | PUT /{bucket}/{key}?tagging |
❌ 구현되지 않음 |
GetObjectTagging | GET /{bucket}/{key}?tagging |
❌ 구현되지 않음 |
DeleteObjectTagging | DELETE /{bucket}/{key}?tagging |
❌ 구현되지 않음 |
AWS API | 표준 엔드포인트 | 미지원 이유 |
---|---|---|
AbortMultipartUpload | DELETE /{bucket}/{key}?uploadId |
❌ 구현되지 않음 |
ListParts | GET /{bucket}/{key}?uploadId |
❌ 구현되지 않음 |
ListMultipartUploads | GET /{bucket}?uploads |
❌ 구현되지 않음 |
AWS API | 표준 엔드포인트 | 미지원 이유 |
---|---|---|
CopyObject |
PUT /{bucket}/{key} (x-amz-copy-source) |
❌ 구현되지 않음 |
SelectObjectContent | POST /{bucket}/{key}?select |
❌ S3 Select 미지원 |
RestoreObject | POST /{bucket}/{key}?restore |
❌ Glacier 복원 미지원 |
구분 | 지원 API 수 | 미지원 API 수 | 특화 API 수 | 호환률 |
---|---|---|---|---|
버킷 관리 | 5개 | 0개 | 2개 | 100% |
버킷 설정 | 6개 | 9개 | 0개 | 40% |
객체 관리 | 6개 | 2개 | 1개 | 75% |
멀티파트 업로드 | 3개 | 3개 | 0개 | 50% |
기타 고급 기능 | 2개 | 4개 | 2개 | 33% |
전체 | 22개 | 18개 | 5개 | 55% |
- 운영 편의성: 강제 삭제/비우기 기능으로 운영 부담 감소
- 다중 인증: AWS 표준 + CB-Spider 고유 인증 방식 동시 지원
- 개발 친화적: JSON 응답 옵션으로 개발 편의성 향상
- 핵심 기능 완전 지원: 기본적인 S3 작업은 모두 지원
- 고급 관리 기능 부족: ACL, 정책, 라이프사이클 등 엔터프라이즈 기능 미지원
- 태깅 시스템 미지원: 객체/버킷 태깅 기능 없음
- S3 Select 미지원: 객체 내용 쿼리 기능 없음
- 완전한 멀티파트 관리 부족: 중단/목록 조회 기능 없음
-
Install & Start Guide
-
Features & Usage
-
- AdminWeb Tool Guide
- CLI Tool Guide
- REST API Guide
- NLI Guide
-
Design
-
Developer Guide
-
Cloud Driver Developer Guide
- Cloud Driver Developer Guide-WIP
- VM SSH Key Development Guide-WIP
- VM User Development Guide
- What is the CSP SDK API Version of drivers
- Region Zone Info and Driver API
- (StartVM TerminateVM) API Call Counts and Waiting
- StartVM and TerminateVM Main Flow of drivers
- VM Root Disk Configuration Guide
- Security Group Rules and Driver API
- Network Load Balancer and Driver API
- VM Snapshot, MyImage and Disk Overview
- Kubernetes and Driver API(PMKS, K8S)
- Tag and Cloud Driver API
- AnyCall API Extension Guide
-
Test Reports
- v0.2.8-for-espresso-release
- v0.3.0-espresso-release
- Azure:Terminating VM
- cb-user@VM: ssh login, sudo run
- v0.3.14 test for SG Source
- v0.4.0-cafemocha-release
- Test via REST API Gateway
- Test Reports of v0.4.11 (IID2 initial Version)
- Test Reports of v0.4.12 (Register & Unregister existing Resources)
- Test Reports for v0.6.0 Release
- How to ...
- How to Use Alibaba ECS i1.* Instance Types
- How to provision GPU VMs
- How to Resolve the 'Failed to Connect to Database' Error
- How to test CB Spider with Mock Driver
- How to install CB Spider on WSL2 under 공유기/사설망
- How to install CB Spider on macOS
- How to run CB Spider Container on macOS
- How to install OpenStack on a VM for CB Spider Testing
- How to get Azure available Regions
- How to profile memory usage in Golang
- Deprecated:How to install protoc and plugins
- [For Cloud-Migrator]