DreamObjects cluster migration
DreamHost is currently in the process of migrating all DreamObjects accounts to a new hardware platform.
Please review this article to identify the cluster your DreamObjects account currently resides on and the features it supports.
Overview
DreamObjects allows you to set public and private permissions on Buckets. These permissions control what information is available when accessing the Bucket or Objects within it.
Bucket permissions
You can view your Bucket's permissions on the DreamObjects page.
- Click your username to expand your Bucket list.
- Click the Change Settings link to the right of a Bucket.
- Click the 'PERMISSIONS' toggle in the pop-up to toggle between public and private permissions for this Bucket.
What does this change?
Bucket permissions control what information can be viewed publicly online.
If a Bucket has public permissions, visiting the URL of the bucket will display a list of its contents. For example, this bucket has two images named 'lake-public.jpg' and 'lake-private.jpg'.
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Name>dreamhostexample-1</Name> <Prefix/> <Marker/> <MaxKeys>1000</MaxKeys> <IsTruncated>false</IsTruncated> <Contents> <Key>lake-private.jpg</Key> <LastModified>2018-08-30T15:16:58.554Z</LastModified> <ETag>"91d13527c81b99fe42f01f47219a250d"</ETag> <Size>462604</Size> <StorageClass>STANDARD</StorageClass> <Owner> <ID>my_user</ID> <DisplayName>my_user</DisplayName> </Owner> <Type>Normal</Type> </Contents> <Contents> <Key>lake-public.jpg</Key> <LastModified>2018-08-30T22:14:52.661Z</LastModified> <ETag>"91d13527c81b99fe42f01f47219a250d-36"</ETag> <Size>462604</Size> <StorageClass>STANDARD</StorageClass> <Owner> <ID>my_user</ID> <DisplayName>my_user</DisplayName> </Owner> </Contents> </ListBucketResult>
You can see above the names of the Objects are displayed along with the username of the Bucket.
If the Bucket's permissions were set to private, you would not see the contents or username. You would only see this 'Access Denied' message:
<Error> <Code>AccessDenied</Code> <BucketName>dreamhostexample</BucketName> <RequestId> tx00000000000000035767c-005b885a0766e58c8-us-east-1-iad1 </RequestId> <HostId>66e58c8-us-east-1-iad1-us-east-1</HostId> </Error>
Object permissions
Object permissions behave differently for different DreamObjects clusters. Check your cluster to confirm what behavior to expect.
Buckets on DreamObjects US-East 1
Object permissions control how an individual Object within a Bucket can be viewed.
You can view your Bucket's permissions on the DreamObjects page after opening your Bucket.
- Click your username to expand your Bucket list.
- Click the View Objects button at the bottom. This opens a pop-up box.
- Click your Bucket name in the left pane to display a list of your Objects.
- Click on an Object to view its permissions.
- A PERMISSIONS toggle button appears.
- Click the PERMISSIONS toggle button, which changes the URL link to the Object.
If the URL is public, you'll see the image when you visit it. If the URL is private, it will appear as a long strand of random characters that is only valid for a temporary time period. You can set this period in the Expires dropdown menu. You'll only be able to view this image using this private URL.
Buckets on DreamObjects US-East 5
Object permissions are inherited from the bucket's permission setting. A permissions label will be viewable for each object for you to confirm the bucket's permissions, however an object's permissions can only be edited by changing the whole bucket's permissions. If you need to have different permissions for objects currently in the same bucket, you can split the objects up between two buckets with different permissions for each bucket.
Can I view my Objects in a private bucket?
Yes. It does not matter if the Bucket's permissions are set to Public or Private; you will always be able to view your Objects using the Object's correct URL. The correct URL depends on whether the Object is set to public or private.
Public Objects have a simple URL, whereas private Objects have a longer URL with a unique timestamp.
Does changing a Bucket's permissions in the panel change the permissions of Objects within it?
This depends on the cluster your bucket is on. For buckets on DreamObjects US-East 5, you can simply change the permissions in the panel for the bucket and all of the objects within that bucket will inherit the same permissions level.
For buckets on DreamObjects US-East 1, changing the Bucket's permissions in the panel does not change any of the Object's permissions. They will remain the same, but can be edited individually.
Changing permissions in a client
You can also change permissions in any DreamObjects client. Here's a link that shows how to do this in Cyberduck.
Requesting support
If you need assistance with updating your Object permissions, submit a ticket to support. In your ticket, make sure to specify the Bucket name and what Objects within it you'd like permissions changed. Support will then be able to perform the Object permission changes for you.