def __init__(self, driver, base_url, url, remote_serial, pin, remote_otp_length=6): """Currently only supports enrolling remote tokens using the remote serial. PIN is always checked locally. """ Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="Remote token") driver.find_element_by_id("remote_server").clear() driver.find_element_by_id("remote_server").send_keys(url) driver.find_element_by_id("remote_otplen").clear() driver.find_element_by_id("remote_otplen").send_keys(remote_otp_length) driver.find_element_by_id("remote_serial").clear() driver.find_element_by_id("remote_serial").send_keys(remote_serial) driver.find_element_by_id("remote_pin1").clear() driver.find_element_by_id("remote_pin1").send_keys(pin) driver.find_element_by_id("remote_pin2").clear() driver.find_element_by_id("remote_pin2").send_keys(pin) driver.find_element_by_id("button_enroll_enroll").click() time.sleep(1) info_boxes = driver.find_elements_by_css_selector("#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("LSRE"): raise Exception("Remote token was not enrolled correctly.")
def __init__(self, receiver, tribe, position): Token.__init__(self, receiver) self.tribe = tribe self.debug = False self.first = Dot.FIRST Dot.FIRST = False self.wander = False self.wander_steering = Dot.WanderSteering(self, distance=20, radius=10, jitter=1) self.position = position self.velocity = ZeroVector() self.dead = False self.health = MAX_HEALTH self.growth = 0 self.speed = 50 self.radius = 15 self.color = tribe.color self.targets = []
def __init__(self, driver, base_url, pin, phone="", description=""): Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="SMS OTP") driver.find_element_by_id("enroll_sms_desc").clear() driver.find_element_by_id("enroll_sms_desc").send_keys(description) if phone: driver.find_element_by_id("sms_phone").clear() driver.find_element_by_id("sms_phone").send_keys(phone) driver.find_element_by_id("sms_pin1").clear() driver.find_element_by_id("sms_pin1").send_keys(pin) driver.find_element_by_id("sms_pin2").clear() driver.find_element_by_id("sms_pin2").send_keys(pin) driver.find_element_by_id("button_enroll_enroll").click() # Wait for API call to complete WebDriverWait(self.driver, 10).until_not( EC.visibility_of_element_located((By.ID, "do_waiting"))) info_boxes = driver.find_elements_by_css_selector( "#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("LSSM"): raise Exception("SMS token was not enrolled correctly.")
def __init__(self, driver, base_url, pin="", description="Selenium enrolled"): Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="Simple Pass Token") driver.find_element_by_id("spass_pin1").clear() driver.find_element_by_id("spass_pin1").send_keys(pin) driver.find_element_by_id("spass_pin2").clear() driver.find_element_by_id("spass_pin2").send_keys(pin) driver.find_element_by_id("enroll_spass_desc").clear() driver.find_element_by_id("enroll_spass_desc").send_keys(description) driver.find_element_by_id("button_enroll_enroll").click() # Wait for API call to complete WebDriverWait(self.driver, 10).until_not( EC.visibility_of_element_located((By.ID, "do_waiting"))) info_boxes = driver.find_elements_by_css_selector("#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("LSSP"): raise Exception("Simple pass token was not enrolled correctly.")
def __init__(self, receiver, color, x, y): Token.__init__(self, receiver) self.dots = [] self.manager = None # Set in the GUI manager constructor. self.color = color self.position = Vector(x, y)
def __init__(self, driver, base_url, pin="", hmac_key="", generate_key=False, otp_length=6, hash_algorithm="sha1", description="Selenium enrolled"): """ """ assert bool(hmac_key) ^ bool(generate_key) # xor Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="HMAC eventbased") wel_hmac_key_rb_gen = driver.find_element_by_id("hmac_key_rb_gen") wel_hmac_key_rb_no = driver.find_element_by_id("hmac_key_rb_no") wel_hmac_key = driver.find_element_by_id("hmac_key") wel_hmac_otplen = driver.find_element_by_id("hmac_otplen") wel_hmac_algorithm = driver.find_element_by_id("hmac_algorithm") wel_enroll_hmac_desc = driver.find_element_by_id("enroll_hmac_desc") if hmac_key: wel_hmac_key_rb_no.click() # select: seed input - no random see wel_hmac_key.clear() wel_hmac_key.send_keys(hmac_key) elif generate_key: wel_hmac_key_rb_gen.click() # select: random seed select(driver, select_element=wel_hmac_otplen, option_text=str(otp_length)) select(driver, select_element=wel_hmac_algorithm, option_text=hash_algorithm) driver.find_element_by_id("hmac_pin1").clear() driver.find_element_by_id("hmac_pin1").send_keys(pin) driver.find_element_by_id("hmac_pin2").clear() driver.find_element_by_id("hmac_pin2").send_keys(pin) wel_enroll_hmac_desc.send_keys(description) driver.find_element_by_id("button_enroll_enroll").click() # Wait for API call to complete WebDriverWait(self.driver, 10).until_not( EC.visibility_of_element_located((By.ID, "do_waiting"))) info_boxes = driver.find_elements_by_css_selector( "#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("OATH"): raise Exception("HMAC/HOTP token was not enrolled correctly.")
def __init__( self, driver, base_url, pin="", hmac_key="", generate_key=False, otp_length=6, hash_algorithm="sha1", description="Selenium enrolled", ): """ """ assert bool(hmac_key) ^ bool(generate_key) # xor Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="HMAC eventbased") wel_hmac_key_rb_gen = driver.find_element_by_id("hmac_key_rb_gen") wel_hmac_key_rb_no = driver.find_element_by_id("hmac_key_rb_no") wel_hmac_key = driver.find_element_by_id("hmac_key") wel_hmac_otplen = driver.find_element_by_id("hmac_otplen") wel_hmac_algorithm = driver.find_element_by_id("hmac_algorithm") wel_enroll_hmac_desc = driver.find_element_by_id("enroll_hmac_desc") if hmac_key: wel_hmac_key_rb_no.click() # select: seed input - no random see wel_hmac_key.clear() wel_hmac_key.send_keys(hmac_key) elif generate_key: wel_hmac_key_rb_gen.click() # select: random seed select(driver, select_element=wel_hmac_otplen, option_text=str(otp_length)) select(driver, select_element=wel_hmac_algorithm, option_text=hash_algorithm) driver.find_element_by_id("hmac_pin1").clear() driver.find_element_by_id("hmac_pin1").send_keys(pin) driver.find_element_by_id("hmac_pin2").clear() driver.find_element_by_id("hmac_pin2").send_keys(pin) wel_enroll_hmac_desc.send_keys(description) driver.find_element_by_id("button_enroll_enroll").click() # Wait for API call to complete WebDriverWait(self.driver, 10).until_not(EC.visibility_of_element_located((By.ID, "do_waiting"))) info_boxes = driver.find_elements_by_css_selector("#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("OATH"): raise Exception("HMAC/HOTP token was not enrolled correctly.")
def __init__(self, driver, base_url, pin, phone="", description=""): Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="SMS OTP") driver.find_element_by_id("enroll_sms_desc").clear() driver.find_element_by_id("enroll_sms_desc").send_keys(description) if phone: driver.find_element_by_id("sms_phone").clear() driver.find_element_by_id("sms_phone").send_keys(email) driver.find_element_by_id("button_enroll_enroll").click() self.serial = driver.find_element_by_css_selector("#info_box > #info_text > span").text if not self.serial or not self.serial.startswith("LSSM"): raise Exception("SMS token was not enrolled correctly.") driver.find_element_by_id("pin1").clear() driver.find_element_by_id("pin1").send_keys(pin) driver.find_element_by_id("pin2").clear() driver.find_element_by_id("pin2").send_keys(pin) time.sleep(1) driver.find_element_by_id("button_setpin_setpin").click()
def __init__(self, driver, base_url, pin, email="", description=""): Token.__init__(self, driver=driver, base_url=base_url) select_tag = driver.find_element_by_id("tokentype") select(driver, select_element=select_tag, option_text="E-mail token") driver.find_element_by_id("enroll_email_desc").clear() driver.find_element_by_id("enroll_email_desc").send_keys(description) driver.find_element_by_id("email_pin1").clear() driver.find_element_by_id("email_pin1").send_keys(pin) driver.find_element_by_id("email_pin2").clear() driver.find_element_by_id("email_pin2").send_keys(pin) if email: driver.find_element_by_id("email_address").clear() driver.find_element_by_id("email_address").send_keys(email) driver.find_element_by_id("button_enroll_enroll").click() time.sleep(1) info_boxes = driver.find_elements_by_css_selector("#info_box > .info_box > span") for box in info_boxes: if box.text.startswith("created token with serial"): self.serial = box.find_element_by_tag_name("span").text if not self.serial or not self.serial.startswith("LSEM"): raise Exception("E-mail token was not enrolled correctly.")
def __init__(self, receiver, size): Token.__init__(self, receiver) self.size = size