def do_POST(self): try: sig_response = self.require_post('sig_response') except ValueError: self.error('sig_response post parameter is required') return user = duo_web.verify_response(skey, sig_response) if user is None: self.wfile.write('Did not authenticate with Duo.') elif self.get_secure_cookie('user') != user: self.wfile.write('Duo user does not match local user.') else: self.wfile.write('Authenticated with Duo as %s.' % user) if __name__ == '__main__': global ikey, skey, host config = ConfigParser.ConfigParser() config.read('duo.conf') config_d = dict(config.items('duo')) ikey = config_d['ikey'] skey = config_d['skey'] host = config_d['host'] config_d = dict(config.items('app')) cookie_secret = config_d['cookie_secret'] server = HTTPServer(('', 8080), RequestHandler) server.cookie_secret = cookie_secret server.serve_forever()
def do_POST(self): try: sig_response = self.require_post("sig_response") except ValueError: self.error("sig_response post parameter is required") return user = duo_web.verify_response(skey, sig_response) if user is None: self.wfile.write("Did not authenticate with Duo.") elif self.get_secure_cookie("user") != user: self.wfile.write("Duo user does not match local user.") else: self.wfile.write("Authenticated with Duo as %s." % user) if __name__ == "__main__": global ikey, skey, host config = ConfigParser.ConfigParser() config.read("duo.conf") config_d = dict(config.items("duo")) ikey = config_d["ikey"] skey = config_d["skey"] host = config_d["host"] config_d = dict(config.items("app")) cookie_secret = config_d["cookie_secret"] server = HTTPServer(("", 8080), RequestHandler) server.cookie_secret = cookie_secret server.serve_forever()