def generate_profiles(session): from faker import Faker from models.profile import Profile from password_generator import PasswordGenerator faker = Faker() pwo = PasswordGenerator() usernames = [] mails = [] for i in range(0, 8000): profile = faker.simple_profile() while profile['username'] in usernames or profile['mail'] in mails: print('generating profile') profile = faker.simple_profile() username, name, surname, mail, address, sex, birth_date = parse_profile( profile) profile = Profile() profile.username = username profile.name = name profile.surname = surname profile.mail = mail profile.address = address profile.sex = sex profile.birth_date = birth_date profile.password = pwo.generate() profile.profile_id = i + 1 session.add(profile) usernames.append(username) mails.append(mail) session.commit()
def parse(self, response): """ this method is called as a callback to start scraping """ email = generatemail() first_name = names.get_first_name() last_name = names.get_last_name() password_generator_instance = PasswordGenerator() password_generator_instance.minlen = 10 password = password_generator_instance.generate() self.browser.visit(self.start_urls[0]) self.browser.fill('first_name', first_name) self.browser.fill('last_name', last_name) self.browser.fill('email', email) self.browser.fill('password', password) self.browser.find_by_xpath( '/html/body/div[1]/div/div[2]/div[1]/div[2]/div/div/div/div[2]/div[1]/div/div[1]/form/button' ).click() SafariAccount.objects.create(name=first_name + ' ' + last_name, email=email, password=password) self.browser.quit()
def tmp_password(request): """ # 임시 비밀번호 이메일 전송 :param request: - email: String - username: String :return: 201 """ email = request.data.get("email") username = request.data.get("username") if (username is None) or (email is None): raise exceptions.AuthenticationFailed("Required email and username") user = get_object_or_404(User, username=username, email=email) if user is None: raise exceptions.AuthenticationFailed("User not found") pwd = PasswordGenerator() new_pwd = pwd.generate() user.set_password(new_pwd) user.save() send_tmp_password.delay(user.email, user.username, new_pwd) return Response(status=status.HTTP_200_OK)
def __init__(self, argv, groups, cond_groups, dyn_groups, domen, dc_ou): self.__domen = domen self.__dc_ou = dc_ou self.__email_validator = EmailValidator() self.__json_file = argv self.__groups = groups self.__cond_groups = cond_groups self.__dyn_groups = dyn_groups self.__pg = PasswordGenerator() self.__chars = 'abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890' self.__data = list() self.__list_cond_groups = list() self.__list_dyn_groups = list() self.__parsed_names_list = list() self.__transliteration_names_list = list() self.__email_adresses_list = list() self.__consolidated_list = list() self.__list_templates_add_users = list() self.__list_templates_update_users = list() self.__list_templates_suspend_users = list() self.__list_templates_adding_groups = list() self.__list_templates_for_ldap = list() with open(self.__json_file, "r", encoding='utf-8') as temp_json_file: self.__json_temp = load(temp_json_file) self.__json_enum = len(self.__json_temp["name"]) for index_num in range(self.__json_enum): self.__data.append(\ [self.__json_temp["name"][index_num], \ self.__json_temp["position"][index_num], \ self.__json_temp["subdivision"][index_num], \ self.__json_temp["parent1"][index_num], \ self.__json_temp["parent2"][index_num], \ self.__json_temp["email"][index_num], \ self.__json_temp["inn"][index_num], \ self.__json_temp["phone"][index_num]]) with open(self.__cond_groups, "r", encoding='utf-8') as cond_groups: temp_list_cond_groups = list() for line in cond_groups: temp_list_cond_groups.append( ("".join(line.split(";"))).replace('\n', '')) for line in temp_list_cond_groups: self.__list_cond_groups.append([line.split(":")[0], \ [sub(r'(^r\')|(\'$)', '', x) for x in line.split(":")[1].split(" , ")]]) with open(self.__dyn_groups, "r", encoding='utf-8') as dyn_groups: temp_list_dyn_groups = list() for line in dyn_groups: temp_list_dyn_groups.append( ("".join(line.split(";"))).replace('\n', '')) for line in temp_list_dyn_groups: self.__list_dyn_groups.append([line.split(' , ')[:3], \ str(line.split(' , ')[3]).split(' : ')]) self.__parse_names() self.__names_transliteration() self.__create_email_adresses() self.__consolidate_data() self.__get_ad_folders()
def forgot_password_page(): if (request.method == 'POST'): email=request.form.get('email') post = Users.query.filter_by(email=email).first() name = post.name; if(post!=None): if(post.email==json["admin_email"]): flash("You can't reset password of administrator!", "danger") else: pwo = PasswordGenerator() password = pwo.generate() passwordemial = password post.password = sha256_crypt.hash(password) db.session.commit() subject = "New password generated at "+time content1 = '''<!DOCTYPE html><html lang="en" ><head><meta charset="UTF-8"><title>Register CGV</title></head><body><table cellspacing="0" cellpadding="0" border="0" style="color:#333;background:#fff;padding:0;margin:0;width:100%;font:15px/1.25em 'Helvetica Neue',Arial,Helvetica"><tbody><tr width="100%"><td valign="top" align="left" style="background:#eef0f1;font:15px/1.25em 'Helvetica Neue',Arial,Helvetica"><table style="border:none;padding:0 18px;margin:50px auto;width:500px"><tbody><tr width="100%" height="60"><td valign="top" align="left" style="border-top-left-radius:4px;border-top-right-radius:4px;background: white; padding:10px 18px;text-align:center"> <img height="75" width="75" src="https://cdn.discordapp.com/attachments/708550144827719811/792008916451328010/android-chrome-512x512.png" title="CGV" style="font-weight:bold;font-size:18px;color:#fff;vertical-align:top" class="CToWUd"></td></tr><tr width="100%"><td valign="top" align="left" style="background:#fff;padding:18px"><h1 style="font-size:20px;margin:16px 0;color:#333;text-align:center">India’s Largest Online Verification Network</h1><p style="font:15px/1.25em 'Helvetica Neue',Arial,Helvetica;color:#333;text-align:center">Hey, ''' + str(name) + '''</p><div style="background:#f6f7f8;border-radius:3px"> <br><center><p style="font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;">Password : '''+str(passwordemial)+'''</p><center><p style="font:15px/1.25em 'Helvetica Neue',Arial,Helvetica;margin-bottom:0;text-align:center"> <a href="''' content2 = json["site_url"] + '''/login" style="border-radius:3px;background:#3aa54c;color:#fff;display:block;font-weight:700;font-size:16px;line-height:1.25em;margin:24px auto 6px;padding:10px 18px;text-decoration:none;width:180px" target="_blank">Login Now!</a></p> <br><br></div><p style="font:14px/1.25em 'Helvetica Neue',Arial,Helvetica;color:#333"> <strong>What's CGV?</strong> We generate and verify certificates online which also includes a backend dashboard. Click to know more. <a href="https://cgvcertify.herokuapp.com" style="color:#306f9c;text-decoration:none;font-weight:bold" target="_blank">Learn more »</a></p></td></tr></tbody></table></td></tr></tbody></table></body></html>''' content = content1 + content2 message = Mail( from_email=('*****@*****.**', 'Security Bot CGV'), to_emails=email, subject=subject, html_content=content) try: sg = SendGridAPIClient(json['sendgridapi']) response = sg.send(message) flash("You will receive a mail shortly. Password rested successfully!", "success") except Exception as e: print(e.message) elif(post==None): flash("We didn't find your account!", "danger") return render_template('forgot-password.html', json=json) return render_template('forgot-password.html', json=json)
def test_generate_with_different_length(self): """Test generate() for fixed length""" pg = PasswordGenerator() length = 16 pg.minlen = length pg.maxlen = length self.assertEqual(len(pg.generate()), length)
def _get_password(self, password, pass_gen): if pass_gen: pwgen = PasswordGenerator() pwgen.maxlen = 10 return pwgen.generate() else: return password
def create_user_object(): password = PasswordGenerator() password.excludeschars = "!$%^{}[]()=/" count = 0 dup = [] for test in csv: if count == 0: pass count = count + 1 elif count == 1000: break elif test[20] in dup: pass elif count == 1: passw = "12345" user = User.objects.create(username="******") user.set_password(passw) user.save() dup.append(test[20]) count = count + 1 else : passw = password.generate() print(test[20],passw+'\n') User.objects.create(username=test[20]) user = User.objects.get(username=test[20]) user.set_password(passw) user.save() dup.append(test[20]) count = count + 1
def gerarsenha(self): pwo = PasswordGenerator() pwo.minlen = 8 pwo.maxlen = 12 pw = pwo.generate() return pw
def random_password(self): selected_item = self.get_selected_lw_item() if selected_item: pwo = PasswordGenerator() pwo.minlen = 8 # (Optional) pwo.maxlen = 16 # (Optional) pwo = pwo.generate() self.le_password.setText(pwo)
def test_only_escaped_hyphen(self): """ A test with '\-' as an alphabet """ gen = PasswordGenerator(alphabet=r'\-', length=1) self.assertEqual(gen._processed_alphabet, ['-']) self.assertEqual(gen.generate_password(), '-')
async def password(e): if environ.get("isSuspended") == "True": return query = e.pattern_match.group(1) size = re.findall(r'\d+', query) pwo = PasswordGenerator() pwo.minlen = int(size[0]) pwo.maxlen = int(size[0]) passw = pwo.generate() await e.edit(f"`{passw}`")
def generator(): try: data = request.args opts = password_options_schema.load(data) generator = PasswordGenerator(opts) password = generator.generate() return jsonify(password), 200 except ValidationError as err: return err.messages, 400
def __init__(self): super().__init__() self.__settings = Settings() self.__master_password = None self.__passwords = dict() self.__pages = dict() self.__password_uuid = None self.__edit_mode = False self.__page_id = 0 uic.loadUi("ui/main_form.ui", self) self.setWindowTitle( f"{self.__settings.title} {self.__settings.version}") self.__password_generator = PasswordGenerator() if self.__settings.file_name: self.__page_id = 0 self.__set_edit_mode(False) else: self.__page_id = 1 self.stackedWidget.setCurrentIndex(self.__page_id) self.btnSelectFileName.clicked.connect(self.btnSelectFileName_click) self.btnCreateFile.clicked.connect(self.btnCreateFile_click) self.btnOpenFile.clicked.connect(self.btnOpenFile_click) self.btnLogin.clicked.connect(self.btnLogin_click) self.btnSave.clicked.connect(self.btnSave_click) self.btnCancel.clicked.connect(self.btnCancel_click) self.btnGenerate.clicked.connect(self.btnGenerate_click) self.btnCloseFile.clicked.connect(self.btnCloseFile_click) self.btnCreate.clicked.connect(self.recordCreate_action) self.btnEdit.clicked.connect(self.recordEdit_action) self.btnRemove.clicked.connect(self.recordRemove_action) self.action_CreateRecord.triggered.connect(self.recordCreate_action) self.action_EditRecord.triggered.connect(self.recordEdit_action) self.action_RemoveRecord.triggered.connect(self.recordRemove_action) self.action_Exit.triggered.connect(lambda x: self.close()) self.action_MasterPassword.triggered.connect(self.showMasterPassword) self.action_PasswordGenerator.triggered.connect( self.showPasswordGeneretor) self.action_Block.triggered.connect(self.block) self.listWidget.itemSelectionChanged.connect(self.listWidget_onSelect) self.listWidget_onSelect() self.__update_status_bar()
def __init__(self): '''Class constructor.''' self.passwd_len = 10 self.passwd_generator = PasswordGenerator() self.passwd_generator.minlen = self.passwd_len self.passwd_generator.maxlen = self.passwd_len self.updater_thread = Thread(name='updater_thread', target=self._updater_thread, daemon=True) self.updater_thread.start() logging.debug('PasswdManager.__init__() finishes')
def generate_password(): pwo = PasswordGenerator( ) # pwo, a PasswordGenerator object, is in charge of generating a new random password pwo.minlen = 15 # Sets the password length to 15 characters pwo.maxlen = 15 new_password = pwo.generate() # Generates a random password print("Newly generated password: {}".format(new_password)) print( "NOTE: Make sure you copy this password before you create your new account" ) return new_password # returns the generated password
def main(): pwo = PasswordGenerator() pwo.minlen = 16 # (Optional) pwo.maxlen = 16 # (Optional) pwo.minuchars = 4 # (Optional) pwo.minlchars = 4 # (Optional) pwo.minnumbers = 8 # (Optional) pwo.minschars = 0 # (Optional) passwd = pwo.generate()
def generate_password(self): num_chars = self.characters_number.get() has_uppercase = self.value_checkbutton_uppercase.get() has_lowercase = self.value_checkbutton_lowercase.get() has_digits = self.value_checkbutton_digits.get() has_special_chars = self.value_checkbutton_special_chars.get() password_generator = PasswordGenerator(num_chars, has_digits, has_uppercase, has_lowercase, has_special_chars) random_password = password_generator.generate_password() self.change_password_on_entry(random_password)
def __init__(self): super().__init__() self.canvas = Canvas(width=200, height=150) self.password_generator = PasswordGenerator() self.file_handler = PasswordsDataFileHandler() self.website = None self.email = None self.password = None self.password_entry = None self.entries = [] self.passwords_data = [] self.config_app() self.mainloop()
def post(self): generator = PasswordGenerator(self.request.get('salt'), self.request.get('domain')) template_variables = { 'result': True, 'salt': generator.salt, 'domain': generator.domain, 'password': generator.generate(), } path = os.path.join(os.path.dirname(__file__), 'index.html') self.response.out.write(template.render(path, template_variables))
def password(self): """Create & return a 16-30 char alphanumeric password.""" pwo = PasswordGenerator() pwo.minlen = 16 pwo.maxlen = 30 pwo.minuchars = 1 pwo.minlchars = 1 pwo.minnumbers = 1 pwo.minschars = 1 return pwo.generate()
def create_new_user(hashed_email: str) -> User: random_username = generate_username(1)[0] random_username = random_username.lower() pwo = PasswordGenerator() pwo.minlen = 30 # (Optional) pwo.maxlen = 30 # (Optional) pwo.minuchars = 2 # (Optional) pwo.minlchars = 3 # (Optional) pwo.minnumbers = 1 # (Optional) pwo.minschars = 0 # (Optional) pwo.excludeschars = "!$%^*:=" random_password = pwo.generate() random_email = f'{random_username}@example.com' return add_user(f'{random_username}', random_password, random_email, '', hashed_email, exitOnFailure=False)
def change_pwd(msg_text): q=pyad.adquery.ADQuery() q.execute_query(attributes=['distinguishedname','mobile','cn'],where_clause="samaccountname='{}'".format(msg_text)) x=bool(q.get_results()) if(str(x)=='True'): for row in q.get_results(): cn=row['distinguishedname'] aduser=pyad.aduser.ADUser.from_dn(cn) pwo= PasswordGenerator() pwd='Tt' +pwo.generate() pyad.aduser.ADUser.set_password(aduser,pwd) return(pwd)
def randoms(): pwo = PasswordGenerator() pwo.minlen = 8 # (Optional) pwo.maxlen = 8 # (Optional) pwo.minuchars = 2 # (Optional) pwo.minlchars = 3 # (Optional) pwo.minnumbers = 1 # (Optional) pwo.minschars = 1 # (Optional) password_string = pwo.generate() return password_string
def pass_generator(): pwo = PasswordGenerator() pwo.minlen = 6 # (Minimum Length) pwo.maxlen = 12 # (Maximum Length) pwo.minuchars = 2 # (Minimum Upper Case Characters) pwo.minlchars = 2 # (Minimum Lower Case Characters) pwo.minnumbers = 2 # (Minimum Numbers) pwo.minschars = 3 # (Minimum special characters) pass_wd = pwo.generate() print(f'Recommended Password : {pass_wd}') print("-" * 100)
def addadmins(request): global sadmintoken id = int(request.POST["id"]) name = request.POST["name"] cname = request.POST["cname"] pwo = PasswordGenerator() pword = pwo.generate() params = dict(uid=id, username=name, password=pword, clubname=cname) response = requests.post( 'http://localhost:5000/addclub', data=params, headers={'Authorization': f'Bearer {sadmintoken}'}) print(response) return redirect(viewadmin)
def gerarsenha(): pwo= PasswordGenerator() pwo.minlen = 8 pwo.maxlen = 12 pw = pwo.generate() print(f'\33[1;35m A senha segura que o sistema gerou foi:\33[m \33[1;33m{pw} \33[m') colar = input('\33[1;34m Deseja mandar a senha gerada a área de transferencia? S ou N :\33[m').lower() if colar == 'n': print('Ok') elif colar == 's': pyperclip.copy(pw) print('\33[1;32m Senha copiada com sucesso!\33[m') else: print('\33[1;31m Digita S para sim e N para não\33[m')
def create_account(session): account = Account(first_name=names.get_first_name(), last_name=names.get_last_name()) session.add(account) password_generator = PasswordGenerator() authentication = Authentication(account=account, login='******'.format( account.first_name, account.last_name).lower(), password=password_generator.generate()) session.add(authentication) session.commit() return account
def get_password(): display_text = PasswordGenerator().generate_random_password( lowercase=lowercase_check.get(), uppercase=uppercase_check.get(), digits=digit_check.get(), special_characters=special_check.get()) l.config(text=display_text)
class PasswdManager: def __init__(self): '''Class constructor.''' self.passwd_len = 10 self.passwd_generator = PasswordGenerator() self.passwd_generator.minlen = self.passwd_len self.passwd_generator.maxlen = self.passwd_len self.updater_thread = Thread(name='updater_thread', target=self._updater_thread, daemon=True) self.updater_thread.start() logging.debug('PasswdManager.__init__() finishes') def get_curr_passwd(self): '''Password getter for password check.''' with open("passwd.txt", "r") as passwd_file: return passwd_file.read().rstrip() logging.debug('Got password from file.') def refresh_passwd(self): '''Refreshes password.''' with open("passwd.txt", "w") as passwd_file: passwd_file.write(self.passwd_generator.generate() + '\n') logging.debug('PasswdManager.RefreshPasswd() finishes.') def _updater_thread(self, period=3600): '''Thread function''' while True: self.refresh_passwd() sleep(preiod) logging.debug('Updated password.')
def addadmins(request): global sadmintoken global params if(request.session['suserid']): id=int(request.POST["id"]) name=request.POST["name"] cname=request.POST["cname"] pwo=PasswordGenerator() pword=pwo.generate() params = dict(uid=id,username=name,password=pword,clubname=cname) response=requests.post('http://localhost:5000/addclub',data=params,headers ={'Authorization':f'Bearer {sadmintoken}'}) #print(response) if 'message' not in response: return redirect(mailadmin) else: return HttpResponse(response['message']) else: return redirect(index)
def gen(i, param): pwo = PasswordGenerator() if param == "U": return pwo.shuffle_password('ABCDEFGHIJKLMNOPQRSTUVWXYZ', i) elif param == "L": return pwo.shuffle_password('abcdefghijklmnopqrstuvwxyz', i) elif param == "D": return pwo.shuffle_password('1234567890', i) elif param == "LD" or "DL": return pwo.shuffle_password('abcdefghijklmnopqrstuvwxyz1234567890', i) elif param == "UD" or "DU": return pwo.shuffle_password('ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890', i) elif param == "UL" or "LU": return pwo.shuffle_password('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz', i) else: return pwo.shuffle_password("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890", i)