Ejemplo n.º 1
0
def ecommerce_emailWorkFlowRequest(group_id):
    logger.debug("emailWorkFlowRequest()")
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])

    activation_link = url_for(
        "ecommerce_views_bp.ecommerce_approvals_get",
        _external=True,
        _scheme=session[SESSION_INSTANCE_SETTINGS_KEY]["app_scheme"])
    # Send Activation Email to the Admin
    subject_admin = "A workflow request was received"
    message_admin = """\
        <p><h1>A new request for access was received.</h1><br>
           The request is awaiting your approval.<br><br>
           Click this link to log into your account and review the request<br><br>
           <a href='{activation_link}'>{activation_link}</a>
        </p>
    """.format(activation_link=activation_link)

    # Find All members that will be notified
    recipients = []
    user_list = okta_admin.get_user_list_by_group_id(group_id)
    for user in user_list:
        recipients.append({"address": user["profile"]["email"]})

    if recipients:
        email_send = Email.send_mail(subject=subject_admin,
                                     message=message_admin,
                                     recipients=recipients)
        return email_send
    else:
        return ''
Ejemplo n.º 2
0
def users():
    user_info = get_user_info()
    okta_admin = OktaAdmin(default_settings)

    token = oidc.get_access_token()
    group_name = TokenUtil.get_single_claim_from_token(token,"tagrp")
    user_group = get_travel_agency_group_by_name(group_name)
    group_id = user_group["id"]

    group_user_list = okta_admin.get_user_list_by_group_id(group_id)
    return render_template("users.html", user_info=user_info, oidc=oidc, userlist= group_user_list, config=default_settings, travel_agency_group=user_group)
Ejemplo n.º 3
0
def gbac_users():
    logger.debug("gbac_users()")
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user_group = gbac_get_group_by_name("everyone")
    group_id = user_group["id"]
    group_user_list = okta_admin.get_user_list_by_group_id(group_id)

    return render_template("/manageusers.html",
                           templatename=get_app_vertical(),
                           user_info=get_userinfo(),
                           userlist=group_user_list,
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           user_group=user_group)
Ejemplo n.º 4
0
def admin_usersadvanced():
    logger.debug("admin_usersadvanced()")
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    user_groups = okta_admin.get_groups_by_name("everyone")
    if len(user_groups) > 0:
        # just grab the first one... there should only be one match for now
        logger.debug(user_groups)
        user_group = user_groups[0]

    group_id = user_group["id"]
    group_user_list = okta_admin.get_user_list_by_group_id(group_id)

    return render_template("/admin/users_advanced.html",
                           templatename=get_app_vertical(),
                           user_info=get_userinfo(),
                           userlist=group_user_list,
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           user_group=user_group)
Ejemplo n.º 5
0
    def emailAllMembersOfGroup(self, group_name, subject, message):
        logger.debug("emailAllMembersOfGroup()")
        okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])

        # Find the Admin Group
        group_list = okta_admin.get_groups_by_name(group_name)
        for group in group_list:
            if group["profile"]["name"] == group_name:
                group_id = group["id"]

        # Find All members that will be notified
        recipients = []
        user_list = okta_admin.get_user_list_by_group_id(group_id)
        for user in user_list:
            recipients.append({"address": user["profile"]["email"]})

        if recipients:
            email_send = Email.send_mail(subject=subject, message=message, recipients=recipients)
            return email_send
Ejemplo n.º 6
0
def gbac_users():
    logger.debug("gbac_users()")
    user_info = get_userinfo()
    okta_admin = OktaAdmin(session[SESSION_INSTANCE_SETTINGS_KEY])
    group_id = request.args.get('group_id')

    if group_id:
        selectedgroup_id = group_id
        user_group = okta_admin.get_group(selectedgroup_id)
    else:
        user_group = gbac_get_group_by_name("everyone")
        selectedgroup_id = user_group["id"]

    group_user_list = okta_admin.get_user_list_by_group_id(selectedgroup_id)
    group_list = okta_admin.get_user_groups(user_info["sub"])

    return render_template("/manageusers.html",
                           templatename=get_app_vertical(),
                           user_info=get_userinfo(),
                           userlist=group_user_list,
                           config=session[SESSION_INSTANCE_SETTINGS_KEY],
                           group_list=group_list,
                           user_group=user_group)