[prev in list] [next in list] [prev in thread] [next in thread]
List: sssd-devel
Subject: =?utf-8?b?W1NTU0Rd?= [sssd PR#5481][synchronized] Tests: 'getent group ldapgroupname' doesn't show
From: aborah-sudo <sssd-github-notification () fedorahosted ! org>
Date: 2021-01-29 6:35:57
Message-ID: gh-SSSD/sssd-5481-2021-6323078d-377e-41c4-8cc0-827ea60cb40d () sssd-github-notification ! fedorahosted ! org
[Download RAW message or body]
[Attachment #2 (unknown)]
URL: https://github.com/SSSD/sssd/pull/5481
Author: aborah-sudo
Title: #5481: Tests: 'getent group ldapgroupname' doesn't show
Action: synchronized
To pull the PR as Git branch:
git remote add ghsssd https://github.com/SSSD/sssd
git fetch ghsssd pull/5481/head:pr5481
git checkout pr5481
["sssd-pr-5481.patch" (sssd-pr-5481.patch)]
From 1ecd5b1bba7200ba3b4fddadcc16056b1834ac5e Mon Sep 17 00:00:00 2001
From: aborah <aborah@localhost.localdomain>
Date: Fri, 29 Jan 2021 11:58:10 +0530
Subject: [PATCH] Tests: getent group ldapgroupname doesn't show any LDAP users
'getent group ldapgroupname' doesn't show
any LDAP users or some LDAP users when
'rfc2307bis' schema is used with SSSD
Verifies: https://github.com/SSSD/sssd/issues/5311
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1817122
---
src/tests/multihost/alltests/test_misc.py | 127 +++++++++++++++++++++-
1 file changed, 125 insertions(+), 2 deletions(-)
diff --git a/src/tests/multihost/alltests/test_misc.py b/src/tests/multihost/alltests/test_misc.py
index 8149496e37..fc364bfa55 100644
--- a/src/tests/multihost/alltests/test_misc.py
+++ b/src/tests/multihost/alltests/test_misc.py
@@ -2,10 +2,9 @@
from __future__ import print_function
import re
-import pytest
import time
import subprocess
-from sssd.testlib.common.utils import sssdTools
+import pytest
from sssd.testlib.common.expect import pexpect_ssh
from sssd.testlib.common.exceptions import SSHLoginException
from sssd.testlib.common.utils import sssdTools, LdapOperations
@@ -225,3 +224,127 @@ def test_0005_getent_homedirectory(self, multihost,
cmd = multihost.client[0].run_command(cmd_getent)
ldap_inst.del_dn(user_dn)
assert ":/:" not in cmd.stdout_text
+
+ @pytest.mark.tier1
+ def test_0006_getent_group(self, multihost,
+ backupsssdconf):
+ """
+ @Title: 'getent group ldapgroupname' doesn't
+ show any LDAP users or some LDAP users when
+ 'rfc2307bis' schema is used with SSSD
+
+ Bugzilla: 1817122
+ """
+ tools = sssdTools(multihost.client[0])
+ domain_name = tools.get_domain_section_name()
+ client = sssdTools(multihost.client[0])
+ domain_params = {'ldap_schema': 'rfc2307bis',
+ 'ldap_group_member': 'uniquemember'}
+ client.sssd_conf(f'domain/{domain_name}', domain_params)
+ multihost.client[0].service_sssd('restart')
+ ldap_uri = 'ldap://%s' % (multihost.master[0].sys_hostname)
+ ds_rootdn = 'cn=Directory Manager'
+ ds_rootpw = 'Secret123'
+ ldap_inst = LdapOperations(ldap_uri, ds_rootdn, ds_rootpw)
+ user_info = {
+ 'ou': 'Unit1'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'Unit2'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=Unit2,ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'users'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=users,ou=Unit2,ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'posix_groups'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=posix_groups,ou=Unit2,' \
+ 'ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'netgroups'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=netgroups,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'services'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=services,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'ou': 'sudoers'.encode('utf-8'),
+ 'objectClass': [b'top', b'organizationalUnit']}
+ user_dn = 'ou=sudoers,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ for i in range(1, 9):
+ user_info = {
+ 'cn': f'user-{i}'.encode('utf-8'),
+ 'objectClass': [b'top', b'posixAccount'],
+ 'uid': f'user-{i}'.encode('utf-8'),
+ 'uidNumber': f'1111{i}'.encode('utf-8'),
+ 'gidNumber': f'1111{i}'.encode('utf-8'),
+ 'homeDirectory': f'/home/user-{i}'.encode('utf-8')}
+ user_dn = f'cn=user-{i},ou=users,ou=Unit2,' \
+ f'ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ for i in range(1, 9):
+ user_info = {
+ 'cn': f'user-{i}'.encode('utf-8'),
+ 'objectClass': [b'top', b'posixGroup'],
+ 'gidNumber': f'1111{i}'.encode('utf-8')}
+ user_dn = f'cn=user-{i},ou=posix_groups,' \
+ f'ou=Unit2,ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ user_info = {
+ 'cn': 'group-1'.encode('utf-8'),
+ 'objectClass': [b'top', b'posixGroup', b'groupOfUniqueNames'],
+ 'gidNumber': '20001'.encode('utf-8'),
+ 'uniqueMember': [
+ b'cn=user-1,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-3,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-5,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-7,ou=users,ou=unit2,ou=unit1,dc=example,dc=test']}
+ user_dn = 'cn=group-1,ou=posix_groups,ou=Unit2,' \
+ 'ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+
+ user_info = {
+ 'cn': 'group-2'.encode('utf-8'),
+ 'objectClass': [b'top', b'posixGroup', b'groupOfUniqueNames'],
+ 'gidNumber': '20002'.encode('utf-8'),
+ 'uniqueMember': [
+ b'cn=user-2,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-4,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-6,ou=users,ou=unit2,ou=unit1,dc=example,dc=test',
+ b'cn=user-8,ou=users,ou=unit2,ou=unit1,dc=example,dc=test']}
+ user_dn = 'cn=group-2,ou=posix_groups,ou=Unit2,' \
+ 'ou=Unit1,dc=example,dc=test'
+ (_, _) = ldap_inst.add_entry(user_info, user_dn)
+ time.sleep(3)
+ cmd = multihost.client[0].run_command("getent group "
+ "group-2@example1")
+ assert "group-2@example1:*:20002:user-2@example1," \
+ "user-4@example1,user-6@example1," \
+ "user-8@example1" in cmd.stdout_text
+ for i in range(1, 9):
+ ldap_inst.del_dn(f'cn=user-{i},ou=posix_groups,ou=Unit2,'
+ f'ou=Unit1,dc=example,dc=test')
+ for i in range(1, 3):
+ ldap_inst.del_dn(f'cn=group-{i},ou=posix_groups,ou=Unit2,'
+ f'ou=Unit1,dc=example,dc=test')
+ for i in range(1, 9):
+ ldap_inst.del_dn(f'cn=user-{i},ou=users,ou=Unit2,'
+ f'ou=Unit1,dc=example,dc=test')
+ for dn_dn in ['netgroups', 'services', 'sudoers']:
+ ldap_inst.del_dn(f'ou={dn_dn},dc=example,dc=test')
+ for dn_dn in ['ou=posix_groups,ou=Unit2,ou=Unit1,dc=example,dc=test',
+ 'ou=users,ou=Unit2,ou=Unit1,dc=example,dc=test',
+ 'ou=Unit2,ou=Unit1,dc=example,dc=test',
+ 'ou=Unit1,dc=example,dc=test']:
+ ldap_inst.del_dn(dn_dn)
[Attachment #4 (text/plain)]
_______________________________________________
sssd-devel mailing list -- sssd-devel@lists.fedorahosted.org
To unsubscribe send an email to sssd-devel-leave@lists.fedorahosted.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedorahosted.org/archives/list/sssd-devel@lists.fedorahosted.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic