| | |
| | | 用户验证 |
| | | """ |
| | | |
| | | import mongo_data |
| | | import mysql_data |
| | | |
| | | |
| | | # 新增用户 |
| | | def add_user(id, account, pwd, rule): |
| | | _dict = {"_id": id, "account": account, "pwd": pwd, "rule": rule} |
| | | mongo_data.save_one("clients", _dict) |
| | | mysqldb = mysql_data.Mysqldb() |
| | | |
| | | result = mysqldb.select_one("select * from clients where _id={}".format(id)) |
| | | if result is None: |
| | | mysqldb.execute( |
| | | "insert into clients(_id,account,pwd,rule) values({},'{}','{}','{}')".format(id, account, pwd, rule)) |
| | | else: |
| | | mysqldb.execute("update clients set account='{}', pwd='{}', rule='{}' where _id={}".format(account, pwd, rule,id)) |
| | | |
| | | |
| | | def add_rule(rule, authritys): |
| | | _dict = {"_id": rule, "authritys": authritys} |
| | | mongo_data.save_one("clients-authritys", _dict) |
| | | mysqldb = mysql_data.Mysqldb() |
| | | result = mysqldb.select_one("select * from clients_authritys where _id='{}'".format(rule)) |
| | | if result is None: |
| | | mysqldb.execute( |
| | | "insert into clients_authritys(_id,authritys) values('{}','{}')".format(id, authritys)) |
| | | else: |
| | | mysqldb.execute( |
| | | "update clients_authritys set authritys='{}' where _id={}".format(authritys.replace("\"", "\\" + "\""), |
| | | rule)) |
| | | |
| | | |
| | | def _get_client_ids_by_rule(rule): |
| | | results = mongo_data.find("clients", {"rule": rule}) |
| | | mysqldb = mysql_data.Mysqldb() |
| | | results = mysqldb.select_all("select * from clients where rule='{}'".format(rule)) |
| | | _ids = [] |
| | | for result in results: |
| | | _ids.append(result["_id"]) |
| | | _ids.append(result[0]) |
| | | return _ids |
| | | |
| | | |
| | |
| | | |
| | | # 登录,返回用户ID与权限 |
| | | def login(account, pwd): |
| | | results = mongo_data.find("clients", {"account": account}) |
| | | if mongo_data.count("clients", {"account": account}) == 0: |
| | | mysqldb = mysql_data.Mysqldb() |
| | | results = mysqldb.select_all("select * from clients where account='{}'".format(account)) |
| | | if len(results) <= 0: |
| | | raise Exception("账号不存在") |
| | | result = results[0] |
| | | if result["pwd"] != pwd: |
| | | if result[2] != pwd: |
| | | raise Exception("密码错误") |
| | | |
| | | results = mongo_data.find("clients-authritys", {"_id": result["rule"]}) |
| | | return result["_id"], results[0]["authritys"] |
| | | results_ = mysqldb.select_one("select * from clients_authritys where _id='{}'".format(result[3])) |
| | | return result[0], results_[1] |
| | | |
| | | |
| | | if __name__ == '__main__': |
| | |
| | | # add_rule("uploader", ["code_upload"]) |
| | | # |
| | | # |
| | | # add_user(1, "super", "123456", "super") |
| | | #add_user(10, "super1", "123456", "super") |
| | | # add_user(2, "client1", "123456", "client-l2") |
| | | # add_user(3, "client2", "123456", "client-l2") |
| | | # add_user(4, "client3", "123456", "client-l2") |
| | | # add_user(5, "client2", "123456", "client-industry") |
| | | # add_user(6, "admin", "123456", "uploader") |
| | | get_l2_clients() |
| | | |
| | | try: |
| | | print(login("client1", "12345")) |
| | | print(login("client1", "1234567")) |
| | | except Exception as e: |
| | | print() |
| | | print(str(e)) |
| | | |
| | | print(get_l2_clients()) |