def handle_login(form_data): print "handle_login()" # Authenticate via Okta API to get Session Token user = form_data["username"] password = form_data["password"] session_token = None try: session_token = get_session_token(username=user, password=password) except ValueError as err: print(err.args) print "session_token: {0}".format(session_token) # Use Session Token to generatet OIDC Auth Code URL if (session_token): okta_util = OktaUtil(request.headers, config.okta) oidc_auth_code_url = okta_util.create_oidc_auth_code_url( session_token, config.okta["oidc_client_id"], config.okta["redirect_uri"]) print "url: {0}".format(oidc_auth_code_url) # redirect to User Auth Code URL to Get OIDC Code return redirect(oidc_auth_code_url) else: return make_response(redirect("/"))
def get_current_user_token(): print "get_current_user_token()" user_results_json = None okta_util = OktaUtil(request.headers, config.okta) if ("token" in request.cookies): introspection_results_json = okta_util.introspect_oauth_token( request.cookies.get("token")) if ("active" in introspection_results_json): if (introspection_results_json["active"]): print "Has active token" user_results_json = { "active": introspection_results_json["active"], "username": introspection_results_json["username"], "uid": introspection_results_json["uid"] } else: print "Has inactive token" else: print "has inactive token error" check_okta_session_url = okta_util.create_oidc_auth_code_url( None, config.okta["oidc_client_id"], config.okta["redirect_uri"]) user_results_json = { "active": False, "redirect_url": check_okta_session_url } else: print "has no token" check_okta_session_url = okta_util.create_oidc_auth_code_url( None, config.okta["oidc_client_id"], config.okta["redirect_uri"]) user_results_json = { "active": False, "redirect_url": check_okta_session_url } if (not user_results_json): print "has no token default" user_results_json = {"active": False} return user_results_json
def login(): print "login()" print request.form okta_util = OktaUtil(request.headers, config.okta) # Authenticate via Okta API to get Session Token session_token = None try: if "auth_token" in request.form: session_token = okta_util.authenticate_via_activation_token( request.form["auth_token"]) else: session_token = get_session_token( username=request.form["username"], password=request.form["password"]) except ValueError as err: print(err.args) print "session_token: {0}".format(session_token) # Use Session Token to generatet OIDC Auth Code URL if (session_token): oidc_auth_code_url = okta_util.create_oidc_auth_code_url( session_token, config.okta["oidc_client_id"], config.okta["redirect_uri"]) print "url: {0}".format(oidc_auth_code_url) # redirect to User Auth Code URL to Get OIDC Code return redirect(oidc_auth_code_url) else: error_list = { "messages": [{ "message": "Bad user name and/or password" }] } response = make_response( render_template("index.html", user={}, error_list=error_list, form_data={}, okta_config=config.okta, is_admin=False)) return response