// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ModifyClientVpnEndpointAuthorizationPolicy`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`client_vpn_endpoint_id(impl Into<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::client_vpn_endpoint_id) / [`set_client_vpn_endpoint_id(Option<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_client_vpn_endpoint_id):<br>required: **true**<br><p>The ID of the Client VPN endpoint.</p><br>
/// - [`policy_document(impl Into<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::policy_document) / [`set_policy_document(Option<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_policy_document):<br>required: **false**<br><p>The authorization policy document, written in the Cedar policy language. This parameter is required when you create the authorization policy for a Client VPN endpoint that does not already have one.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_description):<br>required: **false**<br><p>A brief description of the authorization policy.</p><br>
/// - [`shadow_mode(ClientVpnAuthorizationPolicyShadowMode)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::shadow_mode) / [`set_shadow_mode(Option<ClientVpnAuthorizationPolicyShadowMode>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_shadow_mode):<br>required: **false**<br><p>Specifies whether the authorization policy is evaluated in shadow mode. Possible values include:</p> <ul> <li> <p><code>enabled</code> - The authorization policy is evaluated and the results are logged, but access is not enforced.</p></li> <li> <p><code>disabled</code> - The authorization policy is enforced.</p></li> </ul> <p>The default value is <code>disabled</code>.</p><br>
/// - [`client_token(impl Into<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_client_token):<br>required: **false**<br><p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html">Ensuring idempotency</a>.</p><br>
/// - [`dry_run(bool)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
/// - On success, responds with [`ModifyClientVpnEndpointAuthorizationPolicyOutput`](crate::operation::modify_client_vpn_endpoint_authorization_policy::ModifyClientVpnEndpointAuthorizationPolicyOutput) with field(s):
/// - [`status(Option<ClientVpnAuthorizationPolicyStatus>)`](crate::operation::modify_client_vpn_endpoint_authorization_policy::ModifyClientVpnEndpointAuthorizationPolicyOutput::status): <p>The current state of the authorization policy.</p>
/// - On failure, responds with [`SdkError<ModifyClientVpnEndpointAuthorizationPolicyError>`](crate::operation::modify_client_vpn_endpoint_authorization_policy::ModifyClientVpnEndpointAuthorizationPolicyError)
pub fn modify_client_vpn_endpoint_authorization_policy(
&self,
) -> crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder {
crate::operation::modify_client_vpn_endpoint_authorization_policy::builders::ModifyClientVpnEndpointAuthorizationPolicyFluentBuilder::new(
self.handle.clone(),
)
}
}