### Description

The current length limit for the `login` parameter in an HTTP connection is 500 characters. It'd be nice if this was 5000 characters like the `password` parameter.

### Use case/motivation

We've run into an issue with an API we need to integrate with. It uses basic HTTP authentication, and both username and password are about 900 characters long each. We don't have any control over this API, so we cannot change the authentication method, nor the length of these usernames and passwords.

### Related issues

_No response_

### Are you willing to submit a 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)

"""
    Check nullable conn_type column in Connection table.
    :param session:  session of the sqlalchemy
    """
    from airflow.models.connection import Connection
    try:
        n_nulls = session.scalars(select(Connection.conn_id).where(Connection.conn_type.is_(None))).all()
    except (exc.OperationalError, exc.ProgrammingError, exc.InternalError):
        
        session.rollback()
        return
    if n_nulls:
        yield (
            "The conn_type column in the connection "
            "table must contain content.\n"
            "Make sure you don't have null "
            "in the conn_type column.\n"
            f"Null conn_type conn_id: {n_nulls}"
        )
def _format_dangling_error(source_table, target_table, invalid_count, reason):
    noun = "row" if invalid_count == 1 else "rows"
    return (
        f"The {source_table} table has {invalid_count} {noun} {reason}, which "
        f"is invalid. We could not move them out of the way because the "
        f"{target_table} table already exists in your database. Please either "
        f"drop the {target_table} table, or manually delete the invalid rows "
        f"from the {source_table} table."
    )
def check_run_id_null(session: Session) -> Iterable[str]: