/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the verifiedpermissions-2021-12-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.VerifiedPermissions.Model;
namespace Amazon.VerifiedPermissions
{
///
/// Interface for accessing VerifiedPermissions
///
/// Amazon Verified Permissions is a permissions management service from Amazon Web Services.
/// You can use Verified Permissions to manage permissions for your application, and authorize
/// user access based on those permissions. Using Verified Permissions, application developers
/// can grant access based on information about the users, resources, and requested actions.
/// You can also evaluate additional information like group membership, attributes of
/// the resources, and session context, such as time of request and IP addresses. Verified
/// Permissions manages these permissions by letting you create and store authorization
/// policies for your applications, such as consumer-facing web sites and enterprise business
/// systems.
///
///
///
/// Verified Permissions uses Cedar as the policy language to express your permission
/// requirements. Cedar supports both role-based access control (RBAC) and attribute-based
/// access control (ABAC) authorization models.
///
///
///
/// For more information about configuring, administering, and using Amazon Verified Permissions
/// in your applications, see the Amazon
/// Verified Permissions User Guide.
///
///
///
/// For more information about the Cedar policy language, see the Cedar
/// Policy Language Guide.
///
///
///
/// When you write Cedar policies that reference principals, resources and actions, you
/// can define the unique identifiers used for each of those elements. We strongly recommend
/// that you follow these best practices:
///
/// -
///
/// Use values like universally unique identifiers (UUIDs) for all principal and resource
/// identifiers.
///
///
///
/// For example, if user
jane
leaves the company, and you later let someone
/// else use the name jane
, then that new user automatically gets access
/// to everything granted by policies that still reference User::"jane"
.
/// Cedar can’t distinguish between the new user and the old. This applies to both principal
/// and resource identifiers. Always use identifiers that are guaranteed unique and never
/// reused to ensure that you don’t unintentionally grant access because of the presence
/// of an old identifier in a policy.
///
///
///
/// Where you use a UUID for an entity, we recommend that you follow it with the // comment
/// specifier and the ‘friendly’ name of your entity. This helps to make your policies
/// easier to understand. For example: principal == User::"a1b2c3d4-e5f6-a1b2-c3d4-EXAMPLE11111",
/// // alice
///
/// -
///
/// Do not include personally identifying, confidential, or sensitive information
/// as part of the unique identifier for your principals or resources. These identifiers
/// are included in log entries shared in CloudTrail trails.
///
///
///
/// Several operations return structures that appear similar, but have different purposes.
/// As new functionality is added to the product, the structure used in a parameter of
/// one operation might need to change in a way that wouldn't make sense for the same
/// parameter in a different operation. To help you understand the purpose of each, the
/// following naming convention is used for the structures:
///
/// -
///
/// Parameter type structures that end in
Detail
are used in Get
/// operations.
///
/// -
///
/// Parameter type structures that end in
Item
are used in List
/// operations.
///
/// -
///
/// Parameter type structures that use neither suffix are used in the mutating (create
/// and update) operations.
///
///
///
public partial interface IAmazonVerifiedPermissions : IAmazonService, IDisposable
{
#if BCL45 || AWS_ASYNC_ENUMERABLES_API
///
/// Paginators for the service
///
IVerifiedPermissionsPaginatorFactory Paginators { get; }
#endif
#region CreateIdentitySource
///
/// Creates a reference to an Amazon Cognito user pool as an external identity provider
/// (IdP).
///
///
///
/// After you create an identity source, you can use the identities provided by the IdP
/// as proxies for the principal in authorization queries that use the IsAuthorizedWithToken
/// operation. These identities take the form of tokens that contain claims about the
/// user, such as IDs, attributes and group memberships. Amazon Cognito provides both
/// identity tokens and access tokens, and Verified Permissions can use either or both.
/// Any combination of identity and access tokens results in the same Cedar principal.
/// Verified Permissions automatically translates the information about the identities
/// into the standard Cedar attributes that can be evaluated by your policies. Because
/// the Amazon Cognito identity and access tokens can contain different information, the
/// tokens you choose to use determine which principal attributes are available to access
/// when evaluating Cedar policies.
///
///
///
/// If you delete a Amazon Cognito user pool or user, tokens from that deleted pool or
/// that deleted user continue to be usable until they expire.
///
///
///
/// To reference a user from this identity source in your Cedar policies, use the following
/// syntax.
///
///
///
/// IdentityType::"<CognitoUserPoolIdentifier>|<CognitoClientId>
///
///
///
/// Where IdentityType
is the string that you provide to the PrincipalEntityType
/// parameter for this operation. The CognitoUserPoolId
and CognitoClientId
/// are defined by the Amazon Cognito user pool.
///
///
///
/// Container for the necessary parameters to execute the CreateIdentitySource service method.
///
/// The response from the CreateIdentitySource service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for CreateIdentitySource Operation
CreateIdentitySourceResponse CreateIdentitySource(CreateIdentitySourceRequest request);
///
/// Initiates the asynchronous execution of the CreateIdentitySource operation.
///
///
/// Container for the necessary parameters to execute the CreateIdentitySource operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateIdentitySource
/// operation.
/// REST API Reference for CreateIdentitySource Operation
IAsyncResult BeginCreateIdentitySource(CreateIdentitySourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the CreateIdentitySource operation.
///
///
/// The IAsyncResult returned by the call to BeginCreateIdentitySource.
///
/// Returns a CreateIdentitySourceResult from VerifiedPermissions.
/// REST API Reference for CreateIdentitySource Operation
CreateIdentitySourceResponse EndCreateIdentitySource(IAsyncResult asyncResult);
#endregion
#region CreatePolicy
///
/// Creates a Cedar policy and saves it in the specified policy store. You can create
/// either a static policy or a policy linked to a policy template.
///
/// -
///
/// To create a static policy, provide the Cedar policy text in the
StaticPolicy
/// section of the PolicyDefinition
.
///
/// -
///
/// To create a policy that is dynamically linked to a policy template, specify the policy
/// template ID and the principal and resource to associate with this policy in the
templateLinked
/// section of the PolicyDefinition
. If the policy template is ever updated,
/// any policies linked to the policy template automatically use the updated template.
///
///
///
/// Creating a policy causes it to be validated against the schema in the policy store.
/// If the policy doesn't pass validation, the operation fails and the policy isn't stored.
///
///
///
/// Container for the necessary parameters to execute the CreatePolicy service method.
///
/// The response from the CreatePolicy service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for CreatePolicy Operation
CreatePolicyResponse CreatePolicy(CreatePolicyRequest request);
///
/// Initiates the asynchronous execution of the CreatePolicy operation.
///
///
/// Container for the necessary parameters to execute the CreatePolicy operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreatePolicy
/// operation.
/// REST API Reference for CreatePolicy Operation
IAsyncResult BeginCreatePolicy(CreatePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the CreatePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginCreatePolicy.
///
/// Returns a CreatePolicyResult from VerifiedPermissions.
/// REST API Reference for CreatePolicy Operation
CreatePolicyResponse EndCreatePolicy(IAsyncResult asyncResult);
#endregion
#region CreatePolicyStore
///
/// Creates a policy store. A policy store is a container for policy resources.
///
///
///
/// Although Cedar supports
/// multiple namespaces, Verified Permissions currently supports only one namespace
/// per policy store.
///
///
///
/// Container for the necessary parameters to execute the CreatePolicyStore service method.
///
/// The response from the CreatePolicyStore service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for CreatePolicyStore Operation
CreatePolicyStoreResponse CreatePolicyStore(CreatePolicyStoreRequest request);
///
/// Initiates the asynchronous execution of the CreatePolicyStore operation.
///
///
/// Container for the necessary parameters to execute the CreatePolicyStore operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreatePolicyStore
/// operation.
/// REST API Reference for CreatePolicyStore Operation
IAsyncResult BeginCreatePolicyStore(CreatePolicyStoreRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the CreatePolicyStore operation.
///
///
/// The IAsyncResult returned by the call to BeginCreatePolicyStore.
///
/// Returns a CreatePolicyStoreResult from VerifiedPermissions.
/// REST API Reference for CreatePolicyStore Operation
CreatePolicyStoreResponse EndCreatePolicyStore(IAsyncResult asyncResult);
#endregion
#region CreatePolicyTemplate
///
/// Creates a policy template. A template can use placeholders for the principal and resource.
/// A template must be instantiated into a policy by associating it with specific principals
/// and resources to use for the placeholders. That instantiated policy can then be considered
/// in authorization decisions. The instantiated policy works identically to any other
/// policy, except that it is dynamically linked to the template. If the template changes,
/// then any policies that are linked to that template are immediately updated as well.
///
/// Container for the necessary parameters to execute the CreatePolicyTemplate service method.
///
/// The response from the CreatePolicyTemplate service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for CreatePolicyTemplate Operation
CreatePolicyTemplateResponse CreatePolicyTemplate(CreatePolicyTemplateRequest request);
///
/// Initiates the asynchronous execution of the CreatePolicyTemplate operation.
///
///
/// Container for the necessary parameters to execute the CreatePolicyTemplate operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreatePolicyTemplate
/// operation.
/// REST API Reference for CreatePolicyTemplate Operation
IAsyncResult BeginCreatePolicyTemplate(CreatePolicyTemplateRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the CreatePolicyTemplate operation.
///
///
/// The IAsyncResult returned by the call to BeginCreatePolicyTemplate.
///
/// Returns a CreatePolicyTemplateResult from VerifiedPermissions.
/// REST API Reference for CreatePolicyTemplate Operation
CreatePolicyTemplateResponse EndCreatePolicyTemplate(IAsyncResult asyncResult);
#endregion
#region DeleteIdentitySource
///
/// Deletes an identity source that references an identity provider (IdP) such as Amazon
/// Cognito. After you delete the identity source, you can no longer use tokens for identities
/// from that identity source to represent principals in authorization queries made using
/// IsAuthorizedWithToken.
/// operations.
///
/// Container for the necessary parameters to execute the DeleteIdentitySource service method.
///
/// The response from the DeleteIdentitySource service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for DeleteIdentitySource Operation
DeleteIdentitySourceResponse DeleteIdentitySource(DeleteIdentitySourceRequest request);
///
/// Initiates the asynchronous execution of the DeleteIdentitySource operation.
///
///
/// Container for the necessary parameters to execute the DeleteIdentitySource operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteIdentitySource
/// operation.
/// REST API Reference for DeleteIdentitySource Operation
IAsyncResult BeginDeleteIdentitySource(DeleteIdentitySourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeleteIdentitySource operation.
///
///
/// The IAsyncResult returned by the call to BeginDeleteIdentitySource.
///
/// Returns a DeleteIdentitySourceResult from VerifiedPermissions.
/// REST API Reference for DeleteIdentitySource Operation
DeleteIdentitySourceResponse EndDeleteIdentitySource(IAsyncResult asyncResult);
#endregion
#region DeletePolicy
///
/// Deletes the specified policy from the policy store.
///
///
///
/// This operation is idempotent; if you specify a policy that doesn't exist, the request
/// response returns a successful HTTP 200
status code.
///
///
/// Container for the necessary parameters to execute the DeletePolicy service method.
///
/// The response from the DeletePolicy service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for DeletePolicy Operation
DeletePolicyResponse DeletePolicy(DeletePolicyRequest request);
///
/// Initiates the asynchronous execution of the DeletePolicy operation.
///
///
/// Container for the necessary parameters to execute the DeletePolicy operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeletePolicy
/// operation.
/// REST API Reference for DeletePolicy Operation
IAsyncResult BeginDeletePolicy(DeletePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeletePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginDeletePolicy.
///
/// Returns a DeletePolicyResult from VerifiedPermissions.
/// REST API Reference for DeletePolicy Operation
DeletePolicyResponse EndDeletePolicy(IAsyncResult asyncResult);
#endregion
#region DeletePolicyStore
///
/// Deletes the specified policy store.
///
///
///
/// This operation is idempotent. If you specify a policy store that does not exist, the
/// request response will still return a successful HTTP 200 status code.
///
///
/// Container for the necessary parameters to execute the DeletePolicyStore service method.
///
/// The response from the DeletePolicyStore service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for DeletePolicyStore Operation
DeletePolicyStoreResponse DeletePolicyStore(DeletePolicyStoreRequest request);
///
/// Initiates the asynchronous execution of the DeletePolicyStore operation.
///
///
/// Container for the necessary parameters to execute the DeletePolicyStore operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeletePolicyStore
/// operation.
/// REST API Reference for DeletePolicyStore Operation
IAsyncResult BeginDeletePolicyStore(DeletePolicyStoreRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeletePolicyStore operation.
///
///
/// The IAsyncResult returned by the call to BeginDeletePolicyStore.
///
/// Returns a DeletePolicyStoreResult from VerifiedPermissions.
/// REST API Reference for DeletePolicyStore Operation
DeletePolicyStoreResponse EndDeletePolicyStore(IAsyncResult asyncResult);
#endregion
#region DeletePolicyTemplate
///
/// Deletes the specified policy template from the policy store.
///
///
///
/// This operation also deletes any policies that were created from the specified policy
/// template. Those policies are immediately removed from all future API responses, and
/// are asynchronously deleted from the policy store.
///
///
///
/// Container for the necessary parameters to execute the DeletePolicyTemplate service method.
///
/// The response from the DeletePolicyTemplate service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for DeletePolicyTemplate Operation
DeletePolicyTemplateResponse DeletePolicyTemplate(DeletePolicyTemplateRequest request);
///
/// Initiates the asynchronous execution of the DeletePolicyTemplate operation.
///
///
/// Container for the necessary parameters to execute the DeletePolicyTemplate operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeletePolicyTemplate
/// operation.
/// REST API Reference for DeletePolicyTemplate Operation
IAsyncResult BeginDeletePolicyTemplate(DeletePolicyTemplateRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the DeletePolicyTemplate operation.
///
///
/// The IAsyncResult returned by the call to BeginDeletePolicyTemplate.
///
/// Returns a DeletePolicyTemplateResult from VerifiedPermissions.
/// REST API Reference for DeletePolicyTemplate Operation
DeletePolicyTemplateResponse EndDeletePolicyTemplate(IAsyncResult asyncResult);
#endregion
#region GetIdentitySource
///
/// Retrieves the details about the specified identity source.
///
/// Container for the necessary parameters to execute the GetIdentitySource service method.
///
/// The response from the GetIdentitySource service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for GetIdentitySource Operation
GetIdentitySourceResponse GetIdentitySource(GetIdentitySourceRequest request);
///
/// Initiates the asynchronous execution of the GetIdentitySource operation.
///
///
/// Container for the necessary parameters to execute the GetIdentitySource operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetIdentitySource
/// operation.
/// REST API Reference for GetIdentitySource Operation
IAsyncResult BeginGetIdentitySource(GetIdentitySourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetIdentitySource operation.
///
///
/// The IAsyncResult returned by the call to BeginGetIdentitySource.
///
/// Returns a GetIdentitySourceResult from VerifiedPermissions.
/// REST API Reference for GetIdentitySource Operation
GetIdentitySourceResponse EndGetIdentitySource(IAsyncResult asyncResult);
#endregion
#region GetPolicy
///
/// Retrieves information about the specified policy.
///
/// Container for the necessary parameters to execute the GetPolicy service method.
///
/// The response from the GetPolicy service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for GetPolicy Operation
GetPolicyResponse GetPolicy(GetPolicyRequest request);
///
/// Initiates the asynchronous execution of the GetPolicy operation.
///
///
/// Container for the necessary parameters to execute the GetPolicy operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetPolicy
/// operation.
/// REST API Reference for GetPolicy Operation
IAsyncResult BeginGetPolicy(GetPolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetPolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginGetPolicy.
///
/// Returns a GetPolicyResult from VerifiedPermissions.
/// REST API Reference for GetPolicy Operation
GetPolicyResponse EndGetPolicy(IAsyncResult asyncResult);
#endregion
#region GetPolicyStore
///
/// Retrieves details about a policy store.
///
/// Container for the necessary parameters to execute the GetPolicyStore service method.
///
/// The response from the GetPolicyStore service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for GetPolicyStore Operation
GetPolicyStoreResponse GetPolicyStore(GetPolicyStoreRequest request);
///
/// Initiates the asynchronous execution of the GetPolicyStore operation.
///
///
/// Container for the necessary parameters to execute the GetPolicyStore operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetPolicyStore
/// operation.
/// REST API Reference for GetPolicyStore Operation
IAsyncResult BeginGetPolicyStore(GetPolicyStoreRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetPolicyStore operation.
///
///
/// The IAsyncResult returned by the call to BeginGetPolicyStore.
///
/// Returns a GetPolicyStoreResult from VerifiedPermissions.
/// REST API Reference for GetPolicyStore Operation
GetPolicyStoreResponse EndGetPolicyStore(IAsyncResult asyncResult);
#endregion
#region GetPolicyTemplate
///
/// Retrieve the details for the specified policy template in the specified policy store.
///
/// Container for the necessary parameters to execute the GetPolicyTemplate service method.
///
/// The response from the GetPolicyTemplate service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for GetPolicyTemplate Operation
GetPolicyTemplateResponse GetPolicyTemplate(GetPolicyTemplateRequest request);
///
/// Initiates the asynchronous execution of the GetPolicyTemplate operation.
///
///
/// Container for the necessary parameters to execute the GetPolicyTemplate operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetPolicyTemplate
/// operation.
/// REST API Reference for GetPolicyTemplate Operation
IAsyncResult BeginGetPolicyTemplate(GetPolicyTemplateRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetPolicyTemplate operation.
///
///
/// The IAsyncResult returned by the call to BeginGetPolicyTemplate.
///
/// Returns a GetPolicyTemplateResult from VerifiedPermissions.
/// REST API Reference for GetPolicyTemplate Operation
GetPolicyTemplateResponse EndGetPolicyTemplate(IAsyncResult asyncResult);
#endregion
#region GetSchema
///
/// Retrieve the details for the specified schema in the specified policy store.
///
/// Container for the necessary parameters to execute the GetSchema service method.
///
/// The response from the GetSchema service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for GetSchema Operation
GetSchemaResponse GetSchema(GetSchemaRequest request);
///
/// Initiates the asynchronous execution of the GetSchema operation.
///
///
/// Container for the necessary parameters to execute the GetSchema operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetSchema
/// operation.
/// REST API Reference for GetSchema Operation
IAsyncResult BeginGetSchema(GetSchemaRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the GetSchema operation.
///
///
/// The IAsyncResult returned by the call to BeginGetSchema.
///
/// Returns a GetSchemaResult from VerifiedPermissions.
/// REST API Reference for GetSchema Operation
GetSchemaResponse EndGetSchema(IAsyncResult asyncResult);
#endregion
#region IsAuthorized
///
/// Makes an authorization decision about a service request described in the parameters.
/// The information in the parameters can also define additional context that Verified
/// Permissions can include in the evaluation. The request is evaluated against all matching
/// policies in the specified policy store. The result of the decision is either Allow
/// or Deny
, along with a list of the policies that resulted in the decision.
///
/// Container for the necessary parameters to execute the IsAuthorized service method.
///
/// The response from the IsAuthorized service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for IsAuthorized Operation
IsAuthorizedResponse IsAuthorized(IsAuthorizedRequest request);
///
/// Initiates the asynchronous execution of the IsAuthorized operation.
///
///
/// Container for the necessary parameters to execute the IsAuthorized operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndIsAuthorized
/// operation.
/// REST API Reference for IsAuthorized Operation
IAsyncResult BeginIsAuthorized(IsAuthorizedRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the IsAuthorized operation.
///
///
/// The IAsyncResult returned by the call to BeginIsAuthorized.
///
/// Returns a IsAuthorizedResult from VerifiedPermissions.
/// REST API Reference for IsAuthorized Operation
IsAuthorizedResponse EndIsAuthorized(IAsyncResult asyncResult);
#endregion
#region IsAuthorizedWithToken
///
/// Makes an authorization decision about a service request described in the parameters.
/// The principal in this request comes from an external identity source. The information
/// in the parameters can also define additional context that Verified Permissions can
/// include in the evaluation. The request is evaluated against all matching policies
/// in the specified policy store. The result of the decision is either Allow
/// or Deny
, along with a list of the policies that resulted in the decision.
///
///
///
/// If you delete a Amazon Cognito user pool or user, tokens from that deleted pool or
/// that deleted user continue to be usable until they expire.
///
///
///
/// Container for the necessary parameters to execute the IsAuthorizedWithToken service method.
///
/// The response from the IsAuthorizedWithToken service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for IsAuthorizedWithToken Operation
IsAuthorizedWithTokenResponse IsAuthorizedWithToken(IsAuthorizedWithTokenRequest request);
///
/// Initiates the asynchronous execution of the IsAuthorizedWithToken operation.
///
///
/// Container for the necessary parameters to execute the IsAuthorizedWithToken operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndIsAuthorizedWithToken
/// operation.
/// REST API Reference for IsAuthorizedWithToken Operation
IAsyncResult BeginIsAuthorizedWithToken(IsAuthorizedWithTokenRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the IsAuthorizedWithToken operation.
///
///
/// The IAsyncResult returned by the call to BeginIsAuthorizedWithToken.
///
/// Returns a IsAuthorizedWithTokenResult from VerifiedPermissions.
/// REST API Reference for IsAuthorizedWithToken Operation
IsAuthorizedWithTokenResponse EndIsAuthorizedWithToken(IAsyncResult asyncResult);
#endregion
#region ListIdentitySources
///
/// Returns a paginated list of all of the identity sources defined in the specified policy
/// store.
///
/// Container for the necessary parameters to execute the ListIdentitySources service method.
///
/// The response from the ListIdentitySources service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for ListIdentitySources Operation
ListIdentitySourcesResponse ListIdentitySources(ListIdentitySourcesRequest request);
///
/// Initiates the asynchronous execution of the ListIdentitySources operation.
///
///
/// Container for the necessary parameters to execute the ListIdentitySources operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListIdentitySources
/// operation.
/// REST API Reference for ListIdentitySources Operation
IAsyncResult BeginListIdentitySources(ListIdentitySourcesRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListIdentitySources operation.
///
///
/// The IAsyncResult returned by the call to BeginListIdentitySources.
///
/// Returns a ListIdentitySourcesResult from VerifiedPermissions.
/// REST API Reference for ListIdentitySources Operation
ListIdentitySourcesResponse EndListIdentitySources(IAsyncResult asyncResult);
#endregion
#region ListPolicies
///
/// Returns a paginated list of all policies stored in the specified policy store.
///
/// Container for the necessary parameters to execute the ListPolicies service method.
///
/// The response from the ListPolicies service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for ListPolicies Operation
ListPoliciesResponse ListPolicies(ListPoliciesRequest request);
///
/// Initiates the asynchronous execution of the ListPolicies operation.
///
///
/// Container for the necessary parameters to execute the ListPolicies operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListPolicies
/// operation.
/// REST API Reference for ListPolicies Operation
IAsyncResult BeginListPolicies(ListPoliciesRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListPolicies operation.
///
///
/// The IAsyncResult returned by the call to BeginListPolicies.
///
/// Returns a ListPoliciesResult from VerifiedPermissions.
/// REST API Reference for ListPolicies Operation
ListPoliciesResponse EndListPolicies(IAsyncResult asyncResult);
#endregion
#region ListPolicyStores
///
/// Returns a paginated list of all policy stores in the calling Amazon Web Services account.
///
/// Container for the necessary parameters to execute the ListPolicyStores service method.
///
/// The response from the ListPolicyStores service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for ListPolicyStores Operation
ListPolicyStoresResponse ListPolicyStores(ListPolicyStoresRequest request);
///
/// Initiates the asynchronous execution of the ListPolicyStores operation.
///
///
/// Container for the necessary parameters to execute the ListPolicyStores operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListPolicyStores
/// operation.
/// REST API Reference for ListPolicyStores Operation
IAsyncResult BeginListPolicyStores(ListPolicyStoresRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListPolicyStores operation.
///
///
/// The IAsyncResult returned by the call to BeginListPolicyStores.
///
/// Returns a ListPolicyStoresResult from VerifiedPermissions.
/// REST API Reference for ListPolicyStores Operation
ListPolicyStoresResponse EndListPolicyStores(IAsyncResult asyncResult);
#endregion
#region ListPolicyTemplates
///
/// Returns a paginated list of all policy templates in the specified policy store.
///
/// Container for the necessary parameters to execute the ListPolicyTemplates service method.
///
/// The response from the ListPolicyTemplates service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for ListPolicyTemplates Operation
ListPolicyTemplatesResponse ListPolicyTemplates(ListPolicyTemplatesRequest request);
///
/// Initiates the asynchronous execution of the ListPolicyTemplates operation.
///
///
/// Container for the necessary parameters to execute the ListPolicyTemplates operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListPolicyTemplates
/// operation.
/// REST API Reference for ListPolicyTemplates Operation
IAsyncResult BeginListPolicyTemplates(ListPolicyTemplatesRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the ListPolicyTemplates operation.
///
///
/// The IAsyncResult returned by the call to BeginListPolicyTemplates.
///
/// Returns a ListPolicyTemplatesResult from VerifiedPermissions.
/// REST API Reference for ListPolicyTemplates Operation
ListPolicyTemplatesResponse EndListPolicyTemplates(IAsyncResult asyncResult);
#endregion
#region PutSchema
///
/// Creates or updates the policy schema in the specified policy store. The schema is
/// used to validate any Cedar policies and policy templates submitted to the policy store.
/// Any changes to the schema validate only policies and templates submitted after the
/// schema change. Existing policies and templates are not re-evaluated against the changed
/// schema. If you later update a policy, then it is evaluated against the new schema
/// at that time.
///
/// Container for the necessary parameters to execute the PutSchema service method.
///
/// The response from the PutSchema service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for PutSchema Operation
PutSchemaResponse PutSchema(PutSchemaRequest request);
///
/// Initiates the asynchronous execution of the PutSchema operation.
///
///
/// Container for the necessary parameters to execute the PutSchema operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutSchema
/// operation.
/// REST API Reference for PutSchema Operation
IAsyncResult BeginPutSchema(PutSchemaRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the PutSchema operation.
///
///
/// The IAsyncResult returned by the call to BeginPutSchema.
///
/// Returns a PutSchemaResult from VerifiedPermissions.
/// REST API Reference for PutSchema Operation
PutSchemaResponse EndPutSchema(IAsyncResult asyncResult);
#endregion
#region UpdateIdentitySource
///
/// Updates the specified identity source to use a new identity provider (IdP) source,
/// or to change the mapping of identities from the IdP to a different principal entity
/// type.
///
/// Container for the necessary parameters to execute the UpdateIdentitySource service method.
///
/// The response from the UpdateIdentitySource service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for UpdateIdentitySource Operation
UpdateIdentitySourceResponse UpdateIdentitySource(UpdateIdentitySourceRequest request);
///
/// Initiates the asynchronous execution of the UpdateIdentitySource operation.
///
///
/// Container for the necessary parameters to execute the UpdateIdentitySource operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateIdentitySource
/// operation.
/// REST API Reference for UpdateIdentitySource Operation
IAsyncResult BeginUpdateIdentitySource(UpdateIdentitySourceRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdateIdentitySource operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdateIdentitySource.
///
/// Returns a UpdateIdentitySourceResult from VerifiedPermissions.
/// REST API Reference for UpdateIdentitySource Operation
UpdateIdentitySourceResponse EndUpdateIdentitySource(IAsyncResult asyncResult);
#endregion
#region UpdatePolicy
///
/// Modifies a Cedar static policy in the specified policy store. You can change only
/// certain elements of the UpdatePolicyDefinition
/// parameter. You can directly update only static policies. To change a template-linked
/// policy, you must update the template instead, using UpdatePolicyTemplate.
///
///
///
/// If policy validation is enabled in the policy store, then updating a static policy
/// causes Verified Permissions to validate the policy against the schema in the policy
/// store. If the updated static policy doesn't pass validation, the operation fails and
/// the update isn't stored.
///
///
///
/// Container for the necessary parameters to execute the UpdatePolicy service method.
///
/// The response from the UpdatePolicy service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it would cause a service quota to be exceeded.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for UpdatePolicy Operation
UpdatePolicyResponse UpdatePolicy(UpdatePolicyRequest request);
///
/// Initiates the asynchronous execution of the UpdatePolicy operation.
///
///
/// Container for the necessary parameters to execute the UpdatePolicy operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdatePolicy
/// operation.
/// REST API Reference for UpdatePolicy Operation
IAsyncResult BeginUpdatePolicy(UpdatePolicyRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdatePolicy operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdatePolicy.
///
/// Returns a UpdatePolicyResult from VerifiedPermissions.
/// REST API Reference for UpdatePolicy Operation
UpdatePolicyResponse EndUpdatePolicy(IAsyncResult asyncResult);
#endregion
#region UpdatePolicyStore
///
/// Modifies the validation setting for a policy store.
///
/// Container for the necessary parameters to execute the UpdatePolicyStore service method.
///
/// The response from the UpdatePolicyStore service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for UpdatePolicyStore Operation
UpdatePolicyStoreResponse UpdatePolicyStore(UpdatePolicyStoreRequest request);
///
/// Initiates the asynchronous execution of the UpdatePolicyStore operation.
///
///
/// Container for the necessary parameters to execute the UpdatePolicyStore operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdatePolicyStore
/// operation.
/// REST API Reference for UpdatePolicyStore Operation
IAsyncResult BeginUpdatePolicyStore(UpdatePolicyStoreRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdatePolicyStore operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdatePolicyStore.
///
/// Returns a UpdatePolicyStoreResult from VerifiedPermissions.
/// REST API Reference for UpdatePolicyStore Operation
UpdatePolicyStoreResponse EndUpdatePolicyStore(IAsyncResult asyncResult);
#endregion
#region UpdatePolicyTemplate
///
/// Updates the specified policy template. You can update only the description and the
/// some elements of the policyBody.
///
///
///
///
/// Changes you make to the policy template content are immediately reflected in authorization
/// decisions that involve all template-linked policies instantiated from this template.
///
///
///
/// Container for the necessary parameters to execute the UpdatePolicyTemplate service method.
///
/// The response from the UpdatePolicyTemplate service method, as returned by VerifiedPermissions.
///
/// You don't have sufficient access to perform this action.
///
///
/// The request failed because another request to modify a resource occurred at the same.
///
///
/// The request failed because of an internal error. Try your request again later
///
///
/// The request failed because it references a resource that doesn't exist.
///
///
/// The request failed because it exceeded a throttling quota.
///
///
/// The request failed because one or more input parameters don't satisfy their constraint
/// requirements. The output is provided as a list of fields and a reason for each field
/// that isn't valid.
///
///
///
/// The possible reasons include the following:
///
/// -
///
/// UnrecognizedEntityType
///
///
///
/// The policy includes an entity type that isn't found in the schema.
///
///
-
///
/// UnrecognizedActionId
///
///
///
/// The policy includes an action id that isn't found in the schema.
///
///
-
///
/// InvalidActionApplication
///
///
///
/// The policy includes an action that, according to the schema, doesn't support the specified
/// principal and resource.
///
///
-
///
/// UnexpectedType
///
///
///
/// The policy included an operand that isn't a valid type for the specified operation.
///
///
-
///
/// IncompatibleTypes
///
///
///
/// The types of elements included in a
set
, or the types of expressions
/// used in an if...then...else
clause aren't compatible in this context.
///
/// -
///
/// MissingAttribute
///
///
///
/// The policy attempts to access a record or entity attribute that isn't specified in
/// the schema. Test for the existence of the attribute first before attempting to access
/// its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// UnsafeOptionalAttributeAccess
///
///
///
/// The policy attempts to access a record or entity attribute that is optional and isn't
/// guaranteed to be present. Test for the existence of the attribute first before attempting
/// to access its value. For more information, see the has
/// (presence of attribute test) operator in the Cedar Policy Language Guide.
///
///
-
///
/// ImpossiblePolicy
///
///
///
/// Cedar has determined that a policy condition always evaluates to false. If the policy
/// is always false, it can never apply to any query, and so it can never affect an authorization
/// decision.
///
///
-
///
/// WrongNumberArguments
///
///
///
/// The policy references an extension type with the wrong number of arguments.
///
///
-
///
/// FunctionArgumentValidationError
///
///
///
/// Cedar couldn't parse the argument passed to an extension type. For example, a string
/// that is to be parsed as an IPv4 address can contain only digits and the period character.
///
///
///
/// REST API Reference for UpdatePolicyTemplate Operation
UpdatePolicyTemplateResponse UpdatePolicyTemplate(UpdatePolicyTemplateRequest request);
///
/// Initiates the asynchronous execution of the UpdatePolicyTemplate operation.
///
///
/// Container for the necessary parameters to execute the UpdatePolicyTemplate operation on AmazonVerifiedPermissionsClient.
/// An AsyncCallback delegate that is invoked when the operation completes.
/// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
/// procedure using the AsyncState property.
///
/// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdatePolicyTemplate
/// operation.
/// REST API Reference for UpdatePolicyTemplate Operation
IAsyncResult BeginUpdatePolicyTemplate(UpdatePolicyTemplateRequest request, AsyncCallback callback, object state);
///
/// Finishes the asynchronous execution of the UpdatePolicyTemplate operation.
///
///
/// The IAsyncResult returned by the call to BeginUpdatePolicyTemplate.
///
/// Returns a UpdatePolicyTemplateResult from VerifiedPermissions.
/// REST API Reference for UpdatePolicyTemplate Operation
UpdatePolicyTemplateResponse EndUpdatePolicyTemplate(IAsyncResult asyncResult);
#endregion
}
}