**Apache Airflow version**:

1.10.12

**Kubernetes version (if you are using kubernetes)** (use `kubectl version`):

n/a

**Environment**:

- **Cloud provider or hardware configuration**:
Amazon MWAA

- **OS** (e.g. from /etc/os-release):
Amazon Linux (latest)

- **Kernel** (e.g. `uname -a`):
n/a

- **Install tools**:
n/a

**What happened**:

If an unreachable secrets.backend is specified in airflow.cfg the web server crashes

**What you expected to happen**:

An invalid secrets backend should be ignored with a warning, and the system should default back to the metadatabase secrets

**How to reproduce it**:

In an environment without access to AWS Secrets Manager, add the following to your airflow.cfg:

```
[secrets]
backend = airflow.contrib.secrets.aws_secrets_manager.SecretsManagerBackend
```
**or** an environment without access to SSM specifiy:

```
[secrets]
backend = airflow.contrib.secrets.aws_systems_manager.SystemsManagerParameterStoreBackend
```

Reference: https://airflow.apache.org/docs/apache-airflow/1.10.12/howto/use-alternative-secrets-backend.html#aws-ssm-parameter-store-secrets-backend
tests/core/test_configuration.py
with pytest.warns(FutureWarning):
            with unittest.mock.patch.dict('os.environ', AIRFLOW__CORE__HOSTNAME_CALLABLE='socket:getfqdn'):
                test_conf = make_config()
                assert test_conf.get('core', 'hostname_callable') == 'socket.getfqdn'
        with reset_warning_registry():
            with warnings.catch_warnings(record=True) as warning:
                with unittest.mock.patch.dict(
                    'os.environ',
                    AIRFLOW__CORE__HOSTNAME_CALLABLE='CarrierPigeon',
                ):
                    test_conf = make_config()
                    assert test_conf.get('core', 'hostname_callable') == 'CarrierPigeon'
                    assert [] == warning
    def test_deprecated_funcs(self):
        for func in [
            'load_test_config',
            'get',
            'getboolean',
            'getfloat',
            'getint',
            'has_option',
            'remove_option',
            'as_dict',
            'set',
        ]:
            with mock.patch(f'airflow.configuration.conf.{func}') as mock_method:
                with pytest.warns(DeprecationWarning):
                    getattr(configuration, func)()
                mock_method.assert_called_once()
    def test_command_from_env(self):