def test_start_tls_extension(self): if not self.connection.strategy.no_real_dsa: connection = get_connection(use_ssl=False) connection.server.tls = Tls() result = connection.start_tls() self.assertTrue(result) connection.unbind()
def test_bind_anonymous(self): connection = get_connection(bind=False, lazy_connection=False, authentication=ANONYMOUS) connection.open() connection.bind() self.assertTrue(connection.bound) drop_connection(connection) self.assertFalse(connection.bound)
def test_modify_password_as_administrator(self): if test_server_type == "AD": self.delete_at_teardown.append( add_user( self.connection, testcase_id, "changed-password-1", attributes={"givenName": "changed-password-1"} ) ) dn = self.delete_at_teardown[-1][0] # test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, 'Rc1234abcd')) # test_connection.bind() # self.assertTrue(test_connection.bound) # connected_user = test_connection.extend.standard.who_am_i() # test_connection.unbind() # self.assertTrue('changed-password-1' in connected_user) new_password = "******" result = self.connection.extend.microsoft.modify_password(dn, new_password) self.assertEqual(result, True) # creates a second connection and tries to bind with the new password test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, new_password)) test_connection.bind() connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue("changed-password-1" in connected_user)
def test_bind_clear_text(self): connection = get_connection(bind=False) connection.open() connection.bind() self.assertTrue(connection.bound) drop_connection(connection) self.assertFalse(connection.bound)
def test_bind_ssl_cert_none(self): connection = get_connection(bind=False, use_ssl=True) connection.open() connection.bind() self.assertTrue(connection.bound) drop_connection(connection) self.assertFalse(connection.bound)
def test_bind_sasl_digest_md5_to_secondary_sasl_user(self): connection = get_connection( bind=False, authentication=SASL, sasl_mechanism=DIGEST_MD5, sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = str(connection.extend.standard.who_am_i()) self.assertEqual(connected_user, test_sasl_user_dn) if connection.rebind( authentication=SASL, sasl_mechanism=DIGEST_MD5, sasl_credentials=(test_sasl_realm, test_sasl_secondary_user, test_sasl_secondary_password, None)): if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = connection.extend.standard.who_am_i() self.assertEqual(connected_user, test_sasl_secondary_user_dn) else: self.fail('secondary user sasl authentication failed') drop_connection(connection) self.assertFalse(connection.bound)
def test_modify_password_as_normal_user(self): if test_server_type == 'AD': old_password = '******' new_password = '******' self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'changed-password-2', password=old_password, attributes={'givenName': 'changed-password-2'})) dn = self.delete_at_teardown[-1][0] # creates a second connection and tries to bind with the new password test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, old_password)) test_connection.bind() self.assertTrue(test_connection.bound) connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('changed-password-2' in connected_user) # changee the password result = self.connection.extend.microsoft.modify_password( dn, new_password, old_password) self.assertEqual(result, True) # tries to bind with the new password test_connection.password = new_password test_connection.bind() connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('changed-password-2' in connected_user)
def test_bind_sasl_digest_md5(self): connection = get_connection(bind=False, authentication=SASL, sasl_mechanism='DIGEST-MD5', sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) drop_connection(connection) self.assertFalse(connection.bound)
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'ldif-content-1')) self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'ldif-content-2'))
def test_modify_password_as_administrator(self): if test_server_type == 'AD': self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'changed-password-1', attributes={'givenName': 'changed-password-1'})) dn = self.delete_at_teardown[-1][0] # test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, 'Rc1234abcd')) # test_connection.bind() # self.assertTrue(test_connection.bound) # connected_user = test_connection.extend.standard.who_am_i() # test_connection.unbind() # self.assertTrue('changed-password-1' in connected_user) new_password = '******' result = self.connection.extend.microsoft.modify_password( dn, new_password) self.assertEqual(result, True) # creates a second connection and tries to bind with the new password test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, new_password)) test_connection.bind() connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('changed-password-1' in connected_user)
def test_modify_password_as_normal_user(self): if test_server_type == 'AD': old_password = '******' new_password = '******' self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'changed-password-2', password=old_password, attributes={'givenName': 'changed-password-2'})) dn = self.delete_at_teardown[-1][0] # creates a second connection and tries to bind with the new password test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, old_password)) test_connection.bind() self.assertTrue(test_connection.bound) connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('changed-password-2' in connected_user) # changee the password result = self.connection.extend.microsoft.modify_password(dn, new_password, old_password) self.assertEqual(result, True) # tries to bind with the new password test_connection.password = new_password test_connection.bind() connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('changed-password-2' in connected_user)
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'compare-1', attributes={'givenName': 'compare'}))
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'modify-1', attributes={'givenName': 'givenname-1'}))
def setUp(self): self.connection = get_connection(check_names=True, get_info=ALL) self.delete_at_teardown = [] if test_server_type == 'EDIR': self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'checked-attributes-1', attributes={'loginGraceLimit': 0})) elif test_server_type == 'AD': self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'checked-attributes-1')) else: self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'checked-attributes-1'))
def setUp(self): self.connection = get_connection(use_ssl=True) self.delete_at_teardown = [] if test_server_type == "AD": self.delete_at_teardown.append( add_user(self.connection, testcase_id, "search-1", attributes={"givenName": "givenname-1"}) ) self.delete_at_teardown.append( add_user(self.connection, testcase_id, "search-2", attributes={"givenName": "givenname-2"}) )
def test_ntlm(self): if test_server_type == 'AD': connection = get_connection(bind=False, authentication=NTLM, ntlm_credentials=(test_ntlm_user, test_ntlm_password)) connection.open() connection.bind() self.assertTrue(connection.bound) connected_user = str(connection.extend.standard.who_am_i())[2:] self.assertEqual(connected_user, test_ntlm_user) drop_connection(connection) self.assertFalse(connection.bound)
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-1')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-2')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-3')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-4')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-5')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-6')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-7')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'paged_search-8'))
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-1")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-2")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-3")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-4")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-5")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-6")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-7")) self.delete_at_teardown.append(add_user(self.connection, testcase_id, "paged_search-8"))
def test_bind_sasl_digest_md5(self): connection = get_connection(bind=False, authentication=SASL, sasl_mechanism='DIGEST-MD5', sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = str(connection.extend.standard.who_am_i()) self.assertEqual(connected_user, test_sasl_user) drop_connection(connection) self.assertFalse(connection.bound)
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] if test_server_type == 'EDIR': self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-1', attributes={'givenName': 'givenname-1', test_int_attr: 0})) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-2', attributes={'givenName': 'givenname-2', test_int_attr: 0})) elif test_server_type == 'AD': self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-2', attributes={'givenName': 'givenname-2'})) else: self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-2', attributes={'givenName': 'givenname-2'}))
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] if test_server_type == 'EDIR': self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-1', attributes={ 'givenName': 'givenname-1', test_int_attr: 0 })) self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-2', attributes={ 'givenName': ['givenname-2a', 'givenname-2b', 'givenname-2c'], test_int_attr: 0, 'preferredDeliveryMethod': 'any' })) elif test_server_type == 'AD': self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-2', attributes={ 'givenName': ['givenname-2a', 'givenname-2b', 'givenname-2c'] })) else: self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-and-modify-2', attributes={ 'givenName': ['givenname-2a', 'givenname-2b', 'givenname-2c'] }))
def test_bind_anonymous_to_secondary_user(self): connection = get_connection(bind=True, lazy_connection=False, authentication=ANONYMOUS) self.assertTrue(connection.bound) connection.rebind(test_secondary_user, test_secondary_password) if test_server_type == 'EDIR': bound_dn = connection.extend.novell.get_bind_dn() else: bound_dn = connection.extend.standard.who_am_i() self.assertTrue(test_secondary_user in bound_dn) drop_connection(connection) self.assertFalse(connection.bound)
def test_start_tls_extension(self): if test_server_type == 'AD': # already in tls old_connection = self.connection self.connection = get_connection(bind=AUTO_BIND_NO_TLS) self.connection.server.tls = Tls() result = self.connection.extended('1.3.6.1.4.1.1466.20037') if not self.connection.strategy.sync: _, result = self.connection.get_response(result) else: result = self.connection.result if test_server_type == 'AD': self.connection = old_connection self.assertEqual(result['description'], 'success')
def test_bind_clear_text_to_secondary_user(self): connection = get_connection() self.assertTrue(connection.bound) connection.rebind(test_secondary_user, test_secondary_password) if test_server_type == 'EDIR': bound_dn = connection.extend.novell.get_bind_dn() else: bound_dn = connection.extend.standard.who_am_i() self.assertTrue(test_secondary_user in bound_dn) drop_connection(connection) self.assertFalse(connection.bound)
def test_modify_existing_password_as_administrator(self): if test_server_type == 'AD': # self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'changed-password-1', attributes={'givenName': 'changed-password-1'})) # dn = self.delete_at_teardown[-1][0] dn = 'CN=Test Uno,CN=Users,DC=TESTAD,DC=LAB' new_password = '******' result = self.connection.extend.microsoft.modify_password(dn, new_password) self.assertEqual(result, True) # creates a second connection and tries to bind with the new password test_connection = get_connection(bind=False, authentication=SIMPLE, simple_credentials=(dn, new_password)) test_connection.bind() connected_user = test_connection.extend.standard.who_am_i() test_connection.unbind() self.assertTrue('testuno' in connected_user)
def test_bind_sasl_digest_md5(self): if test_strategy not in [MOCK_SYNC, MOCK_ASYNC]: connection = get_connection(bind=False, authentication=SASL, sasl_mechanism=DIGEST_MD5, sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) if not connection.strategy.pooled: if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = str(connection.extend.standard.who_am_i()) self.assertEqual(connected_user, test_sasl_user_dn) drop_connection(connection) self.assertFalse(connection.bound)
def setUp(self): if test_server_type == 'AD': self.connection = get_connection(use_ssl=True) self.delete_at_teardown = [] self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'search-2', attributes={'givenName': 'givenname-2'}))
def test_bind_sasl_digest_md5(self): connection = get_connection( bind=False, authentication=SASL, sasl_mechanism='DIGEST-MD5', sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = str(connection.extend.standard.who_am_i()) self.assertEqual(connected_user, test_sasl_user) drop_connection(connection) self.assertFalse(connection.bound)
def test_bind_sasl_digest_md5(self): if test_strategy not in [MOCK_SYNC, MOCK_ASYNC]: connection = get_connection( bind=False, authentication=SASL, sasl_mechanism=DIGEST_MD5, sasl_credentials=(test_sasl_realm, test_sasl_user, test_sasl_password, None)) connection.open() connection.bind() self.assertTrue(connection.bound) if not connection.strategy.pooled: if test_server_type == 'EDIR': connected_user = connection.extend.novell.get_bind_dn() else: connected_user = str(connection.extend.standard.who_am_i()) self.assertEqual(connected_user, test_sasl_user_dn) drop_connection(connection) self.assertFalse(connection.bound)
def setUp(self): self.connection = get_connection(get_info=OFFLINE_EDIR_8_8_8)
def setUp(self): if test_server_type == 'AD': self.connection = get_connection(use_ssl=True) self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-1', attributes={'givenName': 'givenname-1'})) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'search-2', attributes={'givenName': 'givenname-2'}))
def setUp(self): self.connection = get_connection() self.delete_at_teardown = []
def test_start_tls_extension(self): connection = get_connection(use_ssl=False) connection.server.tls = Tls() result = connection.start_tls() self.assertTrue(result) connection.unbind()
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'modify-1', attributes={'givenName': 'givenname-1'}))
def setUp(self): self.connection = get_connection(get_info=ALL, lazy_connection=False) self.delete_at_teardown = []
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append( add_user(self.connection, testcase_id, 'delete-1'))
def setUp(self): self.connection = get_connection(check_names=True, get_info=ALL) self.delete_at_teardown = []
def setUp(self): self.connection = get_connection()
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'compare-1', attributes={'givenName': 'compare'}))
def setUp(self): self.connection = get_connection(bind=False)
def setUp(self): self.connection = get_connection(check_names=True)
def setUp(self): self.connection = get_connection(use_ssl=True) self.delete_at_teardown = []
def setUp(self): self.connection = get_connection(check_names=True) self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'delete-1'))
def setUp(self): if test_server_type == 'AD': self.connection = get_connection(use_ssl=True) self.delete_at_teardown = []
def setUp(self): self.connection = get_connection() self.delete_at_teardown = [] self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'ldif-content-1')) self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'ldif-content-2'))