The page has been translated by Gen AI.

Amazon S3 Usage Guide

Object Storage provides functions such as creating services, viewing lists, retrieving folder lists, creating folders, uploading files, and downloading files through the Samsung Cloud Platform Console. These features are also provided via an API compatible with Amazon S3. Therefore, tools that utilize Amazon S3 can be used in the same way.
Using Amazon S3’s utility tools requires generating and verifying an authentication key. For detailed information, please refer to 인증키 생성하기.

Amazon S3 API

The list of Amazon S3 APIs supported by the Samsung Cloud Platform Object Storage service is as follows.

Reference
For detailed information about the Amazon S3 API, see the Amazon S3 API Guide.
CategoryDetailed description
head-bucketView bucket information
list-bucketsView bucket list
get-bucket-versioningBucket version management lookup
put-bucket-versioningBucket version control modification
get-bucket-encryptionView bucket encryption settings
put-bucket-encryptionApply bucket encryption settings
delete-bucket-encryptionDelete bucket encryption settings
copy-objectCopy, move, and rename objects
put-objectObject creation
get-objectObject download
list-objectsObject List Retrieval
head-objectObject Detail Lookup
get-object-aclObject ACL lookup
delete-objectDelete object
  • If versioning is enabled, deleting a file adds a Delete Marker to the file, and the Delete Marker becomes the latest version
  • To permanently delete a file, specify the version ID for deletion
list-object-versionsRetrieve object version list
delete-objectDelete object version
presignIssue a Presigned URL for PUT object
get-bucket-aclCheck bucket public permissions
create-bucketCreate bucket
delete-bucketDelete bucket
get-bucket-corsCheck bucket CORS (Cross OriginResources) configuration
put-bucket-corsCreate bucket CORS (PUT)
delete-bucket-corsDelete bucket CORS
put-bucket-taggingCreate bucket tagging
get-bucket-taggingBucket tagging lookup
delete-bucket-taggingDelete bucket tagging
put-bucket-websiteCreate bucket website
get-bucket-websiteView bucket website
delete-bucket-websiteDelete bucket website
get-bucket-policy-statusCheck bucket policy status
put-bucket-aclCreate bucket ACL
create-multipart-uploadCreate multipart upload
upload-partPerform multipart upload
complete-multipart-uploadMultipart upload completed
list-multipart-uploadsMultipart upload list
abort-multipart-uploadDelete incomplete Multipart upload
put-object-taggingObject tagging creation
get-object-taggingObject tagging lookup
delete-object-taggingDelete object tagging
list-objects-V2Object Lookup (v2)
put-object-aclCreate object ACL
list-partsParts lookup
put-public-access-blockCreate public access block
get-public-access-blockpublic access block lookup
delete-public-access-blockDelete public access block
put-bucket-lifecycleCreate bucket Lifecycle (only Expiration rule can be used)
get-bucket-lifecycleView bucket lifecycle
delete-bucket-lifecycleDelete bucket lifecycle
put-bucket-policyCreate bucket policy
get-bucket-policyView bucket policy
delete-bucket-policyDelete bucket policy
put-bucket-replicationModify bucket replication policy
get-bucket-replicationView bucket replication policy
delete-bucket-replicationDelete bucket replication policy
Table. Amazon S3 Supported API List

Bucket policy creation example

When using put-bucket-policy, refer to the following example to write the JSON file.

