Struct aws_sdk_verifiedpermissions::Client
source · 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 values 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
impl Client
Constructs a fluent builder for the BatchIsAuthorized operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store. Policies in this policy store will be used to make the authorization decisions for the input.
entities(EntitiesDefinition)/set_entities(Option<EntitiesDefinition>):
required: falseSpecifies the list of resources and principals and their associated attributes that Verified Permissions can examine when evaluating the policies.
You can include only principal and resource entities in this parameter; you can’t include actions. You must specify actions in the schema.
requests(BatchIsAuthorizedInputItem)/set_requests(Option<Vec::<BatchIsAuthorizedInputItem>>):
required: trueAn array of up to 30 requests that you want Verified Permissions to evaluate.
- On success, responds with
BatchIsAuthorizedOutputwith field(s):results(Vec::<BatchIsAuthorizedOutputItem>):A series of
AlloworDenydecisions for each request, and the policies that produced them.
- On failure, responds with
SdkError<BatchIsAuthorizedError>
source§impl Client
impl Client
sourcepub fn create_identity_source(&self) -> CreateIdentitySourceFluentBuilder
pub fn create_identity_source(&self) -> CreateIdentitySourceFluentBuilder
Constructs a fluent builder for the CreateIdentitySource operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):
required: falseSpecifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..
If you don’t provide this value, then Amazon Web Services generates a random one for you.
If you retry the operation with the same
ClientToken, but with different parameters, the retry fails with anIdempotentParameterMismatcherror.policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store in which you want to store this identity source. Only policies and requests made using this policy store can reference identities from the identity provider configured in the new identity source.
configuration(Configuration)/set_configuration(Option<Configuration>):
required: trueSpecifies the details required to communicate with the identity provider (IdP) associated with this identity source.
At this time, the only valid member of this structure is a Amazon Cognito user pool configuration.
You must specify a
UserPoolArn, and optionally, aClientId.principal_entity_type(impl Into<String>)/set_principal_entity_type(Option<String>):
required: falseSpecifies the namespace and data type of the principals generated for identities authenticated by the new identity source.
- On success, responds with
CreateIdentitySourceOutputwith field(s):created_date(DateTime):The date and time the identity source was originally created.
identity_source_id(String):The unique ID of the new identity source.
last_updated_date(DateTime):The date and time the identity source was most recently updated.
policy_store_id(String):The ID of the policy store that contains the identity source.
- On failure, responds with
SdkError<CreateIdentitySourceError>
source§impl Client
impl Client
sourcepub fn create_policy(&self) -> CreatePolicyFluentBuilder
pub fn create_policy(&self) -> CreatePolicyFluentBuilder
Constructs a fluent builder for the CreatePolicy operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):
required: falseSpecifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..
If you don’t provide this value, then Amazon Web Services generates a random one for you.
If you retry the operation with the same
ClientToken, but with different parameters, the retry fails with anIdempotentParameterMismatcherror.policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the
PolicyStoreIdof the policy store you want to store the policy in.definition(PolicyDefinition)/set_definition(Option<PolicyDefinition>):
required: trueA structure that specifies the policy type and content to use for the new policy. You must include either a static or a templateLinked element. The policy content must be written in the Cedar policy language.
- On success, responds with
CreatePolicyOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the new policy.
policy_id(String):The unique ID of the new policy.
policy_type(PolicyType):The policy type of the new policy.
principal(Option<EntityIdentifier>):The principal specified in the new policy’s scope. This response element isn’t present when
principalisn’t specified in the policy content.resource(Option<EntityIdentifier>):The resource specified in the new policy’s scope. This response element isn’t present when the
resourceisn’t specified in the policy content.created_date(DateTime):The date and time the policy was originally created.
last_updated_date(DateTime):The date and time the policy was last updated.
- On failure, responds with
SdkError<CreatePolicyError>
source§impl Client
impl Client
sourcepub fn create_policy_store(&self) -> CreatePolicyStoreFluentBuilder
pub fn create_policy_store(&self) -> CreatePolicyStoreFluentBuilder
Constructs a fluent builder for the CreatePolicyStore operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):
required: falseSpecifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..
If you don’t provide this value, then Amazon Web Services generates a random one for you.
If you retry the operation with the same
ClientToken, but with different parameters, the retry fails with anIdempotentParameterMismatcherror.validation_settings(ValidationSettings)/set_validation_settings(Option<ValidationSettings>):
required: trueSpecifies the validation setting for this policy store.
Currently, the only valid and required value is
Mode.We recommend that you turn on
STRICTmode only after you define a schema. If a schema doesn’t exist, thenSTRICTmode causes any policy to fail validation, and Verified Permissions rejects the policy. You can turn off validation by using the UpdatePolicyStore. Then, when you have a schema defined, use UpdatePolicyStore again to turn validation back on.description(impl Into<String>)/set_description(Option<String>):
required: falseDescriptive text that you can provide to help with identification of the current policy store.
- On success, responds with
CreatePolicyStoreOutputwith field(s):policy_store_id(String):The unique ID of the new policy store.
arn(String):The Amazon Resource Name (ARN) of the new policy store.
created_date(DateTime):The date and time the policy store was originally created.
last_updated_date(DateTime):The date and time the policy store was last updated.
- On failure, responds with
SdkError<CreatePolicyStoreError>
source§impl Client
impl Client
sourcepub fn create_policy_template(&self) -> CreatePolicyTemplateFluentBuilder
pub fn create_policy_template(&self) -> CreatePolicyTemplateFluentBuilder
Constructs a fluent builder for the CreatePolicyTemplate operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):
required: falseSpecifies a unique, case-sensitive ID that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a UUID type of value..
If you don’t provide this value, then Amazon Web Services generates a random one for you.
If you retry the operation with the same
ClientToken, but with different parameters, the retry fails with anIdempotentParameterMismatcherror.policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueThe ID of the policy store in which to create the policy template.
description(impl Into<String>)/set_description(Option<String>):
required: falseSpecifies a description for the policy template.
statement(impl Into<String>)/set_statement(Option<String>):
required: trueSpecifies the content that you want to use for the new policy template, written in the Cedar policy language.
- On success, responds with
CreatePolicyTemplateOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the policy template.
policy_template_id(String):The unique ID of the new policy template.
created_date(DateTime):The date and time the policy template was originally created.
last_updated_date(DateTime):The date and time the policy template was most recently updated.
- On failure, responds with
SdkError<CreatePolicyTemplateError>
source§impl Client
impl Client
sourcepub fn delete_identity_source(&self) -> DeleteIdentitySourceFluentBuilder
pub fn delete_identity_source(&self) -> DeleteIdentitySourceFluentBuilder
Constructs a fluent builder for the DeleteIdentitySource operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the identity source that you want to delete.
identity_source_id(impl Into<String>)/set_identity_source_id(Option<String>):
required: trueSpecifies the ID of the identity source that you want to delete.
- On success, responds with
DeleteIdentitySourceOutput - On failure, responds with
SdkError<DeleteIdentitySourceError>
source§impl Client
impl Client
sourcepub fn delete_policy(&self) -> DeletePolicyFluentBuilder
pub fn delete_policy(&self) -> DeletePolicyFluentBuilder
Constructs a fluent builder for the DeletePolicy operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy that you want to delete.
policy_id(impl Into<String>)/set_policy_id(Option<String>):
required: trueSpecifies the ID of the policy that you want to delete.
- On success, responds with
DeletePolicyOutput - On failure, responds with
SdkError<DeletePolicyError>
source§impl Client
impl Client
sourcepub fn delete_policy_store(&self) -> DeletePolicyStoreFluentBuilder
pub fn delete_policy_store(&self) -> DeletePolicyStoreFluentBuilder
Constructs a fluent builder for the DeletePolicyStore operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that you want to delete.
- On success, responds with
DeletePolicyStoreOutput - On failure, responds with
SdkError<DeletePolicyStoreError>
source§impl Client
impl Client
sourcepub fn delete_policy_template(&self) -> DeletePolicyTemplateFluentBuilder
pub fn delete_policy_template(&self) -> DeletePolicyTemplateFluentBuilder
Constructs a fluent builder for the DeletePolicyTemplate operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy template that you want to delete.
policy_template_id(impl Into<String>)/set_policy_template_id(Option<String>):
required: trueSpecifies the ID of the policy template that you want to delete.
- On success, responds with
DeletePolicyTemplateOutput - On failure, responds with
SdkError<DeletePolicyTemplateError>
source§impl Client
impl Client
sourcepub fn get_identity_source(&self) -> GetIdentitySourceFluentBuilder
pub fn get_identity_source(&self) -> GetIdentitySourceFluentBuilder
Constructs a fluent builder for the GetIdentitySource operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the identity source you want information about.
identity_source_id(impl Into<String>)/set_identity_source_id(Option<String>):
required: trueSpecifies the ID of the identity source you want information about.
- On success, responds with
GetIdentitySourceOutputwith field(s):created_date(DateTime):The date and time that the identity source was originally created.
details(Option<IdentitySourceDetails>):A structure that describes the configuration of the identity source.
identity_source_id(String):The ID of the identity source.
last_updated_date(DateTime):The date and time that the identity source was most recently updated.
policy_store_id(String):The ID of the policy store that contains the identity source.
principal_entity_type(String):The data type of principals generated for identities authenticated by this identity source.
- On failure, responds with
SdkError<GetIdentitySourceError>
source§impl Client
impl Client
sourcepub fn get_policy(&self) -> GetPolicyFluentBuilder
pub fn get_policy(&self) -> GetPolicyFluentBuilder
Constructs a fluent builder for the GetPolicy operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy that you want information about.
policy_id(impl Into<String>)/set_policy_id(Option<String>):
required: trueSpecifies the ID of the policy you want information about.
- On success, responds with
GetPolicyOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the policy that you want information about.
policy_id(String):The unique ID of the policy that you want information about.
policy_type(PolicyType):The type of the policy.
principal(Option<EntityIdentifier>):The principal specified in the policy’s scope. This element isn’t included in the response when
Principalisn’t present in the policy content.resource(Option<EntityIdentifier>):The resource specified in the policy’s scope. This element isn’t included in the response when
Resourceisn’t present in the policy content.definition(Option<PolicyDefinitionDetail>):The definition of the requested policy.
created_date(DateTime):The date and time that the policy was originally created.
last_updated_date(DateTime):The date and time that the policy was last updated.
- On failure, responds with
SdkError<GetPolicyError>
source§impl Client
impl Client
sourcepub fn get_policy_store(&self) -> GetPolicyStoreFluentBuilder
pub fn get_policy_store(&self) -> GetPolicyStoreFluentBuilder
Constructs a fluent builder for the GetPolicyStore operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that you want information about.
- On success, responds with
GetPolicyStoreOutputwith field(s):policy_store_id(String):The ID of the policy store;
arn(String):The Amazon Resource Name (ARN) of the policy store.
validation_settings(Option<ValidationSettings>):The current validation settings for the policy store.
created_date(DateTime):The date and time that the policy store was originally created.
last_updated_date(DateTime):The date and time that the policy store was last updated.
description(Option<String>):Descriptive text that you can provide to help with identification of the current policy store.
- On failure, responds with
SdkError<GetPolicyStoreError>
source§impl Client
impl Client
sourcepub fn get_policy_template(&self) -> GetPolicyTemplateFluentBuilder
pub fn get_policy_template(&self) -> GetPolicyTemplateFluentBuilder
Constructs a fluent builder for the GetPolicyTemplate operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy template that you want information about.
policy_template_id(impl Into<String>)/set_policy_template_id(Option<String>):
required: trueSpecifies the ID of the policy template that you want information about.
- On success, responds with
GetPolicyTemplateOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the policy template.
policy_template_id(String):The ID of the policy template.
description(Option<String>):The description of the policy template.
statement(String):The content of the body of the policy template written in the Cedar policy language.
created_date(DateTime):The date and time that the policy template was originally created.
last_updated_date(DateTime):The date and time that the policy template was most recently updated.
- On failure, responds with
SdkError<GetPolicyTemplateError>
source§impl Client
impl Client
sourcepub fn get_schema(&self) -> GetSchemaFluentBuilder
pub fn get_schema(&self) -> GetSchemaFluentBuilder
Constructs a fluent builder for the GetSchema operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the schema.
- On success, responds with
GetSchemaOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the schema.
schema(String):The body of the schema, written in Cedar schema JSON.
created_date(DateTime):The date and time that the schema was originally created.
last_updated_date(DateTime):The date and time that the schema was most recently updated.
namespaces(Option<Vec::<String>>):The namespaces of the entities referenced by this schema.
- On failure, responds with
SdkError<GetSchemaError>
source§impl Client
impl Client
Constructs a fluent builder for the IsAuthorized operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store. Policies in this policy store will be used to make an authorization decision for the input.
principal(EntityIdentifier)/set_principal(Option<EntityIdentifier>):
required: falseSpecifies the principal for which the authorization decision is to be made.
action(ActionIdentifier)/set_action(Option<ActionIdentifier>):
required: falseSpecifies the requested action to be authorized. For example, is the principal authorized to perform this action on the resource?
resource(EntityIdentifier)/set_resource(Option<EntityIdentifier>):
required: falseSpecifies the resource for which the authorization decision is to be made.
context(ContextDefinition)/set_context(Option<ContextDefinition>):
required: falseSpecifies additional context that can be used to make more granular authorization decisions.
entities(EntitiesDefinition)/set_entities(Option<EntitiesDefinition>):
required: falseSpecifies the list of resources and principals and their associated attributes that Verified Permissions can examine when evaluating the policies.
You can include only principal and resource entities in this parameter; you can’t include actions. You must specify actions in the schema.
- On success, responds with
IsAuthorizedOutputwith field(s):decision(Decision):An authorization decision that indicates if the authorization request should be allowed or denied.
determining_policies(Vec::<DeterminingPolicyItem>):The list of determining policies used to make the authorization decision. For example, if there are two matching policies, where one is a forbid and the other is a permit, then the forbid policy will be the determining policy. In the case of multiple matching permit policies then there would be multiple determining policies. In the case that no policies match, and hence the response is DENY, there would be no determining policies.
errors(Vec::<EvaluationErrorItem>):Errors that occurred while making an authorization decision, for example, a policy references an Entity or entity Attribute that does not exist in the slice.
- On failure, responds with
SdkError<IsAuthorizedError>
source§impl Client
impl Client
Constructs a fluent builder for the IsAuthorizedWithToken operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store. Policies in this policy store will be used to make an authorization decision for the input.
identity_token(impl Into<String>)/set_identity_token(Option<String>):
required: falseSpecifies an identity token for the principal to be authorized. This token is provided to you by the identity provider (IdP) associated with the specified identity source. You must specify either an
AccessTokenor anIdentityToken, or both.access_token(impl Into<String>)/set_access_token(Option<String>):
required: falseSpecifies an access token for the principal to be authorized. This token is provided to you by the identity provider (IdP) associated with the specified identity source. You must specify either an
AccessToken, or anIdentityToken, or both.action(ActionIdentifier)/set_action(Option<ActionIdentifier>):
required: falseSpecifies the requested action to be authorized. Is the specified principal authorized to perform this action on the specified resource.
resource(EntityIdentifier)/set_resource(Option<EntityIdentifier>):
required: falseSpecifies the resource for which the authorization decision is made. For example, is the principal allowed to perform the action on the resource?
context(ContextDefinition)/set_context(Option<ContextDefinition>):
required: falseSpecifies additional context that can be used to make more granular authorization decisions.
entities(EntitiesDefinition)/set_entities(Option<EntitiesDefinition>):
required: falseSpecifies the list of resources and their associated attributes that Verified Permissions can examine when evaluating the policies.
You can include only resource and action entities in this parameter; you can’t include principals.
-
The
IsAuthorizedWithTokenoperation takes principal attributes from only theidentityTokenoraccessTokenpassed to the operation. -
For action entities, you can include only their
IdentifierandEntityType.
-
- On success, responds with
IsAuthorizedWithTokenOutputwith field(s):decision(Decision):An authorization decision that indicates if the authorization request should be allowed or denied.
determining_policies(Vec::<DeterminingPolicyItem>):The list of determining policies used to make the authorization decision. For example, if there are multiple matching policies, where at least one is a forbid policy, then because forbid always overrides permit the forbid policies are the determining policies. If all matching policies are permit policies, then those policies are the determining policies. When no policies match and the response is the default DENY, there are no determining policies.
errors(Vec::<EvaluationErrorItem>):Errors that occurred while making an authorization decision. For example, a policy references an entity or entity attribute that does not exist in the slice.
- On failure, responds with
SdkError<IsAuthorizedWithTokenError>
source§impl Client
impl Client
sourcepub fn list_identity_sources(&self) -> ListIdentitySourcesFluentBuilder
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>):
required: trueSpecifies 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>):
required: falseSpecifies that you want to receive the next page of results. Valid only if you received a
NextTokenresponse 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’sNextTokenresponse to request the next page of results.max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the
NextTokenresponse element is returned with a value (not null). Include the specified value as theNextTokenrequest 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 checkNextTokenafter 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>>):
required: falseSpecifies characteristics of an identity source that you can use to limit the output to matching identity sources.
- On success, responds with
ListIdentitySourcesOutputwith 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
NextTokenrequest parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until theNextTokenresponse element comes back asnull. This indicates that this is the last page of results.identity_sources(Vec::<IdentitySourceItem>):The list of identity sources stored in the specified policy store.
- On failure, responds with
SdkError<ListIdentitySourcesError>
source§impl Client
impl Client
sourcepub fn list_policies(&self) -> ListPoliciesFluentBuilder
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>):
required: trueSpecifies the ID of the policy store you want to list policies from.
next_token(impl Into<String>)/set_next_token(Option<String>):
required: falseSpecifies that you want to receive the next page of results. Valid only if you received a
NextTokenresponse 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’sNextTokenresponse to request the next page of results.max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the
NextTokenresponse element is returned with a value (not null). Include the specified value as theNextTokenrequest 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 checkNextTokenafter 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>):
required: falseSpecifies 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
ListPoliciesOutputwith 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
NextTokenrequest parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until theNextTokenresponse element comes back asnull. This indicates that this is the last page of results.policies(Vec::<PolicyItem>):Lists all policies that are available in the specified policy store.
- On failure, responds with
SdkError<ListPoliciesError>
source§impl Client
impl Client
sourcepub fn list_policy_stores(&self) -> ListPolicyStoresFluentBuilder
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>):
required: falseSpecifies that you want to receive the next page of results. Valid only if you received a
NextTokenresponse 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’sNextTokenresponse to request the next page of results.max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the
NextTokenresponse element is returned with a value (not null). Include the specified value as theNextTokenrequest 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 checkNextTokenafter 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
ListPolicyStoresOutputwith 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
NextTokenrequest parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until theNextTokenresponse element comes back asnull. This indicates that this is the last page of results.policy_stores(Vec::<PolicyStoreItem>):The list of policy stores in the account.
- On failure, responds with
SdkError<ListPolicyStoresError>
source§impl Client
impl Client
sourcepub fn list_policy_templates(&self) -> ListPolicyTemplatesFluentBuilder
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>):
required: trueSpecifies 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>):
required: falseSpecifies that you want to receive the next page of results. Valid only if you received a
NextTokenresponse 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’sNextTokenresponse to request the next page of results.max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the total number of results that you want included in each response. If additional items exist beyond the number you specify, the
NextTokenresponse element is returned with a value (not null). Include the specified value as theNextTokenrequest 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 checkNextTokenafter 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
ListPolicyTemplatesOutputwith 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
NextTokenrequest parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until theNextTokenresponse element comes back asnull. This indicates that this is the last page of results.policy_templates(Vec::<PolicyTemplateItem>):The list of the policy templates in the specified policy store.
- On failure, responds with
SdkError<ListPolicyTemplatesError>
source§impl Client
impl Client
sourcepub fn put_schema(&self) -> PutSchemaFluentBuilder
pub fn put_schema(&self) -> PutSchemaFluentBuilder
Constructs a fluent builder for the PutSchema operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store in which to place the schema.
definition(SchemaDefinition)/set_definition(Option<SchemaDefinition>):
required: trueSpecifies the definition of the schema to be stored. The schema definition must be written in Cedar schema JSON.
- On success, responds with
PutSchemaOutputwith field(s):policy_store_id(String):The unique ID of the policy store that contains the schema.
namespaces(Vec::<String>):Identifies the namespaces of the entities referenced by this schema.
created_date(DateTime):The date and time that the schema was originally created.
last_updated_date(DateTime):The date and time that the schema was last updated.
- On failure, responds with
SdkError<PutSchemaError>
source§impl Client
impl Client
sourcepub fn update_identity_source(&self) -> UpdateIdentitySourceFluentBuilder
pub fn update_identity_source(&self) -> UpdateIdentitySourceFluentBuilder
Constructs a fluent builder for the UpdateIdentitySource operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the identity source that you want to update.
identity_source_id(impl Into<String>)/set_identity_source_id(Option<String>):
required: trueSpecifies the ID of the identity source that you want to update.
update_configuration(UpdateConfiguration)/set_update_configuration(Option<UpdateConfiguration>):
required: trueSpecifies the details required to communicate with the identity provider (IdP) associated with this identity source.
At this time, the only valid member of this structure is a Amazon Cognito user pool configuration.
You must specify a
userPoolArn, and optionally, aClientId.principal_entity_type(impl Into<String>)/set_principal_entity_type(Option<String>):
required: falseSpecifies the data type of principals generated for identities authenticated by the identity source.
- On success, responds with
UpdateIdentitySourceOutputwith field(s):created_date(DateTime):The date and time that the updated identity source was originally created.
identity_source_id(String):The ID of the updated identity source.
last_updated_date(DateTime):The date and time that the identity source was most recently updated.
policy_store_id(String):The ID of the policy store that contains the updated identity source.
- On failure, responds with
SdkError<UpdateIdentitySourceError>
source§impl Client
impl Client
sourcepub fn update_policy(&self) -> UpdatePolicyFluentBuilder
pub fn update_policy(&self) -> UpdatePolicyFluentBuilder
Constructs a fluent builder for the UpdatePolicy operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy that you want to update.
policy_id(impl Into<String>)/set_policy_id(Option<String>):
required: trueSpecifies the ID of the policy that you want to update. To find this value, you can use ListPolicies.
definition(UpdatePolicyDefinition)/set_definition(Option<UpdatePolicyDefinition>):
required: trueSpecifies the updated policy content that you want to replace on the specified policy. The content must be valid Cedar policy language text.
You can change only the following elements from the policy definition:
-
The
actionreferenced by the policy. -
Any conditional clauses, such as
whenorunlessclauses.
You can’t change the following elements:
-
Changing from
statictotemplateLinked. -
Changing the effect of the policy from
permitorforbid. -
The
principalreferenced by the policy. -
The
resourcereferenced by the policy.
-
- On success, responds with
UpdatePolicyOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the policy that was updated.
policy_id(String):The ID of the policy that was updated.
policy_type(PolicyType):The type of the policy that was updated.
principal(Option<EntityIdentifier>):The principal specified in the policy’s scope. This element isn’t included in the response when
Principalisn’t present in the policy content.resource(Option<EntityIdentifier>):The resource specified in the policy’s scope. This element isn’t included in the response when
Resourceisn’t present in the policy content.created_date(DateTime):The date and time that the policy was originally created.
last_updated_date(DateTime):The date and time that the policy was most recently updated.
- On failure, responds with
SdkError<UpdatePolicyError>
source§impl Client
impl Client
sourcepub fn update_policy_store(&self) -> UpdatePolicyStoreFluentBuilder
pub fn update_policy_store(&self) -> UpdatePolicyStoreFluentBuilder
Constructs a fluent builder for the UpdatePolicyStore operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that you want to update
validation_settings(ValidationSettings)/set_validation_settings(Option<ValidationSettings>):
required: trueA structure that defines the validation settings that want to enable for the policy store.
description(impl Into<String>)/set_description(Option<String>):
required: falseDescriptive text that you can provide to help with identification of the current policy store.
- On success, responds with
UpdatePolicyStoreOutputwith field(s):policy_store_id(String):The ID of the updated policy store.
arn(String):The Amazon Resource Name (ARN) of the updated policy store.
created_date(DateTime):The date and time that the policy store was originally created.
last_updated_date(DateTime):The date and time that the policy store was most recently updated.
- On failure, responds with
SdkError<UpdatePolicyStoreError>
source§impl Client
impl Client
sourcepub fn update_policy_template(&self) -> UpdatePolicyTemplateFluentBuilder
pub fn update_policy_template(&self) -> UpdatePolicyTemplateFluentBuilder
Constructs a fluent builder for the UpdatePolicyTemplate operation.
- The fluent builder is configurable:
policy_store_id(impl Into<String>)/set_policy_store_id(Option<String>):
required: trueSpecifies the ID of the policy store that contains the policy template that you want to update.
policy_template_id(impl Into<String>)/set_policy_template_id(Option<String>):
required: trueSpecifies the ID of the policy template that you want to update.
description(impl Into<String>)/set_description(Option<String>):
required: falseSpecifies a new description to apply to the policy template.
statement(impl Into<String>)/set_statement(Option<String>):
required: trueSpecifies new statement content written in Cedar policy language to replace the current body of the policy template.
You can change only the following elements of the policy body:
-
The
actionreferenced by the policy template. -
Any conditional clauses, such as
whenorunlessclauses.
You can’t change the following elements:
-
The effect (
permitorforbid) of the policy template. -
The
principalreferenced by the policy template. -
The
resourcereferenced by the policy template.
-
- On success, responds with
UpdatePolicyTemplateOutputwith field(s):policy_store_id(String):The ID of the policy store that contains the updated policy template.
policy_template_id(String):The ID of the updated policy template.
created_date(DateTime):The date and time that the policy template was originally created.
last_updated_date(DateTime):The date and time that the policy template was most recently updated.
- On failure, responds with
SdkError<UpdatePolicyTemplateError>
source§impl Client
impl Client
sourcepub fn from_conf(conf: Config) -> Self
pub fn from_conf(conf: Config) -> Self
Creates a new client from the service Config.
§Panics
This method will panic in the following cases:
- Retries or timeouts are enabled without a
sleep_implconfigured. - Identity caching is enabled without a
sleep_implandtime_sourceconfigured. - No
behavior_versionis provided.
The panic message for each of these will have instructions on how to resolve them.
source§impl Client
impl Client
sourcepub fn new(sdk_config: &SdkConfig) -> Self
pub fn new(sdk_config: &SdkConfig) -> Self
Creates a new client from an SDK Config.
§Panics
- This method will panic if the
sdk_configis missing an async sleep implementation. If you experience this panic, set thesleep_implon the Config passed into this function to fix it. - This method will panic if the
sdk_configis missing an HTTP connector. If you experience this panic, set thehttp_connectoron the Config passed into this function to fix it. - This method will panic if no
BehaviorVersionis provided. If you experience this panic, setbehavior_versionon the Config or enable thebehavior-version-latestCargo feature.