def test_encrypt_and_decrypt_string(test_client): """ GIVEN encrypt_string and decrypt_string function WHEN a string is encrypted then decrypted THEN check equals original string :return: """ from server.utils.misc import encrypt_string, decrypt_string string = 'PASSWORD1234' encrypted_string = encrypt_string(string) assert string not in encrypted_string assert isinstance(encrypted_string, str) decrypted_string = decrypt_string(encrypted_string) assert decrypted_string == string
def upgrade(): conn = op.get_bind() session = Session(bind=conn) op.add_column( 'organisation', sa.Column('external_auth_username', sa.String(), nullable=True)) op.add_column( 'organisation', sa.Column('_external_auth_password', sa.String(), nullable=True)) tcr = sa.sql.table( 'organisation', sa.Column('id', sa.Integer, primary_key=True), sa.Column('external_auth_username', sa.String(), nullable=True), sa.Column('_external_auth_password', sa.String(), nullable=True), sa.Column('name', sa.String(), nullable=True)) for org in session.query(tcr).execution_options(show_all=True).all(): org.external_auth_username = '******' + (org.name or '').lower().replace(' ', '_') org._external_auth_password = encrypt_string(secrets.token_hex(16)) session.commit()
def set_TFA_secret(self): secret = pyotp.random_base32() self._TFA_secret = encrypt_string(secret)
def external_auth_password(self, value): self._external_auth_password = encrypt_string(value)