Skip to content

disassociate_access_policy async

disassociate_access_policy(
    cluster_name: String,
    principal_arn: String,
    policy_arn: String,
    *,
    config_overrides: Optional[AsyncEKSClientConfig] = None,
) -> DisassociateAccessPolicyResponse

Disassociates an access policy from an access entry.

Parameters:

  • cluster_name (String) –

    The name of your cluster.

  • principal_arn (String) –

    The ARN of the IAM principal for the AccessEntry.

  • policy_arn (String) –

    The ARN of the policy to disassociate from the access entry. For a list of associated policies ARNs, use ListAssociatedAccessPolicies.

Raises:

  • InvalidRequestException –

    The request is invalid given the state of the cluster. Check the state of the cluster and the associated operations.

  • ResourceNotFoundException –

    The specified resource could not be found. You can view your available clusters with ListClusters. You can view your available managed node groups with ListNodegroups. Amazon EKS clusters and node groups are Amazon Web Services Region specific.

  • ServerException –

    These errors are usually caused by a server-side issue.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_eks/_services/async_eks.py
async def disassociate_access_policy(
    self,
    cluster_name: "capo_eks.types.string.String",
    principal_arn: "capo_eks.types.string.String",
    policy_arn: "capo_eks.types.string.String",
    *,
    config_overrides: Optional[AsyncEKSClientConfig] = None,
) -> "capo_eks.types.disassociate_access_policy_response.DisassociateAccessPolicyResponse":
    """<p>Disassociates an access policy from an access entry.</p>

    Args:
        cluster_name: <p>The name of your cluster.</p>
        principal_arn: <p>The ARN of the IAM principal for the <code>AccessEntry</code>.</p>
        policy_arn: <p>The ARN of the policy to disassociate from the access entry. For a list of associated policies ARNs, use <code>ListAssociatedAccessPolicies</code>.</p>

    Raises:
        capo_eks.errors.invalid_request_exception.InvalidRequestException: <p>The request is invalid given the state of the cluster. Check the state of the cluster and the associated operations.</p>
        capo_eks.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource could not be found. You can view your available clusters with <code>ListClusters</code>. You can view your available managed node groups with <code>ListNodegroups</code>. Amazon EKS clusters and node groups are Amazon Web Services Region specific.</p>
        capo_eks.errors.server_exception.ServerException: <p>These errors are usually caused by a server-side issue.</p>
        capo_eks.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_eks.types.disassociate_access_policy_request.DisassociateAccessPolicyRequest]",
    ) -> AsyncOperationResponse[
        "capo_eks.types.disassociate_access_policy_response.DisassociateAccessPolicyResponse"
    ]:
        import capo_eks._operations.aws_wesley_frontend.disassociate_access_policy

        (
            output,
            http_response,
        ) = await capo_eks._operations.aws_wesley_frontend.disassociate_access_policy.async_disassociate_access_policy(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DisassociateAccessPolicy")
    )
    input_: capo_eks.types.disassociate_access_policy_request.DisassociateAccessPolicyRequest = {
        "cluster_name": cluster_name,
        "principal_arn": principal_arn,
        "policy_arn": policy_arn,
    }

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output