def get_user_info(self, username): try: conn = Client(current_app.config['IPA_HOST']) conn.login_kerberos() #query = ClientMeta(current_app.config['IPA_HOST']) info = conn.user_show(username) return info except freeipa.exceptions as e: raise IPAException(self.error(e.args))
def login(): form = LoginForm(request.form) if request.method == "POST" and form.validate(): client = Client("ipa.freeside.co.uk", verify_ssl=False, version="2.215") try: uid = form.username.data client.login(uid, form.password.data) data = client.user_show(uid) login_user(UserSession(uid, data)) flash("Logged in!") return redirect("/") except exceptions.Unauthorized: flash("Invalid username or password") except exceptions.NotFound: flash("User not in database.") return render_template("login.html", form=form)