Apache Airflow 
Version : 1.10.12

Using HiveServer2Hook with default connection ( assuming that auth_mechanism: PLAIN, but also set as extra to double make sure ) 

The password edit test is left empty, but from hook/ connections code and logs it seems that is not:

from airflow.hooks.base_hook import BaseHook
connection = BaseHook.get_connection('hiveserver2_hadoop_one_umlaut_default')
print(connection.password)

[2020-10-05 09:04:35,396] {base_task_runner.py:113} INFO - Job 20527: Subtask UMLAUT_CT_MASTER_TABLE_LOAD [2020-10-05 09:04:35,395] {base_hook.py:89} INFO - Using connection to: id: hiveserver2_hadoop_one_umlaut_default. Host: 146.11.85.131, Port: 10000, Schema: umlaut, Login: hdfs, **Password: XXXXXXXX**, extra: XXXXXXXX

def log_info(self):
        return ("id: {}. Host: {}, Port: {}, Schema: {}, "
                "Login: {}, Password: {}, extra: {}".
                format(self.conn_id,
                       self.host,
                       self.port,
                       self.schema,
                       self.login,
                       "XXXXXXXX" if self.password else None,
                       "XXXXXXXX" if self.extra_dejson else None))

from latest PyHive, looks like password is not None

https://github.com/dropbox/PyHive/blob/master/pyhive/hive.py

![image](https://user-images.githubusercontent.com/10634077/95061218-49a34f80-0736-11eb-9380-98638884ade3.png)

airflow/providers/apache/hive/hooks/hive.py
sasl_client = sasl.Client()
                sasl_client.setAttr("host", conn.host)
                sasl_client.setAttr("service", kerberos_service_name)
                sasl_client.init()
                return sasl_client
            from thrift_sasl import TSaslClientTransport
            transport = TSaslClientTransport(sasl_factory, "GSSAPI", conn_socket)
        else:
            transport = TTransport.TBufferedTransport(conn_socket)
        protocol = TBinaryProtocol.TBinaryProtocol(transport)
        return hmsclient.HMSClient(iprot=protocol)
    def _find_valid_server(self) -> Any:
        conns = self.get_connections(self.conn_id)
        for conn in conns:
            host_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            self.log.info("Trying to connect to %s:%s", conn.host, conn.port)
            if host_socket.connect_ex((conn.host, conn.port)) == 0:
                self.log.info("Connected to %s:%s", conn.host, conn.port)
                host_socket.close()
                return conn
            else:
                self.log.error("Could not connect to %s:%s", conn.host, conn.port)
        return None
    def get_conn(self) -> Any: