示例#1
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     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'))
示例#2
0
 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()
示例#3
0
 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)
示例#4
0
 def test_bind_cleartext(self):
     connection = get_connection(bind=False)
     connection.open()
     connection.bind()
     self.assertTrue(connection.bound)
     drop_connection(connection)
     self.assertFalse(connection.bound)
示例#5
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
     self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'controls-1', attributes={'givenName': 'given name-1'}))
     self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'controls-2', attributes={'givenName': 'given name-2'}))
     self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'controls-3', attributes={'givenName': 'given name-3'}))
示例#6
0
 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)
示例#7
0
 def test_modify_existing_password_as_administrator(self):
     if test_server_type == 'AD' and test_strategy != REUSABLE:
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'pwd-3', attributes={'givenName': 'pwd-3'}))
         dn = self.delete_at_teardown[-1][0]
         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('pwd-3' in connected_user)
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
     if test_server_type == 'EDIR':
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-1', attributes={test_multivalued_attribute: 'givenname-1', test_int_attr: 0}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-2', attributes={test_multivalued_attribute: ['givenname-2a', 'givenname-2b', 'givenname-2c'], test_int_attr: 0, test_singlevalued_attribute: 'init'}))
     elif test_server_type == 'AD':
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-1', attributes={test_multivalued_attribute: 'givenname-1'}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-2', attributes={test_multivalued_attribute: ['givenname-2a', 'givenname-2b', 'givenname-2c'], test_singlevalued_attribute: 'init'}))
     else:
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-1', attributes={test_multivalued_attribute: 'givenname-1'}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'mod-2', attributes={test_multivalued_attribute: ['givenname-2a', 'givenname-2b', 'givenname-2c'], test_singlevalued_attribute: 'init'}))
示例#9
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
     if test_server_type == 'EDIR':
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'sea-1', attributes={'givenName': 'givenname-1', test_int_attr: 0}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'sea-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, 'sea-1', attributes={'givenName': 'givenname-1'}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'sea-2', attributes={'givenName': 'givenname-2'}))
     else:
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'sea-1', attributes={'givenName': 'givenname-1'}))
         self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'sea-2', attributes={'givenName': 'givenname-2'}))
示例#10
0
 def test_bind_sasl_digest_md5(self):
     if test_server_type not in ['AD', 'SLAPD'] and 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)
示例#11
0
    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()

        if bound_dn:
            if '\\' in bound_dn:  # for Active Directory
                domain, _, name = bound_dn.replace('u:', '').partition('\\')
                self.assertTrue(domain in test_secondary_user)
                self.assertTrue(name in test_secondary_user)
            else:
                self.assertTrue(test_secondary_user in bound_dn)
        else:
            self.fail('no user dn in extended response')

        drop_connection(connection)
        self.assertFalse(connection.bound)
示例#12
0
    def test_bind_sasl_digest_md5_to_secondary_sasl_user(self):
        if test_server_type not in ['AD', 'SLAPD']:
            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)
示例#13
0
 def setUp(self):
     self.connection = get_connection(check_names=True)
示例#14
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     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'}))
示例#15
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection(check_names=True)
     self.delete_at_teardown = []
     self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'delete-1'))
示例#16
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection(get_info=ALL, bind=True)
     self.delete_at_teardown = []
示例#17
0
 def setUp(self):
     self.connection = get_connection(bind=False)
示例#18
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     if test_server_type == 'AD-RAAB':
         self.connection = get_connection(use_ssl=True)
         self.delete_at_teardown = []
示例#19
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection(check_names=False, get_info=ALL)
     self.delete_at_teardown = []
示例#20
0
 def setUp(self):
     self.connection = get_connection(get_info=ALL, lazy_connection=False)
     self.delete_at_teardown = []
示例#21
0
 def test_bind_anonymous(self):
     connection = get_connection(bind=True, lazy_connection=False, authentication=ANONYMOUS)
     self.assertTrue(connection.bound)
     drop_connection(connection)
     self.assertFalse(connection.bound)
示例#22
0
 def setUp(self):
     self.connection = get_connection(get_info=OFFLINE_EDIR_9_1_4)
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     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'}))
示例#24
0
 def setUp(self):
     self.connection = get_connection(bind=False)
示例#25
0
 def setUp(self):
     self.connection = get_connection(get_info=OFFLINE_EDIR_8_8_8)
示例#26
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection(check_names=False, get_info=ALL)
     self.delete_at_teardown = []
示例#27
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection(check_names=True)
     self.delete_at_teardown = []
     self.delete_at_teardown.append(add_user(self.connection, testcase_id, 'delete-1'))
示例#28
0
 def test_bind_anonymous(self):
     connection = get_connection(bind=True, lazy_connection=False, authentication=ANONYMOUS)
     self.assertTrue(connection.bound)
     drop_connection(connection)
     self.assertFalse(connection.bound)
示例#29
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     if test_server_type == 'AD':
         self.connection = get_connection(use_ssl=True)
         self.delete_at_teardown = []
示例#30
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
示例#31
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
示例#32
0
 def setUp(self):
     self.connection = get_connection(get_info=ALL, lazy_connection=False)
     self.delete_at_teardown = []
示例#33
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
     if test_server_type == 'EDIR':
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-1',
                      attributes={
                          'givenName': 'givenname-1',
                          test_int_attr: 0
                      }))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-2',
                      attributes={
                          'givenName': 'givenname-2',
                          test_int_attr: 0
                      }))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-3-\u2122',
                      attributes={
                          'givenName': 'givenname-3',
                          test_int_attr: 0
                      }))  # TRADE-MARK SIGN
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-4-�����',
                      attributes={
                          'givenName': 'givenname-4',
                          test_int_attr: 0
                      }))
     elif test_server_type == 'AD':
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-1',
                      attributes={'givenName': 'givenname-1'}))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-2',
                      attributes={'givenName': 'givenname-2'}))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-3-\u2122',
                      attributes={'givenName':
                                  'givenname-3'}))  # TRADE-MARK SIGN
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-4-�����',
                      attributes={'givenName': 'givenname-4'}))
     else:
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-1',
                      attributes={'givenName': 'givenname-1'}))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      'sea-2',
                      attributes={'givenName': 'givenname-2'}))
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-3-\u2122',
                      attributes={'givenName':
                                  'givenname-3'}))  # TRADE-MARK SIGN
         self.delete_at_teardown.append(
             add_user(self.connection,
                      testcase_id,
                      u'sea-4-�����',
                      attributes={
                          'givenName': 'givenname-4',
                          test_int_attr: 0
                      }))
示例#34
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()
     self.delete_at_teardown = []
示例#35
0
 def setUp(self):
     global testcase_id
     testcase_id = random_id()
     self.connection = get_connection()