'Login and return sid.'

def execute_login(self):

    params = {}
    params['user'] = self.username
    params['pwd'] = base64.b64encode(self.password.encode('utf-8'))
    params['serviceKey'] = '1'
    sanitized_params = {}
    for key in params:
        value = params[key]
        if (value is not None):
            sanitized_params[key] = six.text_type(value)
    sanitized_params = urllib.parse.urlencode(sanitized_params)
    url = '/cgi-bin/authLogin.cgi?'
    res_details = self._execute_and_get_response_details(self.ip, url, sanitized_params)
    root = ET.fromstring(res_details['data'])
    session_id = root.find('authSid').text
    return session_id
