~gema/+junk/tenant-manager

15 by Gema Gomez
Separating password generation for deletion of tenant purposes
1
#!/usr/bin/env python
2
import base64
3
import argparse
4
5
from Crypto import Random
6
from Crypto.Protocol.KDF import PBKDF2
7
8
# dd if=/dev/random of=password.key bs=64 count=1
9
with open('password.key', 'r') as f:
10
    password_salt = f.read()
11
12
def password_random(length):
13
    random_bytes = Random.new().read(length)
14
    return base64.b64encode(random_bytes)
15
16
def tenant_password(tenant_name, salt_key):
17
    # dd if=/dev/random of=password.key bs=64 count=1
18
    with open(salt_key, 'r') as f:
19
        password_salt = f.read()
20
    return base64.b64encode(PBKDF2(tenant_name, password_salt, 18))
21
22
if __name__ == '__main__':
23
    parser = argparse.ArgumentParser()
24
    parser.add_argument("tenant_name", help="Provide tenant name")
25
    parser.add_argument("salt_file", help="Provide filename for salt.", default="password.key")
26
27
    args = parser.parse_args()
28
    print tenant_password(args.tenant_name, args.salt_file)