Color mode
{
    "Statement": [
        {
            "Action": "s3:*"
            "Condition": {
                "IpAddress": {
                    "scp:SourceIp": []
                },
                "Resource": {
                    "scp:SourceDBaaSId": [],
                    "scp:SourceResourceId": [],
                    "scp:SourceVpcEndpointId": []
                },
                "Service": {
                    "scp:ServiceAiTraining": "true",
                    "scp:ServiceScf": "false"
                }
            },
            "Effect": "Allow"
            "Principal": "*"
            "Resource": [
                srn:e::1234:kr-west1::objectstorage:bucket/bucketname
                srn:e::1234:kr-west1::objectstorage:bucket/bucketname/*
            ]
        }
    ],
    "Version": "2012-10-17"
}
{
    "Statement": [
        {
            "Action": "s3:*"
            "Condition": {
                "IpAddress": {
                    "scp:SourceIp": []
                },
                "Resource": {
                    "scp:SourceDBaaSId": [],
                    "scp:SourceResourceId": [],
                    "scp:SourceVpcEndpointId": []
                },
                "Service": {
                    "scp:ServiceAiTraining": "true",
                    "scp:ServiceScf": "false"
                }
            },
            "Effect": "Allow"
            "Principal": "*"
            "Resource": [
                srn:e::1234:kr-west1::objectstorage:bucket/bucketname
                srn:e::1234:kr-west1::objectstorage:bucket/bucketname/*
            ]
        }
    ],
    "Version": "2012-10-17"
}
Example of writing a JSON file when using put-bucket-policy

  • Action, Effect, Principal cannot be modified.
  • Enter the Object Storage SRN and Object Storage SRN/* in Resource.
  • Condition’s IpAddress, Resource, Service can be modified as follows.
    • IpAddress: Enter a single IP or CIDR format.
    • Resource: Enter each resource ID.
    • Service: Enter false or true.
    • For detailed information about permissible targets, refer to Setting Access Control.

Bucket replication policy creation example

put-bucket-replication, when using it, refer to the following example to create the JSON file.

Color mode
{
    "Role": "srn:e::1234:::iam:user/abc3d3442"
    "Rules": [
        {
            "ID": "replication-policy-1"
            "Status": "Enabled",
            "Priority": 1,
            "DeleteMarkerReplication": {
                "Status": "Enabled"
            },
            "Filter": {
                "Prefix": ""
            },
            "Destination": {
                "Bucket": "srn:e::1234:kr-west1::objectstorage:bucket/bucketname"
            }
        }
    ]
}
{
    "Role": "srn:e::1234:::iam:user/abc3d3442"
    "Rules": [
        {
            "ID": "replication-policy-1"
            "Status": "Enabled",
            "Priority": 1,
            "DeleteMarkerReplication": {
                "Status": "Enabled"
            },
            "Filter": {
                "Prefix": ""
            },
            "Destination": {
                "Bucket": "srn:e::1234:kr-west1::objectstorage:bucket/bucketname"
            }
        }
    ]
}
Example of writing a JSON file when using put-bucket-replication

  • Role: Enter the IAM SRN.
  • Rules > Destination’s Bucket: Please enter the Bucket SRN.
  • If you do not provide the ID of Rule, it will be automatically generated with a random value.
  • If you change the ID of Rule, a new policy is created and the existing policy is deleted.

Amazon S3 CLI

To use Amazon S3 with the AWS CLI, refer to the Amazon S3 CLI Guide.

Amazon S3 SDK for Java

To use the Amazon S3 SDK for Java, refer to the Amazon S3 SDK Guide.

Reference
For SDK guides and Rest API guides for other languages, see the AWS official website.
Reference
  • Use the region parameter required for using the Amazon S3 SDK as referenced below.
    • In case of Korea West (kr-west1): kr-west
    • In the case of South Korea 1,2,3 (kr-south1,2,3): kr-south
  • The region parameter is for reference only, and the actual region is determined based on the URL.
Reference
  • Korea South 3 (kr-south3) region constraints
    • File upload and download functions are limited through the Samsung Cloud Platform Console.
    • Using the S3 API/CLI with a public URL is restricted.
    • However, accessing a Private URL through resources (such as Virtual Server) created in the Samsung Cloud Platform Console is possible.
  • Korea South 1 (kr-south1), Korea South 2 (kr-south2) region constraints
Overview
Monitoring Metrics