Struct gapi_grpc::google::cloud::accessapproval::v1::access_approval_client::AccessApprovalClient[][src]

pub struct AccessApprovalClient<T> { /* fields omitted */ }

This API allows a customer to manage accesses to cloud resources by Google personnel. It defines the following resource model:

The service also periodically emails a list of recipients, defined at the Project/Folder/Organization level in the accessApprovalSettings, when there is a pending ApprovalRequest for them to act on. The ApprovalRequests can also optionally be published to a Cloud Pub/Sub topic owned by the customer (for Beta, the Pub/Sub setup is managed manually).

ApprovalRequests can be approved or dismissed. Google personel can only access the indicated resource or resources if the request is approved (subject to some exclusions: https://cloud.google.com/access-approval/docs/overview#exclusions).

Note: Using Access Approval functionality will mean that Google may not be able to meet the SLAs for your chosen products, as any support response times may be dramatically increased. As such the SLAs do not apply to any service disruption to the extent impacted by Customer’s use of Access Approval. Do not enable Access Approval for projects where you may require high service availability and rapid response by Google Cloud Support.

After a request is approved or dismissed, no further action may be taken on it. Requests with the requested_expiration in the past or with no activity for 14 days are considered dismissed. When an approval expires, the request is considered dismissed.

If a request is not approved or dismissed, we call it pending.

Implementations

impl AccessApprovalClient<Channel>[src]

pub async fn connect<D>(dst: D) -> Result<Self, Error> where
    D: TryInto<Endpoint>,
    D::Error: Into<StdError>, 
[src]

Attempt to create a new client by connecting to a given endpoint.

impl<T> AccessApprovalClient<T> where
    T: GrpcService<BoxBody>,
    T::ResponseBody: Body + HttpBody + Send + 'static,
    T::Error: Into<StdError>,
    <T::ResponseBody as HttpBody>::Error: Into<StdError> + Send
[src]

pub fn new(inner: T) -> Self[src]

pub fn with_interceptor(inner: T, interceptor: impl Into<Interceptor>) -> Self[src]

pub async fn list_approval_requests(
    &mut self,
    request: impl IntoRequest<ListApprovalRequestsMessage>
) -> Result<Response<ListApprovalRequestsResponse>, Status>
[src]

Lists approval requests associated with a project, folder, or organization. Approval requests can be filtered by state (pending, active, dismissed). The order is reverse chronological.

pub async fn get_approval_request(
    &mut self,
    request: impl IntoRequest<GetApprovalRequestMessage>
) -> Result<Response<ApprovalRequest>, Status>
[src]

Gets an approval request. Returns NOT_FOUND if the request does not exist.

pub async fn approve_approval_request(
    &mut self,
    request: impl IntoRequest<ApproveApprovalRequestMessage>
) -> Result<Response<ApprovalRequest>, Status>
[src]

Approves a request and returns the updated ApprovalRequest.

Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

pub async fn dismiss_approval_request(
    &mut self,
    request: impl IntoRequest<DismissApprovalRequestMessage>
) -> Result<Response<ApprovalRequest>, Status>
[src]

Dismisses a request. Returns the updated ApprovalRequest.

NOTE: This does not deny access to the resource if another request has been made and approved. It is equivalent in effect to ignoring the request altogether.

Returns NOT_FOUND if the request does not exist.

Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

pub async fn get_access_approval_settings(
    &mut self,
    request: impl IntoRequest<GetAccessApprovalSettingsMessage>
) -> Result<Response<AccessApprovalSettings>, Status>
[src]

Gets the settings associated with a project, folder, or organization.

pub async fn update_access_approval_settings(
    &mut self,
    request: impl IntoRequest<UpdateAccessApprovalSettingsMessage>
) -> Result<Response<AccessApprovalSettings>, Status>
[src]

Updates the settings associated with a project, folder, or organization. Settings to update are determined by the value of field_mask.

pub async fn delete_access_approval_settings(
    &mut self,
    request: impl IntoRequest<DeleteAccessApprovalSettingsMessage>
) -> Result<Response<()>, Status>
[src]

Deletes the settings associated with a project, folder, or organization. This will have the effect of disabling Access Approval for the project, folder, or organization, but only if all ancestors also have Access Approval disabled. If Access Approval is enabled at a higher level of the hierarchy, then Access Approval will still be enabled at this level as the settings are inherited.

Trait Implementations

impl<T: Clone> Clone for AccessApprovalClient<T>[src]

impl<T> Debug for AccessApprovalClient<T>[src]

Auto Trait Implementations

impl<T> !RefUnwindSafe for AccessApprovalClient<T>

impl<T> Send for AccessApprovalClient<T> where
    T: Send

impl<T> Sync for AccessApprovalClient<T> where
    T: Sync

impl<T> Unpin for AccessApprovalClient<T> where
    T: Unpin

impl<T> !UnwindSafe for AccessApprovalClient<T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IntoRequest<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]

impl<T> WithSubscriber for T[src]