#simple example of encryption usage with python config
- yeah, base64 isn't very secure
- you probably also wanna compile to an executable to obscure the code..
| import ConfigParser | |
| import base64 | |
| config = ConfigParser.ConfigParser() | |
| config.read('tab.cfg') | |
| tab_user = config.get('tableau','user_name') | |
| tab_pwd_crypt = config.get('tableau','password') | |
| report_list = config.get('tableau', 'report_list').split(' ') # split on space delims | |
| print tab_user | |
| tab_pwd = base64.b64decode(tab_pwd_crypt) | |
| print tab_pwd | |
| print report_list |
| #!/usr/bin/env python | |
| # ----------- | |
| # for help and params: python encrypt_pwd.py -h | |
| # sample with defaults: python encrypt_pwd.py -v yipee1! | |
| # ----------- | |
| import ConfigParser | |
| import argparse | |
| import base64 | |
| parser = argparse.ArgumentParser() | |
| parser.add_argument('-c','--file', default='tab.cfg', help ="""enter config file path, default is tab.cfg """) | |
| parser.add_argument('-s','--section', default='tableau', help ="""enter config section, default is tableau """) | |
| parser.add_argument('-p', '--param', default='password', help ="""enter specific param name, default is password """) | |
| parser.add_argument('-v', '--value', help ="""enter specific param name, no default, required """) | |
| try: | |
| args = parser.parse_args() | |
| value_encrypt = base64.b64encode(args.value) | |
| config = ConfigParser.ConfigParser() | |
| config.read(args.file) | |
| config.set(args.section, args.param, value_encrypt) | |
| tab_pwd = config.write(open(args.file, 'wr')) | |
| print value_encrypt | |
| print "success!" | |
| except: | |
| print "\n\nsomething wrong, did you enter the required params?" | |
| print """run "python encrypt_pwd.py -h" for more info""" | |
| exit(1) |
| [tableau] | |
| user_name = bala | |
| password = eWlwZWUyIQ== | |
| report_list = url1/coval url2/mpi | |