### Apache Airflow version

Airflow  2.5.1

### What happened

Connection password values appearing in the "Task Instance Details" -> "Task Attributes" -> environment field.

We are setting environment variables for the docker_operator with values from the password field in a connection. 

The values from the password field are masked in the "Rendered Template" section and in the logs but it's showing the values in the "environment" field under Task Instance Details.


### What you think should happen instead

These password values should be masked like they are in the "Rendered Template" and logs.

### How to reproduce


Via this DAG, can run off any image.

Create a connection called "DATABASE_CONFIG" with a password in the password field.

Run this DAg and then check its Task Instance Details.


DAG Code:

```

from airflow import DAG
from docker.types import Mount
from airflow.providers.docker.operators.docker import DockerOperator
from datetime import timedelta
from airflow.models import Variable
from airflow.hooks.base_hook import BaseHook
import pendulum
import json

# Amount of times to retry job on failure
retries = 0

environment_config = {
    "DB_WRITE_PASSWORD": BaseHook.get_connection("DATABASE_CONFIG").password,
}

# Setup default args for the job
default_args = {
    "owner": "airflow",
    "start_date": pendulum.datetime(2023, 1, 1, tz="Australia/Sydney"),
    "retries": retries,
}

# Create the DAG
dag = DAG(
    "test_dag",  # DAG ID
    default_args=default_args,
    schedule_interval="* * * * *",  
    catchup=False,
)

# # Create the DAG object
with dag as dag:
    docker_task = DockerOperator(
        task_id="task",
        image="<image>",
        execution_timeout=timedelta(minutes=2),
        environment=environment_config,
        command="<command>",
        api_version="auto",
        docker_url="tcp://docker.for.mac.localhost:2375",
    )
    
```
Rendered Template is good:
![image](https://user-images.githubusercontent.com/41356007/224928676-4c1de3d9-90dc-40dc-bb27-aa10661537ba.png)


In "Task Instance Details"
![image](https://user-images.githubusercontent.com/41356007/224928510-0dc4fc40-f675-49fd-a299-2c2f42feef5b.png)



### Operating System

centOS Linux and MAC

### Versions of Apache Airflow Providers

_No response_

### Deployment

Docker-Compose

### Deployment details

Running on a docker via the airflow docker-compose

### Anything else

_No response_

### Are you willing to submit PR?

- [x] 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 list of columns to show in the Add form.
        This dynamically calculates additional fields from providers and add
        them to the backing list. This calculation is done exactly once (by
        checking we're referencing the class-level variable instead of the
        instance-level), and only after we enter the request context (to skip
        superfuluous checks done by Flask-Appbuilder on startup).
        """
        if self._add_columns is type(self)._add_columns and has_request_context():
            self._add_columns = [*self._add_columns, *(k for k, _ in self._iter_extra_field_names())]
        return self._add_columns
    @property
    def edit_columns(self) -> list[str]:
        """A list of columns to show in the Edit form.
        This dynamically calculates additional fields from providers and add
        them to the backing list. This calculation is done exactly once (by
        checking we're referencing the class-level variable instead of the
        instance-level), and only after we enter the request context (to skip
        superfuluous checks done by Flask-Appbuilder on startup).
        """
        if self._edit_columns is type(self)._edit_columns and has_request_context():
            self._edit_columns = [*self._edit_columns, *(k for k, _ in self._iter_extra_field_names())]
        return self._edit_columns
    @action("muldelete", "Delete", "Are you sure you want to delete selected records?", single=False)
    @auth.has_access(
        [
            (permissions.ACTION_CAN_EDIT, permissions.RESOURCE_DAG),
        ]
    )
    def action_muldelete(self, items):