*Introduction*

Amazon S3 provides a simple web services interface that can be used to store
and retrieve any amount of data, at any time, from anywhere on the web. It
gives any developer access to the same highly scalable, reliable, secure,
fast, inexpensive infrastructure that Amazon uses to run its own global
network of web sites. The service aims to maximize benefits of scale and to
pass those benefits on to developers. Amazon S3 API is used to deal with
Amazon S3 to perform certain operations allowed by the API. 

*Amazon S3 Connector Summery*

•       Connector Name:  amazons3-connector-1.0.0
•       Version: 1.0.0
•       Technology:  REST

*Authentication*

The Amazon S3 REST API uses the standard HTTP Authorization header to pass
authentication information. Developers are issued an AWS access key ID and
AWS secret access key when they register. For request authentication, the
AWSAccessKeyId element identifies the access key ID that was used to compute
the signature and, indirectly, the developer making the request.

*Domain definition*

1.      *Bucket *- A bucket is a container for objects stored in Amazon S3. 
Every
object is contained in a bucket.

2.      *Object *-Objects are the fundamental entities stored in Amazon S3.
Objects consist of object data and metadata. The data portion is opaque to
Amazon S3. The metadata is a set of name-value pairs that describe the
object. These include some default metadata, such as the date last modified
and standard HTTP metadata, such as Content-Type.

3.      *Bucket Policy* - Bucket policies provide centralized, access control to
buckets and objects based on a variety of conditions, including Amazon S3
operations, requesters, resources, and aspects of the request (e.g., IP
address). The policies are expressed in our access policy language and
enable centralized management of permissions. The permissions attached to a
bucket apply to all of the objects in that bucket.

4.      *Lifecycle *–Lifecycle management defines how Amazon S3 manages objects
during their lifetime.


5.      *ACL *-Amazon S3 Access Control Lists (ACL) enable you to manage access
to buckets and objects. Each bucket and object has an ACL attached to it as
a subresource. It defines which AWS accounts or groups are granted access
and the type of access.


Selected Methods (24) for version 1.0.0 

*OPERATION ON BUCKETS*
        *init *- configurations
        *getBuckets *- This implementation of the GET operation returns a list 
of
all buckets owned by the authenticated sender of the request.
        *deleteBucket *- This implementation of the DELETE operation deletes the
bucket named in the URI. All objects (including all object versions and
Delete Markers) in the bucket must be deleted before the bucket itself can
be deleted.
        *createBucket *-        This implementation of the PUT operation 
creates a new
bucket.
        *deleteBucketPolicy *-This implementation of the DELETE operation uses 
the
policy sub resource to delete the policy on a specified bucket.
        *deleteBucketWebsiteConfiguration *- This operation removes the website
configuration for a bucket.
        *getObjectsInBucket *- This implementation of the GET operation returns
some or all (up to 1000) of the objects in a bucket.
        *getBucketLifeCycle *- Returns the lifecycle configuration information 
set
on the bucket.
        *getBucketPolicy *- This implementation of the GET operation uses the
policy subresource to return the policy of a specified bucket.
        *getBucketObjectVersions *- You can use the versions subresource to list
metadata about all of the versions of objects in a bucket.
        *getBucketRequestPayment *- This implementation of the GET operation 
uses
the requestPayment subresource to return the request payment configuration
of a bucket.
        *getBucketVersioning *- This implementation of the GET operation uses 
the
versioning subresource to return the versioning state of a bucket.
        *createBucketWebsiteConfiguration *- Sets the configuration of the 
website
that is specified in the website subresource.
        *getWebSiteConfiguration *- This implementation of the GET operation
returns the website configuration associated with a bucket.
        *checkBucketPermission *-       This operation is useful to determine 
if a bucket
exists and you have permission to access it.
        *createBucketPolicy*- This implementation of the PUT operation uses the
policy subresource to add to or replace a policy on a bucket.
        *getBucketACL *-        This implementation of the GET operation uses 
the acl
subresource to return the access control list (ACL) of a bucket.

*OPERATIONS ON OBJECTS*
        *deleteObject *- The DELETE operation removes the null version (if 
there is
one) of an object and inserts a delete marker, which becomes the latest
version of the object.
        *deleteMultipleObjects *-       The Multi-Object Delete operation 
enables you to
delete multiple objects from a bucket using a single HTTP request. If you
know the object keys that you want to delete, then this operation provides a
suitable alternative to sending individual delete requests.
        *getObject *- This implementation of the GET operation retrieves objects
from Amazon S3.
        *createObject *- The POST operation adds an object to a specified bucket
