class_docstr: Class to derive in order to implement concrete auth managers.
  
  Auth managers are responsible for any user management related operation such as login, logout, authz, ...
  
  :param appbuilder: the flask app builder
docstr: Return the username associated to the user in session.
code: def get_user_name(self) -> str:
      """Return the username associated to the user in session."""
      user = self.get_user()
      if not user:
          self.log.error(
              "Calling 'get_user_name()' but the user is not signed in."
          )
          raise AirflowException("The user must be signed in.")
      return user.get_name()
  
imports: from __future__ import annotations
  from abc import abstractmethod
  from functools import cached_property
  from typing import TYPE_CHECKING, Container, Literal, Sequence
  from sqlalchemy import select
  from airflow.auth.managers.models.resource_details import DagDetails
  from airflow.exceptions import AirflowException
  from airflow.models import DagModel
  from airflow.utils.log.logging_mixin import LoggingMixin
  from airflow.utils.session import NEW_SESSION, provide_session
label_desc: Use image node_id 4 for calling the BaseAuthManager obj's underlying member method code with example usage: obj.get_user_name() and returns: user