#[non_exhaustive]pub struct Access {
pub role: String,
pub user_by_email: String,
pub group_by_email: String,
pub domain: String,
pub special_group: String,
pub iam_member: String,
pub view: Option<TableReference>,
pub routine: Option<RoutineReference>,
pub dataset: Option<DatasetAccessEntry>,
pub condition: Option<Expr>,
/* private fields */
}Expand description
An object that defines dataset access for an entity.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.role: StringAn IAM role ID that should be granted to the user, group, or domain specified in this access entry. The following legacy mappings will be applied:
OWNER:roles/bigquery.dataOwnerWRITER:roles/bigquery.dataEditorREADER:roles/bigquery.dataViewer
This field will accept any of the above formats, but will return only the legacy format. For example, if you set this field to “roles/bigquery.dataOwner”, it will be returned back as “OWNER”.
user_by_email: String[Pick one] An email address of a user to grant access to. For example: fred@example.com. Maps to IAM policy member “user:EMAIL” or “serviceAccount:EMAIL”.
group_by_email: String[Pick one] An email address of a Google Group to grant access to. Maps to IAM policy member “group:GROUP”.
domain: String[Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: “example.com”. Maps to IAM policy member “domain:DOMAIN”.
special_group: String[Pick one] A special group to grant access to. Possible values include:
- projectOwners: Owners of the enclosing project.
- projectReaders: Readers of the enclosing project.
- projectWriters: Writers of the enclosing project.
- allAuthenticatedUsers: All authenticated BigQuery users.
Maps to similarly-named IAM members.
iam_member: String[Pick one] Some other type of member that appears in the IAM Policy but isn’t a user, group, domain, or special group.
view: Option<TableReference>[Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to views/tables/routines in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
routine: Option<RoutineReference>[Pick one] A routine from a different dataset to grant access to. Queries executed against that routine will have read access to views/tables/routines in this dataset. Only UDF is supported for now. The role field is not required when this field is set. If that routine is updated by any user, access to the routine needs to be granted again via an update operation.
dataset: Option<DatasetAccessEntry>[Pick one] A grant authorizing all resources of a particular type in a particular dataset access to this dataset. Only views are supported for now. The role field is not required when this field is set. If that dataset is deleted and re-created, its access needs to be granted again via an update operation.
condition: Option<Expr>Optional. condition for the binding. If CEL expression in this field is true, this access binding will be considered
Implementations§
Source§impl Access
impl Access
Sourcepub fn set_user_by_email<T: Into<String>>(self, v: T) -> Self
pub fn set_user_by_email<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_group_by_email<T: Into<String>>(self, v: T) -> Self
pub fn set_group_by_email<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_domain<T: Into<String>>(self, v: T) -> Self
pub fn set_domain<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_special_group<T: Into<String>>(self, v: T) -> Self
pub fn set_special_group<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_iam_member<T: Into<String>>(self, v: T) -> Self
pub fn set_iam_member<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_view<T>(self, v: T) -> Selfwhere
T: Into<TableReference>,
pub fn set_view<T>(self, v: T) -> Selfwhere
T: Into<TableReference>,
Sourcepub fn set_or_clear_view<T>(self, v: Option<T>) -> Selfwhere
T: Into<TableReference>,
pub fn set_or_clear_view<T>(self, v: Option<T>) -> Selfwhere
T: Into<TableReference>,
Sourcepub fn set_routine<T>(self, v: T) -> Selfwhere
T: Into<RoutineReference>,
pub fn set_routine<T>(self, v: T) -> Selfwhere
T: Into<RoutineReference>,
Sourcepub fn set_or_clear_routine<T>(self, v: Option<T>) -> Selfwhere
T: Into<RoutineReference>,
pub fn set_or_clear_routine<T>(self, v: Option<T>) -> Selfwhere
T: Into<RoutineReference>,
Sourcepub fn set_dataset<T>(self, v: T) -> Selfwhere
T: Into<DatasetAccessEntry>,
pub fn set_dataset<T>(self, v: T) -> Selfwhere
T: Into<DatasetAccessEntry>,
Sourcepub fn set_or_clear_dataset<T>(self, v: Option<T>) -> Selfwhere
T: Into<DatasetAccessEntry>,
pub fn set_or_clear_dataset<T>(self, v: Option<T>) -> Selfwhere
T: Into<DatasetAccessEntry>,
Sourcepub fn set_condition<T>(self, v: T) -> Self
pub fn set_condition<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_condition<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_condition<T>(self, v: Option<T>) -> Self
Trait Implementations§
impl StructuralPartialEq for Access
Auto Trait Implementations§
impl Freeze for Access
impl RefUnwindSafe for Access
impl Send for Access
impl Sync for Access
impl Unpin for Access
impl UnsafeUnpin for Access
impl UnwindSafe for Access
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request