using HTML forms.
        *getObjectMetaData *- The HEAD operation retrieves metadata from an 
object
without returning the object itself.
        *createObjectACL *- This implementation of the PUT operation uses the 
acl
subresource to set the access control list (ACL) permissions for an object
that already exists in a bucket.
        *createObjectCopy *- This implementation of the PUT operation creates a
copy of an object that is already stored in Amazon S3.


Methods that are not going to implement with version 1.0.0
*OPERATION ON BUCKETS*
        *getBucketCORS *- Returns the cors configuration information set for the
bucket.
        *listMultipartUploads *- This operation lists in-progress multipart
uploads. An in-progress multipart upload is a multipart upload that has been
initiated, using the Initiate Multipart Upload request, but has not yet been
completed or aborted.
        *createBucketACL *- This implementation of the PUT operation uses the 
acl
subresource to set the permissions on an existing bucket using access
control lists (ACL).
        *createBucketCORS *-    Sets the cors configuration for your bucket. If 
the
configuration exists, Amazon S3 replaces it.
        *createBucketLifeCycle *- Creates a new lifecycle configuration for the
bucket or replaces an existing lifecycle configuration.
        *createBucketLogging *- This implementation of the PUT operation uses 
the
logging subresource to set the logging parameters for a bucket and to
specify permissions for who can view and modify the logging parameters. To
set the logging status of a bucket, you must be the bucket owner.
        (NOTE: The logging implementation of PUT Bucket is a beta feature.)
        *createBucketNotification *- This implementation of the PUT operation 
uses
the notification subresource to enable notifications of specified events for
a bucket.
        *createBucketTagging *- This implementation of the PUT operation uses 
the
tagging subresource to add a set of tags to an existing bucket.
        *deleteBucketTagging *- This implementation of the DELETE operation uses
the tagging subresource to remove a tag set from the specified bucket.
        *createBucketRequestPayment *- This implementation of the PUT operation
uses the requestPayment subresource to set the request payment configuration
of a bucket.
        *createBucketVersioning *- This implementation of the PUT operation uses
the versioning subresource to set the versioning state of an existing
bucket.
        *deleteBucketCors *-Deletes the cors configuration information set for 
the
bucket.
        *getBucketLocation *-   This implementation of the GET operation uses 
the
location subresource to return a bucket's Region.
        *getBucketLogging *- This implementation of the GET operation uses the
logging subresource to return the logging status of a bucket and the
permissions users have to view and modify that status. (NOTE: Logging
functionality is currently in beta). 
        *getBucketNotification *-       This implementation of the GET 
operation uses the
notification subresource to return the notification configuration of a
bucket.
        *getBucketTagging *- This implementation of the GET operation uses the
tagging subresource to return the tag set associated with the bucket.
        *deleteBucketLifecycle *-       Deletes the lifecycle configuration 
from the
specified bucket.
        
*OPERATIONS ON OBJECTS*
        *createObject *- This implementation of the PUT operation adds an 
object to
a bucket.
        *optionsObject *- A browser can send this preflight request to Amazon 
S3 to
determine if it can send an actual request with the specific origin, HTTP
method, and headers.
        *ObjectRestore *-  Restores a temporary copy of an archived object. In 
the
request, you specify the number of days that you want the restored copy to
exist. After the specified period, Amazon S3 deletes the temporary copy.
Note that the object remains archived; Amazon S3 deletes only the restored
copy.
        *initiateMultipartUpload *- This operation initiates a multipart upload 
and
returns an upload ID. This upload ID is used to associate all the parts in
the specific multipart upload.
        *uploadPart *- This operation uploads a part in a multipart upload.
        Note: In this operation you provide part data in your request. However, 
you
have an option to specify your existing Amazon S3 object as data source for
the part getting uploaded. To upload a part from an existing object you use
the Upload Part (Copy) operation. For more information, see Upload Part -
Copy.
        *uploadPartCopy *- Uploads a part by copying data from an existing 
object
as data source.
        *completeMultipartUpload        *This operation completes a multipart 
upload by
assembling previously uploaded parts.
        *abortMultipartUpload *- This operation aborts a multipart upload.
        *getObjectACL *- This implementation of the GET operation uses the acl
subresource to return the access control list (ACL) of an object.
        *getObjectTorrent *- This implementation of the GET operation uses the
torrent subresource to return torrent files from a bucket.
        *listParts *- This operation lists the parts that have been uploaded 
for a
specific multipart upload.





--
View this message in context: 
http://wso2-oxygen-tank.10903.n7.nabble.com/Connector-amazon-s3-tp89705.html
Sent from the WSO2 Architecture mailing list archive at Nabble.com.
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to