Guest User

configcreator

a guest
Jan 31st, 2018
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.68 KB | None | 0 0
  1. import os
  2.  
  3. class ConfigCreator(object):
  4.     def __init__(self, filename="conf.cfg", protocol=None, url=None, domain=None,
  5.                  username=None, password=None):
  6.         self.collect_data(filename, protocol, url, domain, username, password)
  7.         self.write_config()
  8.         self.confirm_config(filename, protocol, url, domain, username, password)
  9.  
  10.     def collect_data(self, filename, protocol, url, domain, username, password):
  11.         self.filename = filename
  12.         if not protocol:
  13.             protocol_correct = False
  14.             while not protocol_correct:
  15.                 protocol = raw_input("Enter Protocol (LDAP or LDAPS): ").lower()
  16.                 confirm = raw_input("Is " + protocol + " correct? Y/N: ").lower()
  17.                 protocol_correct = True if (confirm == 'y') else False
  18.         self.protocol = protocol
  19.         if not url:
  20.             url_correct = False
  21.             while not url_correct:
  22.                 url = raw_input("Please enter server URL or IP Address: ").lower()
  23.                 confirm = raw_input("Is " + url + " correct? Y/N: ").lower()
  24.                 url_correct = True if (confirm == 'y') else False
  25.         self.url = url
  26.         if not domain:
  27.             domain_correct = False
  28.             while not domain_correct:
  29.                 domain = raw_input("Please enter the domain name: ").lower()
  30.                 confirm = raw_input("Is " + domain + " correct? Y/N: ").lower()
  31.                 domain_correct = True if (confirm == 'y') else False
  32.         self.domain = domain
  33.         if not username:
  34.             username_correct = False
  35.             while not username_correct:
  36.                 username = raw_input("Please enter your username: ").lower()
  37.                 confirm = raw_input("Is " + username + " correct? Y/N: ").lower()
  38.                 username_correct = True if (confirm == 'y') else False
  39.         self.username = username
  40.         if not password:
  41.             password_correct = False
  42.             while not password_correct:
  43.                 password = raw_input("Please enter your password: ").lower()
  44.                 confirm = raw_input("Is " + password + " correct? Y/N: ").lower()
  45.                 password_correct = True if (confirm == 'y') else False
  46.         self.password = password
  47.        
  48.  
  49.     def write_config(self):
  50.         with open("conf.cfg", "w") as configfile:
  51.             configfile.write("#CONF.CFG#\n")
  52.             configfile.write(self.protocol + "\n")
  53.             configfile.write(self.url + "\n")
  54.             configfile.write(self.domain + "\n")
  55.             configfile.write(self.username + "\n")
  56.             configfile.write(self.password + "\n")
  57.  
  58.     def confirm_config(self, filename, protocol, url, domain, username, password):
  59.         with open("conf.cfg", "r") as configfile:
  60.             config = [line.strip() for line in configfile.readlines()]
  61.         protocol = config[1]
  62.         serverurl = config[2]
  63.         domainname = config[3]
  64.         username = config[4]
  65.         password = config[5]
  66.  
  67.         print("Your configuration:")
  68.         print()
  69.         print("PROTOCOL: " + protocol)
  70.         print("SERVER URL / IP: " + serverurl)
  71.         print("DOMAIN: " + domainname)
  72.         print("USERNAME: " + username)
  73.         print("PASSWORD: " + password)
  74.         print()
  75.         confirm = raw_input("Is this correct? Y/N: ").lower()
  76.         if confirm == "y":
  77.             print("Your configuration file is complete (conf.cfg)")
  78.             raise SystemExit
  79.         else:
  80.             self.__init__(filename, protocol, url, domain, username, password)
  81.  
  82. if __name__ == "__main__":
  83.     print "Python LDAP or LDAPS Authentication Configuration Utility."
  84.     print
  85.     conf = ConfigCreator()
Add Comment
Please, Sign In to add comment