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).
Upload
operation: If thepath
parameter is specified, no input document is required. In all other cases, an input document is expected.Download
andSearch
operations: No input document is required.AddGrantsPermission
operation :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
bucket
andfile
parameters are required. To add bucket permissions, thebucket
parameter is required andfile
must be empty.
RevokeGrantsPermission
operation: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
bucket
andfile
parameters are required. To add bucket permissions, thebucket
parameter is required andfile
must be empty.For the
AddBucketPolicy
operation, the input must be in JSON formatThe following links provide additional information, such as bucket policy examples, permissions in a policy, and conditions in policies.
DeleteMultiFiles
operation: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:
Upload
operation:- 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
Search
operation: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 theIncludeObjectsMetada
parameter 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.
Download
operation:- 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
-1
is returned.
- If the adapter has been executed successfully (status
GetAccessControlList
operation: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>
GetBucketPolicy
operation:JAVA{ "Version":"2012-10-17", "Statement":[ } "Sid":"AddPerm", "Effect":"Allow", "Principal":"*", "Action":"s3:GetObject", "Resource":"arn:aws:s3:::softprojectamazons3input/*" } ] }