def basite(request): username = request.session.get('username') mysqlipvalue = readprofile('mysql','host') mysqlusernamevalue = readprofile('mysql','username') mysqlPortevalue = readprofile('mysql','Port') mysqlPasswordvalue = readprofile('mysql','Password') mysqldatabase = readprofile('mysql','database') if username == returnadminusernamevalue: if mysqlipvalue != 'None'and mysqlipvalue != "" and mysqlipvalue != None and mysqlipvalue != False: mysqlallvalue = getldap3configtion() if mysqlallvalue: myserver=mysqlallvalue.get('server', "None") myuser=mysqlallvalue.get('user', "None") mypassword=mysqlallvalue.get('password', "None") mydomain=mysqlallvalue.get('domain', "None") myusessl=mysqlallvalue.get('use_ssl', "None") mysearch_base=mysqlallvalue.get('search_base', "None") else: myserver='None' myusessl='None' # mailvalue=searchsendmail() # if mailvalue: # mascount = mailvalue.get('mailcount', "None") # mailpassr = mailvalue.get('password', "None") # masrever = mailvalue.get('mailserver', "None") # maddress = mailvalue.get('mailaddress', "None") # else: # masrever='None' permessa=getpermsessage() if permessa: perlogn = permessa.get('logongroup', "None") perchangepwd = permessa.get('changepwdgroup', "None") perfile = permessa.get('fieldgroup', "None") perset = permessa.get('operagroup', "None") monitorselect = permessa.get('monitor', "None") zabbixurl = permessa.get('zabbixurl', "None") zabbixuser = permessa.get('zabbixuser', "None") zabbixpassword = permessa.get('zabbixpassword', "None") else: perlogn='None' monitorselect = 'None' zabbixurl = 'None' zabbixuser = '******' zabbixpassword = '******' iisexx=getliisconfigtion() if iisexx: exuser = iisexx.get('exuser', "None") expassword = iisexx.get('expassword', "None") exdomain = iisexx.get('exdomain', "None") exip = iisexx.get('exserver', "None") else: iisserver='None' exserver='None' else: mysqldatabase='None' return render_to_response('basise.html',locals()) else: return render_to_response('login.html', locals())
def changadminpwd(request): try: post = request.POST adminoldpwd = post.get("oldpassword") adminnewpwd = post.get("newpassword1") adminrealnewpwd = post.get("newpassword2") username = request.session.get('username') if username.lower() == returnadminusernamevalue: if adminoldpwd !='' and adminnewpwd != '' and adminrealnewpwd != '': if adminnewpwd == adminrealnewpwd: adminoldassword = readprofile('password', 'administratorpassword') if check_password(adminoldpwd, adminoldassword): realpassword = make_password(adminnewpwd) writeprofile("password", "administratorpassword", realpassword) result = {'isSuccess': True, "message": '成功'} else: result = {'isSuccess': False, "message": '旧密码错误'} else: result = {'isSuccess': False, "message": '两次密码不一致'} else: result = {'isSuccess': False, "message": '请填写完整信息'} else: result = {'isSuccess': False, "message": '权限不足'} except Exception as e: result = {'isSuccess': False, "message": '出现异常'+str(e)} response = HttpResponse() response['Content-Type'] = "text/javascript" response.write(json.dumps(result)) return response
def userlogin(request): post = request.POST username = post.get("Username") password = post.get("Password") try: if username: if password: if username.lower() == returnadminusernamevalue: adminoldassword = readprofile('password', 'administratorpassword') if check_password(password, adminoldassword): request.session['username'] = returnadminusernamevalue request.session['displayname'] = '超级管理员' result = {'code': 3, "message": '/basite/'} else: result = {'code': 2, "message": '密码错误'} else: loginvalue = verifyuser_login_new(username, password) if loginvalue['isSuccess'] == True: gotken = seargooled(username.lower()) if gotken: result = { 'code': 0, "message": { 'username': loginvalue['message']['sAMAccountName'], 'displayname': loginvalue['message']['displayName'] } } response = HttpResponse() response['Content-Type'] = "text/javascript" response.write(json.dumps(result)) return response else: result = {'code': 1, "message": '未绑定'} response = HttpResponse() response['Content-Type'] = "text/javascript" response.write(json.dumps(result)) return response # return HttpResponseRedirect(returnbackurl, request) else: # return render_to_response("login.html", {'message': loginvalue['message']}) result = {'code': 2, "message": loginvalue['message']} else: result = {'code': 2, "message": '请填写密码'} else: result = {'code': 2, "message": '请填写用户名'} except Exception as e: print(e) result = {'code': 2, "message": '出现异常'} response = HttpResponse() response['Content-Type'] = "text/javascript" response.write(json.dumps(result)) return response
def dbinfo(): try: host = readprofile('mysql', 'host') username = readprofile('mysql', 'username') Port = readprofile('mysql', 'Port') database = readprofile('mysql', 'database') password = encrypt_and_decode().decrypted_text( readprofile('mysql', 'password')) #测试 conn = pymysql.connect(host=host, port=int(Port), user=username, password=password, database=database, charset='utf8', cursorclass=pymysql.cursors.DictCursor) cur = conn.cursor() if cur: return conn else: return False except Exception as e: return False
WSGI_APPLICATION = 'itops.wsgi.application' # Database # https://docs.djangoproject.com/en/1.10/ref/settings/#databases try: conn = dbinfo() if conn: from dbinfo.Profile import readprofile DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': readprofile('mysql', 'database'), 'USER': readprofile('mysql', 'username'), 'PASSWORD': encrypt_and_decode().decrypted_text(readprofile('mysql', 'password')), 'HOST': readprofile('mysql', 'host'), 'PORT': readprofile('mysql', 'Port'), } } else: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } except: DATABASES = {
def userlogin(request): post = request.POST username = post.get("Username") password = post.get("Password") ip = request.META.get('HTTP_X_FORWARDED_FOR', request.META['REMOTE_ADDR']) agent = request.META.get('HTTP_USER_AGENT', '') try: result = {'code': 2, 'backurl': ''} if username: if password: if username.lower() == returnadminusernamevalue: adminoldassword =readprofile('password','administratorpassword') if check_password(password, adminoldassword): request.session['username'] = returnadminusernamevalue request.session['displayname'] = '超级管理员' result = {'code': 3, "message": '/basite/'} else: result = {'code': 2, "message": '密码错误'} else: loginvalue = verifyuser_login_new(username, password) if loginvalue['isSuccess']: goo_status = goostatus() if goo_status: if goo_status['usergotoken'] == '0': returnbackurl = request.session.get("returnbackurl") if not returnbackurl or returnbackurl == r'/' or returnbackurl == r'/login/': returnbackurl = r'/home/' request.session['username'] = username request.session['displayname'] = loginvalue['message']['displayname'] request.session['returnbackurl'] = '' # result = {'isSuccess': True, "message": '验证成功', 'backurl': returnbackurl} result = {'code': 4, 'backurl': returnbackurl} else: returnbackurl = request.session.get("returnbackurl") if not returnbackurl or returnbackurl == r'/' or returnbackurl == r'/login/': returnbackurl = r'/home/' request.session['username'] = username request.session['displayname'] = loginvalue['message']['displayname'] request.session['returnbackurl'] = '' # result = {'isSuccess': True, "message": '验证成功', 'backurl': returnbackurl} result = {'code': 4, 'backurl': returnbackurl} if result['code'] != 4: gotken = seargooled(username.lower()) if gotken: gotken_ip = gotken[0].get('ip', '') gotken_agent = gotken[0].get('agent', '') if gotken_ip == ip and gotken_agent == agent: returnbackurl = request.session.get("returnbackurl") if not returnbackurl or returnbackurl == r'/' or returnbackurl == r'/login/': returnbackurl = r'/home/' request.session['username'] = username request.session['displayname'] = loginvalue['message']['name'] request.session['returnbackurl'] = '' # result = {'isSuccess': True, "message": '验证成功', 'backurl': returnbackurl} result = {'code': 4, 'backurl': returnbackurl} else: result = {'code': 0, "message": {'username': loginvalue['message']['sAMAccountName'], 'displayname': loginvalue['message']['displayName']}} else: result = {'code': 1, "message": '未绑定'} else: result = {'code': 2, "message": loginvalue['message']} else: result = {'code': 2, "message": '请填写密码'} else: result = {'code': 2, "message": '请填写用户名'} except Exception as e: print(e) result = {'code': 2, "message": '出现异常'} response = HttpResponse() response['Content-Type'] = "text/javascript" response.write(json.dumps(result)) return response
WSGI_APPLICATION = 'itops.wsgi.application' # Database # https://docs.djangoproject.com/en/1.10/ref/settings/#databases try: mysqlDatabases = mysqlDatabase() if mysqlDatabases: from dbinfo.Profile import readprofile DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': readprofile('mysql', 'database'), 'USER': readprofile('mysql', 'username'), 'PASSWORD': encrypt_and_decode().decrypted_text( readprofile('mysql', 'password')), 'HOST': readprofile('mysql', 'host'), 'PORT': readprofile('mysql', 'Port'), } } else: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3',