Skip to content

delete_resource_policy

delete_resource_policy(
    resource_arn: ResourceArn,
    *,
    config_overrides: Optional[BedrockAgentClientConfig] = None,
    expected_revision_id: Optional[RevisionId] = None,
) -> DeleteResourcePolicyResponse

Removes the resource policy associated with a knowledge base. After deletion, other AWS accounts can no longer access the knowledge base using cross-account permissions.

Parameters:

  • resource_arn (ResourceArn) –

    The Amazon Resource Name (ARN) of the knowledge base to remove the resource policy from.

  • expected_revision_id (Optional[RevisionId], default: None ) –

    The expected revision identifier of the resource policy. Use this to prevent conflicts when multiple users update the same policy concurrently.

Raises:

Source code in docs_src/capo_bedrock_agent/_services/bedrock_agent.py
def delete_resource_policy(
    self,
    resource_arn: "capo_bedrock_agent.types.resource_arn.ResourceArn",
    *,
    config_overrides: Optional[BedrockAgentClientConfig] = None,
    expected_revision_id: Optional[
        "capo_bedrock_agent.types.revision_id.RevisionId"
    ] = None,
) -> "capo_bedrock_agent.types.delete_resource_policy_response.DeleteResourcePolicyResponse":
    """<p>Removes the resource policy associated with a knowledge base. After deletion, other AWS accounts can no longer access the knowledge base using cross-account permissions.</p>

    Args:
        resource_arn: <p>The Amazon Resource Name (ARN) of the knowledge base to remove the resource policy from.</p>
        expected_revision_id: <p>The expected revision identifier of the resource policy. Use this to prevent conflicts when multiple users update the same policy concurrently.</p>

    Raises:
        capo_bedrock_agent.errors.access_denied_exception.AccessDeniedException: <p>The request is denied because of missing access permissions.</p>
        capo_bedrock_agent.errors.conflict_exception.ConflictException: <p>There was a conflict performing an operation.</p>
        capo_bedrock_agent.errors.internal_server_exception.InternalServerException: <p>An internal server error occurred. Retry your request.</p>
        capo_bedrock_agent.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource Amazon Resource Name (ARN) was not found. Check the Amazon Resource Name (ARN) and try your request again.</p>
        capo_bedrock_agent.errors.throttling_exception.ThrottlingException: <p>The number of requests exceeds the limit. Resubmit your request later.</p>
        capo_bedrock_agent.errors.validation_exception.ValidationException: <p>Input validation failed. Check your request parameters and retry the request.</p>
        capo_bedrock_agent.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_bedrock_agent.types.delete_resource_policy_request.DeleteResourcePolicyRequest]",
    ) -> OperationResponse[
        "capo_bedrock_agent.types.delete_resource_policy_response.DeleteResourcePolicyResponse"
    ]:
        import capo_bedrock_agent._operations.amazon_bedrock_agent_build_time_lambda.delete_resource_policy

        output, http_response = (
            capo_bedrock_agent._operations.amazon_bedrock_agent_build_time_lambda.delete_resource_policy.delete_resource_policy(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteResourcePolicy")
    )
    input_: capo_bedrock_agent.types.delete_resource_policy_request.DeleteResourcePolicyRequest = {
        "resource_arn": resource_arn
    }
    if expected_revision_id is not None:
        input_["expected_revision_id"] = expected_revision_id

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output