Пример #1
0
def test_delete_password_profile(core_session):
    """
    TC: C281495 - Delete Password Complex Profile
    :param core_session: Authenticates API session
    """
    profile_name_cps = f'Profile {guid()}'
    profile_create_result, profile_create_success = ResourceManager.add_password_profile(
        core_session, profile_name_cps, min_pwd_len=12, max_pwd_len=24)
    assert profile_create_success, f"Profile: {profile_name_cps} failed to create due to {profile_create_result}"
    logger.info(
        f"Profile {profile_name_cps} successfully created and result is {profile_create_result}"
    )
    all_profiles_result, all_profiles_success = ResourceManager.get_profiles(
        core_session, type='All', rr_format=True)
    assert all_profiles_success, f"Failed to get profiles list {all_profiles_result}"
    logger.info(
        f"Successfully get the list of all the profiles {all_profiles_result}")
    cloned_builtin_profile_id = []
    for profile_list in all_profiles_result['Results']:
        if profile_list['Row']['Name'] == profile_name_cps:
            cloned_builtin_profile_id.append(profile_list['Row']['ID'])
    profile_delete_success = ResourceManager.delete_password_profile(
        core_session, cloned_builtin_profile_id[0])
    assert profile_delete_success, f"Failed to delete profile {profile_name_cps}"
    logger.info(f"Successfully deleted password profile {profile_name_cps}")
def test_delete_profile_global_profile_mapping(core_session,
                                               create_basic_pass_profile):
    """
            Test case: C1658
            :param core_session: Returns API session
            :param create_basic_pass_profile: Created a basic password complexity profile.
            """

    # Creating one password complexity profile
    profile = create_basic_pass_profile(core_session, 1)[0]
    cps_prof_id = profile[0]['_RowKey']
    profile_name_cps = profile[0]['Name']

    # Updating the 'Unix' Type with new Password Complexity profile
    result, success = ResourceManager.update_global_pass_profile_mapping(
        core_session, "Unix", cps_prof_id)
    assert success, f"failed to update global password profile mapping {result}"
    logger.info(f"Password complexity profile {profile_name_cps} not deleted")

    # Fetching the global password profile mapping.
    result, success = ResourceManager.get_global_pass_profile_mapping(
        core_session)
    profile_name = []
    for row in result:
        if row['_RowKey'] == cps_prof_id:
            profile_name.append(row['Name'])
    assert profile_name_cps == profile_name[
        0], f"profile name is not updated with the Type of global profile mapping {result}"

    resp = ResourceManager.delete_password_profile(core_session, cps_prof_id)
    assert resp is False, f"Password complexity profile {profile_name_cps} deleted"
    logger.info(f"Password complexity profile {profile_name_cps} not deleted")
def test_activity_about_password_profiles(core_session,
                                          create_basic_pass_profile):
    """
    Test case: C1665
        :param core_session: Centrify session
        :param create_basic_pass_profile: Created a basic password complexity profile.
    """
    # Creating basic password profile.
    profile = create_basic_pass_profile(core_session, 1, 8)[0]
    cps_prof_id = profile[0]['_RowKey']
    profile_name_cps = profile[0]['Name']
    username = core_session.__dict__["auth_details"]["User"]
    cps_prof_result, cps_prof_succcess = ResourceManager.get_password_profile_by_id(
        core_session, cps_prof_id)

    # Checking the created custom password complexity profile.
    assert cps_prof_succcess, f"Getting Password Profile Failed for Profile {cps_prof_id} for core user"
    logger.info(
        f"Password profile created successfully with {cps_prof_result}")
    profile_delete = ResourceManager.delete_password_profile(
        core_session, cps_prof_id)

    # Deleting the custom password complexity profile.
    assert profile_delete, f"Password complexity profile {profile_name_cps} not deleted"
    logger.info(
        f"Password complexity profile {profile_name_cps} deleted successfully")
    recent_activity = ResourceManager.get_recent_activity(core_session)

    # Get recent activity details and finding the recent delete activity.
    recent_activity_list = []
    for column in range(len(recent_activity)):
        if recent_activity[column]["Row"]["Detail"].__contains__(
                "deleted password profile"):
            recent_activity_list.append(
                recent_activity[column]["Row"]["Detail"])
    assert f'{username} deleted password profile "{profile_name_cps}"' == recent_activity_list[0], \
        f'Could not find the related activity about password profile deletion {recent_activity}'
    logger.info(
        f'Could find the related activity about password profile deletion {recent_activity_list}'
    )

    # Getting the recent administration activity details.
    admin_report = ReportsManager.get_administration_activity(core_session,
                                                              system_name=None)
    recent_admin_activity_list = []
    for column in range(len(admin_report)):
        if admin_report[column]["Detail"].__contains__(
                "deleted password profile"):
            recent_admin_activity_list.append(admin_report[column]["Detail"])
    assert f'{username} deleted password profile "{profile_name_cps}"' == recent_admin_activity_list[0], \
        f'Could not find the related activity about password profile deletion {recent_activity}'
    logger.info(
        f'Could find the related activity about password profile deletion {admin_report}'
    )
