pub struct BinauthzManagementServiceV1 { /* private fields */ }Expand description
Implements a client for the Binary Authorization API.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
async fn sample(
parent: &str,
) -> anyhow::Result<()> {
let client = BinauthzManagementServiceV1::builder().build().await?;
let mut list = client.list_attestors()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}§Service Description
Google Cloud Management Service for Binary Authorization admission policies and attestation authorities.
This API implements a REST model with the following objects:
§Configuration
To configure BinauthzManagementServiceV1 use the with_* methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://binaryauthorization.googleapis.com). Applications using regional endpoints or running in restricted networks (e.g. a network configured with Private Google Access with VPC Service Controls) may want to override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
BinauthzManagementServiceV1 holds a connection pool internally, it is advised to
create one and reuse it. You do not need to wrap BinauthzManagementServiceV1 in
an Rc or Arc to reuse it, because it
already uses an Arc internally.
Implementations§
Source§impl BinauthzManagementServiceV1
impl BinauthzManagementServiceV1
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for BinauthzManagementServiceV1.
let client = BinauthzManagementServiceV1::builder().build().await?;Sourcepub fn from_stub<T>(stub: impl Into<Arc<T>>) -> Selfwhere
T: BinauthzManagementServiceV1 + 'static,
pub fn from_stub<T>(stub: impl Into<Arc<T>>) -> Selfwhere
T: BinauthzManagementServiceV1 + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn get_policy(&self) -> GetPolicy
pub fn get_policy(&self) -> GetPolicy
A policy specifies the attestors that must attest to a container image, before the project is allowed to deploy that image. There is at most one policy per project. All image admission requests are permitted if a project has no policy.
Gets the policy for this project. Returns a default policy if the project does not have one.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, project_id: &str
) -> Result<()> {
let response = client.get_policy()
.set_name(format!("projects/{project_id}/policy"))
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_policy(&self) -> UpdatePolicy
pub fn update_policy(&self) -> UpdatePolicy
Creates or updates a project’s
policy, and returns a copy of
the new policy. A policy is
always updated as a whole, to avoid race conditions with concurrent policy
enforcement (or management!) requests. Returns NOT_FOUND if the project
does not exist, INVALID_ARGUMENT if the request is malformed.
§Example
use google_cloud_binaryauthorization_v1::model::Policy;
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, project_id: &str
) -> Result<()> {
let response = client.update_policy()
.set_policy(
Policy::new().set_name(format!("projects/{project_id}/policy"))/* set fields */
)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn create_attestor(&self) -> CreateAttestor
pub fn create_attestor(&self) -> CreateAttestor
Creates an attestor, and
returns a copy of the new
attestor. Returns
NOT_FOUND if the project does not exist, INVALID_ARGUMENT if the
request is malformed, ALREADY_EXISTS if the
attestor already exists.
§Example
use google_cloud_binaryauthorization_v1::model::Attestor;
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, parent: &str
) -> Result<()> {
let response = client.create_attestor()
.set_parent(parent)
.set_attestor_id("attestor_id_value")
.set_attestor(
Attestor::new()/* set fields */
)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn get_attestor(&self) -> GetAttestor
pub fn get_attestor(&self) -> GetAttestor
Gets an attestor.
Returns NOT_FOUND if the
attestor does not exist.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, project_id: &str, attestor_id: &str
) -> Result<()> {
let response = client.get_attestor()
.set_name(format!("projects/{project_id}/attestors/{attestor_id}"))
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_attestor(&self) -> UpdateAttestor
pub fn update_attestor(&self) -> UpdateAttestor
Updates an attestor.
Returns NOT_FOUND if the
attestor does not exist.
§Example
use google_cloud_binaryauthorization_v1::model::Attestor;
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, project_id: &str, attestor_id: &str
) -> Result<()> {
let response = client.update_attestor()
.set_attestor(
Attestor::new().set_name(format!("projects/{project_id}/attestors/{attestor_id}"))/* set fields */
)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_attestors(&self) -> ListAttestors
pub fn list_attestors(&self) -> ListAttestors
Lists attestors.
Returns INVALID_ARGUMENT if the project does not exist.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, parent: &str
) -> Result<()> {
let mut list = client.list_attestors()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn delete_attestor(&self) -> DeleteAttestor
pub fn delete_attestor(&self) -> DeleteAttestor
Deletes an attestor.
Returns NOT_FOUND if the
attestor does not exist.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1, project_id: &str, attestor_id: &str
) -> Result<()> {
client.delete_attestor()
.set_name(format!("projects/{project_id}/attestors/{attestor_id}"))
.send().await?;
Ok(())
}Sourcepub fn set_iam_policy(&self) -> SetIamPolicy
pub fn set_iam_policy(&self) -> SetIamPolicy
Sets the access control policy on the specified resource. Replaces any existing policy.
Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED
errors.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1
) -> Result<()> {
let response = client.set_iam_policy()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn get_iam_policy(&self) -> GetIamPolicy
pub fn get_iam_policy(&self) -> GetIamPolicy
Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1
) -> Result<()> {
let response = client.get_iam_policy()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn test_iam_permissions(&self) -> TestIamPermissions
pub fn test_iam_permissions(&self) -> TestIamPermissions
Returns permissions that a caller has on the specified resource. If the
resource does not exist, this will return an empty set of
permissions, not a NOT_FOUND error.
Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may “fail open” without warning.
§Example
use google_cloud_binaryauthorization_v1::Result;
async fn sample(
client: &BinauthzManagementServiceV1
) -> Result<()> {
let response = client.test_iam_permissions()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Trait Implementations§
Source§impl Clone for BinauthzManagementServiceV1
impl Clone for BinauthzManagementServiceV1
Source§fn clone(&self) -> BinauthzManagementServiceV1
fn clone(&self) -> BinauthzManagementServiceV1
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more