-
Notifications
You must be signed in to change notification settings - Fork 9
Metadata Tag
This page outlines the general design used for managing User Access Control to S3 Objects. This page is mainly targeted for users and for people who are planning on implementing and leveraging the API endpoints.
In general, metadata is "data that provides information about other data", but is not considered a part of the content of the data itself. Your line of business may require metadata to do things like the following:
- Describe the contents of the object
- Explain the structure of the object
- Track administrative lifecycles of the object
- Reference other related objects
- Record legal/licensing information about the object
For these scenarios, having a pragmatic way to assign, manage, and lookup these pieces of metadata in an effective way is indispensable. While S3 does support assigning and managing metadata and tags, the S3 API does not provide a way to efficiently search for objects using metadata and tags. This is where COMS can fill in the gap.
S3 supports the the manipulation of metadata on S3 objects. The key behavior to understand with metadata is that in S3, metadata is considered a part of the object definition itself. As such, each operation on metadata will create a copy of the object with the modified metadata attached. When the metadata for an object has to change, if the object resides in a version-enabled bucket, it will create a new version of the object with the new metadata and a copy of the original object bytestream.
Other general key notes to consider when implementing user-defined metadata are the following:
- S3 stores user-defined metadata keys in lowercase.
- The request header maximum size for user-defined metadata shall not exceed 2KB in size.
- The size of user-defined metadata is measured by taking the sum of the number of bytes in the UTF-8 encoding of each key and value.
- Avoid using characters outside the US-ASCII and UTF-8 standards for metadata values
More details found here: AWS: Working with object metadata
S3 also supports the manipulation of tags on S3 objects. While tags are logically similar to metadata, S3 treats tags differently than metadata. The key behavior to understand with tags is that in S3, unlike metadata, tags can be modified without the need to create new versions of the object. As such, operations on tags can be ad-hoc manipulated without triggering the creation of a new version of the object.
Other general key notes to consider when implementing user-defined tags are the following:
- Only up to 10 tags may be associated with an object at a time.
- Tags that are associated with an object must have unique tag keys.
- A tag key can be up to 128 Unicode characters in length
- A tag value can be up to 256 Unicode characters in length.
- The key and values are case sensitive.
More details found here: AWS: Categorizing your storage using tags
Return Home
API User Guide:
- Authentication
- Endpoint Notes
- Permissions
- Metadata and Tags
- Managing buckets
- Synchronization
- Use-Case Examples
Deployment Guide:
The Hosted Service: