pub struct Client { /* private fields */ }
Expand description

Client for Amazon Verified Permissions

Client for invoking operations on Amazon Verified Permissions. Each operation on Amazon Verified Permissions is a method on this this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.

Constructing a Client

A Config is required to construct a client. For most use cases, the aws-config crate should be used to automatically resolve this config using aws_config::load_from_env(), since this will resolve an SdkConfig which can be shared across multiple different AWS SDK clients. This config resolution process can be customized by calling aws_config::from_env() instead, which returns a ConfigLoader that uses the builder pattern to customize the default config.

In the simplest case, creating a client looks as follows:

let config = aws_config::load_from_env().await;
let client = aws_sdk_verifiedpermissions::Client::new(&config);

Occasionally, SDKs may have additional service-specific that can be set on the Config that is absent from SdkConfig, or slightly different settings for a specific client may be desired. The Config struct implements From<&SdkConfig>, so setting these specific settings can be done as follows:

let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_verifiedpermissions::config::Builder::from(&sdk_config)
    .some_service_specific_setting("value")
    .build();

See the aws-config docs and Config for more information on customizing configuration.

Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.

Implementations§

source§

impl Client

source

pub fn create_identity_source(&self) -> CreateIdentitySourceFluentBuilder

Constructs a fluent builder for the CreateIdentitySource operation.

source§

impl Client

source

pub fn create_policy(&self) -> CreatePolicyFluentBuilder

Constructs a fluent builder for the CreatePolicy operation.

source§

impl Client

source

pub fn create_policy_store(&self) -> CreatePolicyStoreFluentBuilder

Constructs a fluent builder for the CreatePolicyStore operation.

source§

impl Client

source

pub fn create_policy_template(&self) -> CreatePolicyTemplateFluentBuilder

Constructs a fluent builder for the CreatePolicyTemplate operation.

source§

impl Client

source

pub fn delete_identity_source(&self) -> DeleteIdentitySourceFluentBuilder

Constructs a fluent builder for the DeleteIdentitySource operation.

source§

impl Client

source

pub fn delete_policy(&self) -> DeletePolicyFluentBuilder

Constructs a fluent builder for the DeletePolicy operation.

source§

impl Client

source

pub fn delete_policy_store(&self) -> DeletePolicyStoreFluentBuilder

Constructs a fluent builder for the DeletePolicyStore operation.

source§

impl Client

source

pub fn delete_policy_template(&self) -> DeletePolicyTemplateFluentBuilder

Constructs a fluent builder for the DeletePolicyTemplate operation.

source§

impl Client

source

pub fn get_identity_source(&self) -> GetIdentitySourceFluentBuilder

Constructs a fluent builder for the GetIdentitySource operation.

source§

impl Client

source

pub fn get_policy(&self) -> GetPolicyFluentBuilder

Constructs a fluent builder for the GetPolicy operation.

source§

impl Client

source

pub fn get_policy_store(&self) -> GetPolicyStoreFluentBuilder

Constructs a fluent builder for the GetPolicyStore operation.

source§

impl Client

source

pub fn get_policy_template(&self) -> GetPolicyTemplateFluentBuilder

Constructs a fluent builder for the GetPolicyTemplate operation.

source§

impl Client

source

pub fn get_schema(&self) -> GetSchemaFluentBuilder

Constructs a fluent builder for the GetSchema operation.

source§

impl Client

source

pub fn is_authorized(&self) -> IsAuthorizedFluentBuilder

Constructs a fluent builder for the IsAuthorized operation.

source§

impl Client

source

pub fn is_authorized_with_token(&self) -> IsAuthorizedWithTokenFluentBuilder

Constructs a fluent builder for the IsAuthorizedWithToken operation.

source§

impl Client

source

pub fn list_identity_sources(&self) -> ListIdentitySourcesFluentBuilder

Constructs a fluent builder for the ListIdentitySources operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • policy_store_id(impl Into<String>) / set_policy_store_id(Option<String>):

      Specifies the ID of the policy store that contains the identity sources that you want to list.

    • next_token(impl Into<String>) / set_next_token(Option<String>):

      Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call’s NextToken response to request the next page of results.

    • max_results(i32) / set_max_results(Option<i32>):

      Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

      If you do not specify this parameter, the operation defaults to 10 identity sources per response. You can specify a maximum of 200 identity sources per response.

    • filters(IdentitySourceFilter) / set_filters(Option<Vec<IdentitySourceFilter>>):

      Specifies characteristics of an identity source that you can use to limit the output to matching identity sources.

  • On success, responds with ListIdentitySourcesOutput with field(s):
    • next_token(Option<String>):

      If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

    • identity_sources(Option<Vec<IdentitySourceItem>>):

      The list of identity sources stored in the specified policy store.

  • On failure, responds with SdkError<ListIdentitySourcesError>
