Amazon S3 Simple Storage Connector
This adapter manages data and its structures in Amazon S3 Blob Storage. Moreover, you can use it to persist data in cloud environments.
Properties
Operation | Operation performed by the adapter Possible values:
|
Parameter
Adapter | Adapter main class (do not change!) Possible values: de.softproject.integration.adapter.amazons3.AmazonS3SimpleStorageAdapter: Main Class (Standard) | ||||||||||||||||||
keyID | Access key ID for requests to Amazon Web Services (AWS)
Possible values: Any string with the access key ID, e.g. | ||||||||||||||||||
secretKey | Secret access key for requests to AWS
Possible values: Any string with the secret access key, e.g. | ||||||||||||||||||
region | Bucket region Possible values: Any string with the name of the region, for example,
| ||||||||||||||||||
bucket | Bucket name
Possible values: Any string with the bucket name The following rules apply to the naming of S3 buckets in all AWS regions. Bucket names ...
| ||||||||||||||||||
bucketVersion | Bucket versioning to keep multiple variants of an object in the same bucket Possible values:
| ||||||||||||||||||
publicAccess | Specifies whether buckets or files are publicly accessible when using the | ||||||||||||||||||
publicPermission | Configuration for public access Possible values:
| ||||||||||||||||||
file | Name of the file to be saved, see Objects The following character sets are generally allowed in key names:
Possible values: Any string with the object key name, for example
| ||||||||||||||||||
path | Path of the file to be uploaded Possible values: Any valid path, for example
| ||||||||||||||||||
overwrite | Information on whether the file should be overwritten or not Possible values:
| ||||||||||||||||||
targetBucket | Name of the bucket in which the file is to be copied or moved Possible values: See | ||||||||||||||||||
targetFile | Name of the file if it is copied or moved under the new path Possible values: See | ||||||||||||||||||
includeObjectsMetadata | Specifies whether or not object metadata is included as part of the response Possible values:
|
Status values
1 | The adapter operation was executed successfully |
0 | The operation has not yet been completed or no result has been returned |
-1 | An error occurred while running the adapter |
Input
The adapter expects any input document, for example, a binary or Base64 document (XML or text).
Uploadoperation: If thepathparameter is specified, no input document is required. In all other cases, an input document is expected.DownloadandSearchoperations: No input document is required.AddGrantsPermissionoperation :Beispiel-Input für die Operation AddGrantsPermission
XML<?xml version='1.0' encoding='UTF-8'?> <RootElement> <Grant id="Canonical User ID"> <permission> Read </permission> <permission> Write </permission> <permission> WriteAcp </permission> <permission> ReadAcp </permission> <permission> FullControl </permission> </Grant> </RootElement>
To add object permissions, the bucketandfileparameters are required. To add bucket permissions, thebucketparameter is required andfilemust be empty.
RevokeGrantsPermissionoperation:Beispiel-Input für die Operation RevokeGrantsPermission
XML<?xml version='1.0' encoding='UTF-8'?> <RootElement> <Grant id="Canonical User ID"> </Grant> </RootElement>
To add object permissions, the bucketandfileparameters are required. To add bucket permissions, thebucketparameter is required andfilemust be empty.For the
AddBucketPolicyoperation, the input must be in JSON format
The following links provide additional information, such as bucket policy examples, permissions in a policy, and conditions in policies.DeleteMultiFilesoperation:Beispiel-Input für die Operation DeleteMultiFiles
XML<?xml version='1.0' encoding='UTF-8'?> <RootElement> <Object name="File Name"></Object> <Object name="File Name"></Object> <Object name="File Name"></Object> <Object name="File Name"></Object> </RootElement>
Output
The adapter outputs various documents depending on the operation that is performed:
Uploadoperation:- If the adapter has been executed successfully (status
1), an XML document is issued. If there was an error during adapter execution (status
-1), nothing is issued.
- If the adapter has been executed successfully (status
Searchoperation:If the adapter has been executed successfully (status
1), an XML document is issued with the used filters.Beispiel-Output für die Operation SEARCH
XML<?xml version='1.0' encoding='UTF-8'?> <ListBucket> <Bucket name="test-malaga2" region="eu-west-1"> <Object name="myFile.xml" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/myFile.xml"/> <Object name="myFile2.xml" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/myFile2.xml"/> <Object name="pic2.jpg" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/pic2.jpg"/> <Object name="testing_folders/" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/testing_folders/"/> <Object name="testing_folders/personalData.txt" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/testing_folders/personalData.txt"/> </Bucket> </ListBucket>If the adapter has been executed successfully (status
1) and theIncludeObjectsMetadaparameter is selected, the metadata for each object is also issued:Beispiel-Output für die Operation SEARCH inklusive Metadaten
XML<?xml version='1.0' encoding='UTF-8'?> <ListBucket> <Bucket name="test-malaga2" region="eu-west-1"> <Object name="myFile.xml" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/myFile.xml"> <Metadata lastModified="2018-12-10 13:42:38.000 +0100" instanceLength="158" eTag="a933d9ca99b473c7921c496727a32f91" contentType="application/octet-stream" contentLength="158"/> </Object> <Object name="myFile2.xml" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/myFile2.xml"> <Metadata lastModified="2018-12-10 12:02:07.000 +0100" instanceLength="158" eTag="a933d9ca99b473c7921c496727a32f91" contentType="application/octet-stream" contentLength="158" contentLanguage="English"/> </Object> <Object name="pic2.jpg" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/pic2.jpg"> <Metadata lastModified="2018-12-10 11:37:52.000 +0100" instanceLength="59580" eTag="fb913694d969758b431277b366f53d7" contentType="image/jpeg" contentLength="59580" contentLanguage="Spanish"/> </Object> <Object name="testing_folders/" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/testing_folders/"> <Metadata lastModified="2018-12-10 12:24:54.000 +0100" eTag="d41d8cd98f00b204e9800998ecf8427e" contentType="application/x-directory"/> </Object> <Object name="testing_folders/personalData.txt" url="https://s3-eu-west-1.amazonaws.com/test-malaga2/testing_folders/personalData.txt"> <Metadata lastModified="2018-12-10 12:30:35.000 +0100" instanceLength="33" eTag="7960fb01e91834eb9d5ccbacdf45d0e5" contentType="application/octet-stream" contentLength="33" contentLanguage="Spanish"/> </Object> </Bucket> </ListBucket>If there was an error during adapter execution (status
-1), nothing is issued.
Downloadoperation:- If the adapter has been executed successfully (status
1), the downloaded blob (text, XML binary document, etc.) is issued. - If the object or bucket does not exist, the status
-1is returned.
- If the adapter has been executed successfully (status
GetAccessControlListoperation:Beispiel-Output für die Operation GetAccessControlList
XML<AccessControlList> <Object Grant="e0188cd1cbfbb71222450e8e416e138172b036cdf3646ab51fb0ae6334d5ae51" Permission="FULL_CONTROL"/> <Object Grant="7779a9de4e188ca2c3fd5ef47f12f2a0fd3b9b30d283e343e0a55746d8df4802" Permission="READ"/> <Object Grant="7779a9de4e188ca2c3fd5ef47f12f2a0fd3b9b30d283e343e0a55746d8df4802" Permission="READ_ACP"/> </AccessControlList>GetBucketPolicyoperation:JAVA{ "Version":"2012-10-17", "Statement":[ } "Sid":"AddPerm", "Effect":"Allow", "Principal":"*", "Action":"s3:GetObject", "Resource":"arn:aws:s3:::softprojectamazons3input/*" } ] }