def test_apply_profile_not_exist(core_session, pas_setup,
                                 create_basic_pass_profile, core_admin_ui):
    """
        Test case: C1657
        :param core_session: Centrify session.
        :param core_admin_ui: Centrify admin Ui session
        :param pas_setup: Creates System and Account
        :param create_basic_pass_profile: Created a basic password complexity profile.
        """
    # Creating windows system.
    System_id, account_id, sys_info = pas_setup
    system_name = sys_info[0]
    fqdn = sys_info[1]
    logger.info(f"Created windows system {system_name} with fqdn {fqdn}")

    # Creating a basic password profile
    profile = create_basic_pass_profile(core_session, 1)[0]
    cps_prof_id = profile[0]['_RowKey']
    profile_name_cps = profile[0]['Name']
    logger.info(
        f"Created password profile {profile_name_cps} with id {cps_prof_id}")

    # ui starts from here.
    ui = core_admin_ui
    ui.navigate('Resources', 'Systems')
    ui.search(system_name)
    ui.click_row(system_name)
    ui.tab('Advanced')
    ui.select_option("PasswordProfileID", profile_name_cps)
    ui.switch_context(ConfirmModal())
    ui.close_modal('Continue')
    ResourceManager.delete_password_profile(core_session, cps_prof_id)
    ui.button("Save")
    ui.expect(
        Div("Password profile is not found."),
        f"'password profile {profile_name_cps} already deleted' error popup not appeared"
    )
    logger.info(
        f"password profile {profile_name_cps} with id {cps_prof_id} deleted")
Пример #5
0
def test_delete_password_complex_profile(core_session, core_admin_ui, create_basic_pass_profile):
    """
        Test case: C1634
        :param core_session: Centrify session
        :param core_admin_ui: Creates random user and login in browser.
        :param create_basic_pass_profile: Created a basic password complexity profile.
        """
    ui = core_admin_ui
    ui.navigate("Settings", "Resources", "Password Profiles")
    profile = create_basic_pass_profile(core_session, 1, 8)[0]
    cps_prof_id = profile[0]['_RowKey']
    profile_name_cps = profile[0]['Name']
    cps_prof_result, cps_prof_succcess = ResourceManager.get_password_profile_by_id(core_session, cps_prof_id)
    # Checking the created custom password complexity profile.
    assert cps_prof_succcess, f"Getting Password Profile Failed for Profile {cps_prof_id} for core user"
    logger.info(f"Password profile created successfully with {cps_prof_result}")
    profile_delete = ResourceManager.delete_password_profile(core_session, cps_prof_id)
    # Deleting the custom password complexity profile.
    assert profile_delete, f"Password complexity profile {profile_name_cps} not deleted"
    logger.info(f"Password complexity profile {profile_name_cps} deleted successfully")