code: def _init_session(self):
          
          session = requests.Session()
          session.headers = {'User-Agent': self.user_agent,
                             'Accept': 'application/json'}
          if self.systemid is not None:
              session.headers.update({'systemid': self.systemid})
          if self.authmethod == "BASIC":
              session.auth = (self.username, self.password)
          elif self.authmethod == "CERT":
              cert = rhsmCertificate.certpath()
              key = rhsmCertificate.keypath()
              if rhsmCertificate.exists():
                  session.cert = (cert, key)
              else:
                  logger.error('ERROR: Certificates not found.')
          session.verify = self.cert_verify
          session.proxies = self.proxies
          session.trust_env = False
          if self.proxy_auth:
              # HACKY
              try:
                  # Need to make a request that will fail to get proxies set up
                  net_logger.info("GET %s", self.base_url)
                  session.request(
                      "GET", self.base_url, timeout=self.config.http_timeout)
              except requests.ConnectionError:
                  pass
              # Major hack, requests/urllib3 does not make access to
              # proxy_headers easy
              proxy_mgr = session.adapters['https://'].proxy_manager[self.proxies['https']]
              auth_map = {'Proxy-Authorization': self.proxy_auth}
              proxy_mgr.proxy_headers = auth_map
              proxy_mgr.connection_pool_kw['_proxy_headers'] = auth_map
              conns = proxy_mgr.pools._container
              for conn in conns:
                  connection = conns[conn]
                  connection.proxy_headers = auth_map
          return session
docs: Set up the session, auth is handled here