Interoperability With Other Data Access Protocols

The following list defines interoperability limitations between the S3 protocol and other data access protocols:

Note:

Other data access protocols include SWIFT API, NFS, SMB, WebDAV, and so on.
  • Container and Bucket – A Swift container will appear as a bucket through S3 and a bucket as a container through Swift.

  • S3 Access – Any change made by another protocol to the Oracle ZFS Storage Appliance access control lists (ACLs) will have a direct effect on S3 access. The S3 Object API automatically ignores the Oracle ZFS Storage Appliance ACLs that cannot be mapped to S3 ACLs. Access to an object or bucket is dependent on the appliance ACL associations. Do not change the appliance ACLs on a filesystem or any of its contents via another protocol.

  • Read and Write Mode – It is advisable to keep all other protocols in read-only mode when S3 is in read/write mode. If an object is edited by another protocol, users might see unexpected results the next time a request is made to retrieve the object. For instance, an edit from another protocol will be detected and checksums will be recalculated the next time the object is accessed using the S3 API.

  • DLO and Versioning Operations – Complex operations like Dynamic Large Object (DLO) and versioning are not supported for interoperability between SWIFT and S3. These operations, which are very protocol specific, will not work across object protocols. DLO and versioned objects will appear like normal objects from the other protocol. It is advisable to maintain caution when dealing with such objects as accidental deletion or editing could break the functionality for the other protocol.

  • User-Defined Metadata – User-defined metadata can be stored using either SWIFT or S3. User-defined metadata stored by one of the object protocols can then be retrieved by the other protocol. Note that S3 only allows setting of user-defined metadata for objects, whereas Swift allows it for containers and objects. The user metadata for containers will not be visible from S3.

  • Bucket Access – Only the object and bucket creator (owner) is permitted access to the object and bucket from the other protocols.