source§

impl Client

source

pub fn list_policies(&self) -> ListPoliciesFluentBuilder

Constructs a fluent builder for the ListPolicies operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • policy_store_id(impl Into<String>) / set_policy_store_id(Option<String>):

      Specifies the ID of the policy store you want to list policies from.

    • next_token(impl Into<String>) / set_next_token(Option<String>):

      Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call’s NextToken response to request the next page of results.

    • max_results(i32) / set_max_results(Option<i32>):

      Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

      If you do not specify this parameter, the operation defaults to 10 policies per response. You can specify a maximum of 50 policies per response.

    • filter(PolicyFilter) / set_filter(Option<PolicyFilter>):

      Specifies a filter that limits the response to only policies that match the specified criteria. For example, you list only the policies that reference a specified principal.

  • On success, responds with ListPoliciesOutput with field(s):
    • next_token(Option<String>):

      If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

    • policies(Option<Vec<PolicyItem>>):

      Lists all policies that are available in the specified policy store.

  • On failure, responds with SdkError<ListPoliciesError>
source§

impl Client

source

pub fn list_policy_stores(&self) -> ListPolicyStoresFluentBuilder

Constructs a fluent builder for the ListPolicyStores operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • next_token(impl Into<String>) / set_next_token(Option<String>):

      Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call’s NextToken response to request the next page of results.

    • max_results(i32) / set_max_results(Option<i32>):

      Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

      If you do not specify this parameter, the operation defaults to 10 policy stores per response. You can specify a maximum of 50 policy stores per response.

  • On success, responds with ListPolicyStoresOutput with field(s):
    • next_token(Option<String>):

      If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

    • policy_stores(Option<Vec<PolicyStoreItem>>):

      The list of policy stores in the account.

  • On failure, responds with SdkError<ListPolicyStoresError>
source§

impl Client

source

pub fn list_policy_templates(&self) -> ListPolicyTemplatesFluentBuilder

Constructs a fluent builder for the ListPolicyTemplates operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • policy_store_id(impl Into<String>) / set_policy_store_id(Option<String>):

      Specifies the ID of the policy store that contains the policy templates you want to list.

    • next_token(impl Into<String>) / set_next_token(Option<String>):

      Specifies that you want to receive the next page of results. Valid only if you received a NextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call’s NextToken response to request the next page of results.

    • max_results(i32) / set_max_results(Option<i32>):

      Specifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the NextToken response element is returned with a value (not null). Include the specified value as the NextToken request parameter in the next call to the operation to get the next set of results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.

      If you do not specify this parameter, the operation defaults to 10 policy templates per response. You can specify a maximum of 50 policy templates per response.

  • On success, responds with ListPolicyTemplatesOutput with field(s):
    • next_token(Option<String>):

      If present, this value indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null. This indicates that this is the last page of results.

    • policy_templates(Option<Vec<PolicyTemplateItem>>):

      The list of the policy templates in the specified policy store.

  • On failure, responds with SdkError<ListPolicyTemplatesError>
source§

impl Client

source

pub fn put_schema(&self) -> PutSchemaFluentBuilder

Constructs a fluent builder for the PutSchema operation.

source§

impl Client

source

pub fn update_identity_source(&self) -> UpdateIdentitySourceFluentBuilder

Constructs a fluent builder for the UpdateIdentitySource operation.

source§

impl Client

source

pub fn update_policy(&self) -> UpdatePolicyFluentBuilder

Constructs a fluent builder for the UpdatePolicy operation.

source§

impl Client

source

pub fn update_policy_store(&self) -> UpdatePolicyStoreFluentBuilder

Constructs a fluent builder for the UpdatePolicyStore operation.

source§

impl Client

source

pub fn update_policy_template(&self) -> UpdatePolicyTemplateFluentBuilder

Constructs a fluent builder for the UpdatePolicyTemplate operation.

source§

impl Client

source

pub fn from_conf(conf: Config) -> Self

Creates a new client from the service Config.

Panics

This method will panic if the conf has retry or timeouts enabled without a sleep_impl. If you experience this panic, it can be fixed by setting the sleep_impl, or by disabling retries and timeouts.

source

pub fn config(&self) -> &Config

Returns the client’s configuration.

source§

impl Client

source

pub fn new(sdk_config: &SdkConfig) -> Self

Creates a new client from an SDK Config.

Panics
  • This method will panic if the sdk_config is missing an async sleep implementation. If you experience this panic, set the sleep_impl on the Config passed into this function to fix it.
  • This method will panic if the sdk_config is missing an HTTP connector. If you experience this panic, set the http_connector on the Config passed into this function to fix it.

Trait Implementations§

source§

impl Clone for Client

source§

fn clone(&self) -> Client

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Client

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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