Ejemplo n.º 1
0
def test_positive_automate_bz1426957(ldap_auth_source, function_user_group):
    """Verify role is properly reflected on AD user.

    :id: 1c1209a6-5bb8-489c-a151-bb2fce4dbbfc

    :expectedresults: Roles from usergroup is applied on AD user successfully.

    :CaseLevel: Integration

    :BZ: 1426957, 1667704
    """
    ext_user_group = make_usergroup_external({
        'auth-source-id':
        ldap_auth_source['id'],
        'user-group-id':
        function_user_group['id'],
        'name':
        'foobargroup',
    })
    assert ext_user_group['auth-source'] == ldap_auth_source['ldap_hostname']
    role = make_role()
    UserGroup.add_role({
        'id': function_user_group['id'],
        'role-id': role['id']
    })
    Task.with_user(username=ldap_auth_source['user_name'],
                   password=ldap_auth_source['user_password']).list()
    UserGroupExternal.refresh({
        'user-group-id': function_user_group['id'],
        'name': 'foobargroup'
    })
    assert role['name'] in User.info({'login': ldap_auth_source['user_name']
                                      })['user-groups']
    User.delete({'login': ldap_auth_source['user_name']})
Ejemplo n.º 2
0
    def test_rhsso_timeout_using_hammer(
        self,
        enable_external_auth_rhsso,
        rhsso_setting_setup_with_timeout,
        rh_sso_hammer_auth_setup,
    ):
        """verify the hammer auth timeout using RHSSO auth source

        :id: d014cc98-d198-11ea-b526-d46d6dd3b5b2

        :expectedresults: hammer auth login timeout should be suceessful for a rhsso user

        :CaseImportance: Medium
        """
        result = AuthLogin.oauth({
            'oidc-token-endpoint':
            get_oidc_token_endpoint(),
            'oidc-client-id':
            get_oidc_client_id(),
            'username':
            settings.rhsso.rhsso_user,
            'password':
            settings.rhsso.password,
        })
        assert f"Successfully logged in as '{settings.rhsso.rhsso_user}'." == result[
            0]['message']
        sleep(70)
        with pytest.raises(CLIReturnCodeError) as error:
            Task.with_user(username=settings.rhsso.rhsso_user,
                           password=settings.rhsso.password).list()
        assert 'Unable to authenticate user sat_admin' in error.value.message
Ejemplo n.º 3
0
    def test_positive_automate_bz1426957(self):
        """Verify role is properly reflected on AD user.

        :id: 1c1209a6-5bb8-489c-a151-bb2fce4dbbfc

        :expectedresults: Roles from usergroup is applied on AD user successfully.

        :CaseLevel: Integration

        :BZ: 1426957, 1667704
        """
        ext_user_group = make_usergroup_external(
            {
                'auth-source-id': self.auth['server']['id'],
                'user-group-id': self.user_group['id'],
                'name': 'foobargroup',
            }
        )
        self.assertEqual(ext_user_group['auth-source'], self.auth['server']['name'])
        role = make_role()
        UserGroup.add_role({'id': self.user_group['id'], 'role-id': role['id']})
        with self.assertNotRaises(CLIReturnCodeError):
            Task.with_user(username=self.ldap_user_name, password=self.ldap_user_passwd).list()
            UserGroupExternal.refresh(
                {'user-group-id': self.user_group['id'], 'name': 'foobargroup'}
            )
        self.assertEqual(User.info({'login': self.ldap_user_name})['user-groups'][1], role['name'])
        User.delete({'login': self.ldap_user_name})
Ejemplo n.º 4
0
    def test_positive_automate_bz1426957(self):
        """Verify role is properly reflected on AD user.

        :id: 1c1209a6-5bb8-489c-a151-bb2fce4dbbfc

        :expectedresults: Roles from usergroup is applied on AD user successfully.

        :CaseLevel: Integration

        :BZ: 1426957
        """
        ext_user_group = make_usergroup_external({
            'auth-source-id': self.auth['server']['id'],
            'user-group-id': self.user_group['id'],
            'name': 'foobargroup'
        })
        self.assertEqual(
            ext_user_group['auth-source'], self.auth['server']['name']
        )
        role = make_role()
        UserGroup.add_role({'id': self.user_group['id'], 'role-id': role['id']})
        with self.assertNotRaises(CLIReturnCodeError):
            Task.with_user(username=self.ldap_user_name, password=self.ldap_user_passwd).list()
            UserGroupExternal.refresh({
                'user-group-id': self.user_group['id'],
                'name': 'foobargroup'
            })
        self.assertEqual(User.info({'login': self.ldap_user_name})['user-groups'][1],
                         role['name'])
        User.delete({'login': self.ldap_user_name})
Ejemplo n.º 5
0
    def test_rhsso_login_using_hammer(self, enable_external_auth_rhsso,
                                      rhsso_setting_setup,
                                      rh_sso_hammer_auth_setup):
        """verify the hammer auth login using RHSSO auth source

        :id: 56c09a1a-d0e5-11ea-9024-d46d6dd3b5b2

        :expectedresults: hammer auth login should be suceessful for a rhsso user

        :CaseImportance: High
        """
        result = AuthLogin.oauth({
            'oidc-token-endpoint':
            get_oidc_token_endpoint(),
            'oidc-client-id':
            get_oidc_client_id(),
            'username':
            settings.rhsso.rhsso_user,
            'password':
            settings.rhsso.password,
        })
        assert f"Successfully logged in as '{settings.rhsso.rhsso_user}'." == result[
            0]['message']
        result = Auth.with_user(username=settings.rhsso.rhsso_user,
                                password=settings.rhsso.password).status()
        assert (
            f"Session exists, currently logged in as '{settings.rhsso.rhsso_user}'."
            == result[0]['message'])
        task_list = Task.with_user(username=settings.rhsso.rhsso_user,
                                   password=settings.rhsso.password).list()
        assert len(task_list) >= 0
        with pytest.raises(CLIReturnCodeError) as error:
            Role.with_user(username=settings.rhsso.rhsso_user,
                           password=settings.rhsso.password).list()
        assert 'Missing one of the required permissions' in error.value.message