### Apache Airflow version

Other Airflow 2 version (please specify below)

### What happened

I was changing the roles to remove all delete access. But as soon as I remove permission "Can Delete on Task Instances" clear task takes to a blank page.

Shouldn't clear task access work without Delete access?

### What you think should happen instead

Can Delete Task Instance should not affect clear task access.

### How to reproduce

Copy the Op role and remove all Can Delete and assign that role to a user.
That user will not be able to clear task instance now.
add "Can Delete on Task Instances" permission to the role and user will now have access to clear task instances page.

### Operating System

Redhat 8

### Versions of Apache Airflow Providers

2.6.1 

### Deployment

Docker-Compose

### Deployment details

airflow 2.6.1 running on Docker with postgres 13 and pgbouncer.

### Anything else

_No response_

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

"""
        A restful endpoint that returns external links for a given Operator.
        It queries the operator that sent the request for the links it wishes
        to provide for a given external link name.
        API: GET
        Args: dag_id: The id of the dag containing the task in question
              task_id: The id of the task in question
              execution_date: The date of execution of the task
              link_name: The name of the link reference to find the actual URL for
        Returns:
            200: {url: <url of link>, error: None} - returned when there was no problem
                finding the URL
            404: {url: None, error: <error message>} - returned when the operator does
                not return a URL
        """
        dag_id = request.args.get("dag_id")
        task_id = request.args.get("task_id")
        map_index = request.args.get("map_index", -1, type=int)
        execution_date = request.args.get("execution_date")
        dttm = _safe_parse_datetime(execution_date)
        dag = get_airflow_app().dag_bag.get_dag(dag_id)
        if not dag or task_id not in dag.task_ids:
            return {"url": None, "error": f"can't find dag {dag} or task_id {task_id}"}, 404
        task: AbstractOperator = dag.get_task(task_id)
        link_name = request.args.get("link_name")