Exemplo n.º 1
0
def ecommerce_profile():
    logger.debug("ecommerce_profile()")
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user_info = get_userinfo()
    user_info2 = okta_admin.get_user(user_info["sub"])
    factors = get_enrolled_factors(user_info["sub"])

    if get_udp_ns_fieldname("consent") in user_info2["profile"]:
        consent = user_info2["profile"][get_udp_ns_fieldname("consent")]
        if consent.strip() == "":
            consent = ''
            session['appointment'] = "No Appointments Currently Set."
    else:
        consent = ''

    crediturl = ''
    app_info = okta_admin.get_applications_by_user_id(user_info["sub"])
    for item in app_info:
        if "credit Demo (Generated by UDP)" in item["label"]:
            domain = urlparse(
                item["settings"]["oauthClient"]["initiate_login_uri"]).netloc
            crediturl = "https://" + domain

    return render_template("ecommerce/profile.html",
                           id_token=TokenUtil.get_id_token(request.cookies),
                           access_token=TokenUtil.get_access_token(
                               request.cookies),
                           user_info=user_info,
                           user_info2=user_info2,
                           consent=consent,
                           factors=factors,
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           crediturl=crediturl)
Exemplo n.º 2
0
def dealer_myapps_get():
    logger.debug("dealer_myapps_get()")

    CONFIG_GROUP_LOCATION_STARTSWITH = "{0}_".format(get_udp_ns_fieldname(CONFIG_LOCATION))

    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user = okta_admin.get_user(user_info["sub"])
    user_id = user["id"]

    location = ""

    # Find the groups the user belongs to and find the description of the _LOC_* group
    get_user_groups_response = okta_admin.get_user_groups(user_id=user_id)
    for item in get_user_groups_response:
        if item["profile"]["name"].startswith(CONFIG_GROUP_LOCATION_STARTSWITH):
            location = item["profile"]["description"]

    get_apps_response = okta_admin.get_applications_by_user_id(user_id)

    return render_template(
        "{0}/myapps.html".format(get_app_vertical()),
        templatename=get_app_vertical(),
        user_info=user_info,
        config=session[SESSION_INSTANCE_SETTINGS_KEY],
        location=location,
        apps=get_apps_response,
        _scheme=session[SESSION_INSTANCE_SETTINGS_KEY]["app_scheme"])
Exemplo n.º 3
0
def profile():
        user_info = get_user_info()
        okta_admin = OktaAdmin(default_settings)
        user = okta_admin.get_user(user_info["sub"])
        user_group = get_travel_agency_group_by_user(user)
        app_info = okta_admin.get_applications_by_user_id(user["id"])

        return render_template("profile.html", oidc=oidc, applist=app_info, user_info=user_info, config=default_settings, travel_agency_group=user_group)
Exemplo n.º 4
0
def gbac_userapps_mfa():
    logger.debug("gbac_userapps_mfa()")
    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user = okta_admin.get_user(user_info["sub"])
    app_info = okta_admin.get_applications_by_user_id(user["id"])

    return render_template("/userapps.html",
                           user_info=get_userinfo(),
                           templatename=get_app_vertical(),
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           applist=app_info)
Exemplo n.º 5
0
def gbac_registration_state_post(user_id):
    logger.debug("gbac_registration_state_post()")
    logger.debug(request.form.get('password'))
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user_data = okta_admin.get_user(user_id)

    if "errorCode" in user_data:
        logger.error("user_data: {0}".format(user_data))
        return render_template(
            "/registration-state.html",
            userid=user_id,
            templatename=get_app_vertical(), config=session[SESSION_INSTANCE_SETTINGS_KEY],
            error=user_data['errorSummary'])

    user_data["credentials"] = {
        "password": {"value": request.form.get('password')},
        "recovery_question": {
            "question": "Company Name, its Okta.",
            "answer": "Okta"
        }
    }

    logger.debug(user_data)
    user_update_response = okta_admin.update_user(user_id=user_data["id"], user=user_data)

    logger.debug(user_update_response)

    if "errorCode" in user_update_response:
        return render_template(
            "/registration-state.html",
            userid=user_data["id"],
            templatename=get_app_vertical(), config=session[SESSION_INSTANCE_SETTINGS_KEY],
            error=user_update_response['errorCauses'][0]['errorSummary'])

    nresponse = okta_admin.activate_user(user_data["id"], send_email=False)
    logger.debug(nresponse)

    app_already_exists = False
    user_apps = okta_admin.get_applications_by_user_id(user_data["id"])
    for each_app in user_apps:
        if each_app["id"] == session[SESSION_INSTANCE_SETTINGS_KEY]["client_id"]:
            app_already_exists = True

    if not app_already_exists:
        okta_admin.assign_user_to_application(user_data["id"], user_data["profile"]["email"], session[SESSION_INSTANCE_SETTINGS_KEY]["client_id"])

    message = "Registration Complete! Please Login Now!"

    return redirect(url_for("gbac_bp.gbac_login", _external="True", _scheme=session[SESSION_INSTANCE_SETTINGS_KEY]["app_scheme"], message=message))
Exemplo n.º 6
0
def b2b_profile():
    logger.debug("b2b_profile()")
    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user = okta_admin.get_user(user_info["sub"])
    app_info = okta_admin.get_applications_by_user_id(user["id"])

    return render_template("{0}/profile.html".format(get_app_vertical()),
                           templatename=get_app_vertical(),
                           id_token=TokenUtil.get_id_token(request.cookies),
                           access_token=TokenUtil.get_access_token(
                               request.cookies),
                           user_info=get_userinfo(),
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           applist=app_info)
Exemplo n.º 7
0
def credit_mycredit():
    logger.debug("credit_mycredit()")
    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user = okta_admin.get_user(user_info["sub"])
    app_all_info = okta_admin.get_applications_all()
    app_info = okta_admin.get_applications_by_user_id(user["id"])

    return render_template(
        "credit/mycredit.html",
        user_info=get_userinfo(),
        templatename=get_app_vertical(),
        config=session[SESSION_INSTANCE_SETTINGS_KEY],
        applist=app_info,
        applistall=app_all_info, _scheme="https")
Exemplo n.º 8
0
def gbac_apis():
    logger.debug("gbac_apps()")
    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])

    applist = okta_admin.get_applications_by_user_id(user_info["sub"])
    myapplist = []
    for app in applist:
        if ("profile" in app) and ("createdby" in app["profile"]) and (
                user_info["email"] in app["profile"]["createdby"]):
            myapplist.append(app)

    return render_template("/manageapis.html",
                           templatename=get_app_vertical(),
                           user_info=get_userinfo(),
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           applist=myapplist)