pub struct ObjectAccessControl {
Show 13 fields pub kind: String, pub id: String, pub self_link: String, pub bucket: String, pub object: String, pub generation: Option<String>, pub entity: Entity, pub role: Role, pub email: Option<String>, pub entity_id: Option<String>, pub domain: Option<String>, pub project_team: Option<ProjectTeam>, pub etag: String,
}
Expand description

The ObjectAccessControls resources represent the Access Control Lists (ACLs) for objects within Google Cloud Storage. ACLs let you specify who has access to your data and to what extent.

Important: The methods for this resource fail with a 400 Bad Request response for buckets with
uniform bucket-level access enabled. Use storage.buckets.getIamPolicy and
storage.buckets.setIamPolicy to control access instead.

There are two roles that can be assigned to an entity:

READERs can get an object, though the acl property will not be revealed. OWNERs are READERs, and they can get the acl property, update an object, and call all objectAccessControls methods on the object. The owner of an object is always an OWNER.

For more information, see Access Control, with the caveat that this API uses READER and OWNER instead of READ and FULL_CONTROL.

Fields

kind: String

The kind of item this is. For object access control entries, this is always storage#objectAccessControl.

id: String

The ID of the access-control entry.

self_link: String

The link to this access-control entry.

bucket: String

The name of the bucket.

object: String

The name of the object, if applied to an object.

generation: Option<String>

The content generation of the object, if applied to an object.

entity: Entity

The entity holding the permission, in one of the following forms:

user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers

Examples:

The user liz@example.com would be user-liz@example.com. The group example@googlegroups.com would be group-example@googlegroups.com. To refer to all members of the G Suite for Business domain example.com, the entity would be domain-example.com.

role: Role

The access permission for the entity.

email: Option<String>

The email address associated with the entity, if any.

entity_id: Option<String>

The ID for the entity, if any.

domain: Option<String>

The domain associated with the entity, if any.

project_team: Option<ProjectTeam>

The project team associated with the entity, if any.

etag: String

HTTP 1.1 Entity tag for the access-control entry.

Implementations

Creates a new ACL entry on the specified object.

Important

This method fails with a 400 Bad Request response for buckets with uniform bucket-level access enabled. Use Bucket::get_iam_policy and Bucket::set_iam_policy to control access instead.

The synchronous equivalent of ObjectAccessControl::create.

Features

This function requires that the feature flag sync is enabled in Cargo.toml.

Retrieves ACL entries on the specified object.

Important

Important: This method fails with a 400 Bad Request response for buckets with uniform bucket-level access enabled. Use Bucket::get_iam_policy and Bucket::set_iam_policy to control access instead.

The synchronous equivalent of ObjectAccessControl::list.

Features

This function requires that the feature flag sync is enabled in Cargo.toml.

Returns the ACL entry for the specified entity on the specified bucket.

Important

Important: This method fails with a 400 Bad Request response for buckets with uniform bucket-level access enabled. Use Bucket::get_iam_policy and Bucket::set_iam_policy to control access instead.

The synchronous equivalent of ObjectAccessControl::read.

Features

This function requires that the feature flag sync is enabled in Cargo.toml.

Updates an ACL entry on the specified object.

Important

Important: This method fails with a 400 Bad Request response for buckets with uniform bucket-level access enabled. Use Bucket::get_iam_policy and Bucket::set_iam_policy to control access instead.

The synchronous equivalent of ObjectAccessControl::update.

Features

This function requires that the feature flag sync is enabled in Cargo.toml.

Permanently deletes the ACL entry for the specified entity on the specified object.

Important

Important: This method fails with a 400 Bad Request response for buckets with uniform bucket-level access enabled. Use Bucket::get_iam_policy and Bucket::set_iam_policy to control access instead.

The synchronous equivalent of ObjectAccessControl::delete.

Features

This function requires that the feature flag sync is enabled in Cargo.toml.

Trait Implementations

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more