def signed_session(self, session=None):
from sfctl.config import (aad_metadata, aad_cache)<EOL>if session:<EOL><INDENT>session = super(AdalAuthentication, self).signed_session(session)<EOL><DEDENT>else:<EOL><INDENT>session = super(AdalAuthentication, self).signed_session()<EOL><DEDENT>if self.no_verify:<EOL><INDENT>session.verify = False<EOL><DEDENT>authority_uri, cluster_id, client_id = aad_metadata()<EOL>existing_token, existing_cache = aad_cache()<EOL>context = adal.AuthenticationContext(authority_uri,<EOL>cache=existing_cache)<EOL>new_token = context.acquire_token(cluster_id,<EOL>existing_token['<STR_LIT>'], client_id)<EOL>header = "<STR_LIT>".format("<STR_LIT>", new_token['<STR_LIT>'])<EOL>session.headers['<STR_LIT>'] = header<EOL>return session<EOL>
Create requests session with AAD auth headers

        :rtype: requests.Session.