Exemple #1
0
def user_radius(request):
    """ User tracker fixture for testing users with radius user name """
    tracker = UserTracker(name=u'radiususer', givenname=u'radiususer',
                          sn=u'radiususer1',
                          ipatokenradiususername=u'radiususer')
    tracker.track_create()
    tracker.attrs.update(
        objectclass=objectclasses.user + [u'ipatokenradiusproxyuser']
    )
    return tracker.make_fixture(request)
Exemple #2
0
def user_radius(request, xmlrpc_setup):
    """ User tracker fixture for testing users with radius user name """
    tracker = UserTracker(name=u'radiususer',
                          givenname=u'radiususer',
                          sn=u'radiususer1',
                          ipatokenradiususername=u'radiususer')
    tracker.track_create()
    tracker.attrs.update(objectclass=objectclasses.user +
                         [u'ipatokenradiusproxyuser'])
    return tracker.make_fixture(request)
Exemple #3
0
def user_npg2(request, group):
    """ User tracker fixture for testing users with no private group """
    tracker = UserTracker(name=u'npguser2', givenname=u'Npguser',
                          sn=u'Npguser2', noprivate=True, gidnumber=1000)
    tracker.track_create()
    del tracker.attrs['mepmanagedentry']
    tracker.attrs.update(
        gidnumber=[u'1000'], description=[], memberof_group=[group.cn],
        objectclass=add_oc(objectclasses.user_base, u'ipantuserattrs')
    )
    return tracker.make_fixture(request)
Exemple #4
0
def user_npg2(request, group):
    """ User tracker fixture for testing users with no private group """
    tracker = UserTracker(name=u'npguser2', givenname=u'Npguser',
                          sn=u'Npguser2', noprivate=True, gidnumber=1000)
    tracker.track_create()
    del tracker.attrs['mepmanagedentry']
    tracker.attrs.update(
        gidnumber=[u'1000'], description=[], memberof_group=[group.cn],
        objectclass=add_oc(objectclasses.user_base, u'ipantuserattrs')
    )
    return tracker.make_fixture(request)
def user_npg(request, group):
    """ User tracker fixture for testing users with no private group """
    tracker = UserTracker(name=u'npguser1', givenname=u'Npguser',
                          sn=u'Npguser1', noprivate=True)
    tracker.track_create()
    del tracker.attrs['mepmanagedentry']
    tracker.attrs.update(
        description=[], memberof_group=[group.cn],
        objectclass=objectclasses.user_base + [u'ipantuserattrs'],
    )
    return tracker.make_fixture(request)
Exemple #6
0
 def test_create_with_ssh_pubkey(self):
     """ Create user with an assigned SSH public key """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test',
         sn=u'Tuser1', ipasshpubkey=sshpubkey
     )
     testuser.track_create()
     # fingerprint is expected in the tracker attrs
     testuser.attrs.update(sshpubkeyfp=[sshpubkeyfp])
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #7
0
 def test_create_with_uid_999(self):
     """ Check that server return uid and gid 999
     when a new client asks for uid 999 """
     testuser = UserTracker(name=u'tuser1',
                            givenname=u'Test',
                            sn=u'Tuser1',
                            uidnumber=999)
     testuser.track_create()
     testuser.attrs.update(uidnumber=[u'999'], gidnumber=[u'999'])
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #8
0
 def test_create_with_ssh_pubkey(self):
     """ Create user with an assigned SSH public key """
     testuser = UserTracker(name=u'tuser1',
                            givenname=u'Test',
                            sn=u'Tuser1',
                            ipasshpubkey=sshpubkey)
     testuser.track_create()
     # fingerprint is expected in the tracker attrs
     testuser.attrs.update(sshpubkeyfp=[sshpubkeyfp])
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #9
0
 def test_create_with_uid_999(self):
     """ Check that server return uid and gid 999
     when a new client asks for uid 999 """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test', sn=u'Tuser1', uidnumber=999
     )
     testuser.track_create()
     testuser.attrs.update(
         uidnumber=[u'999'],
         gidnumber=[u'999']
     )
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #10
0
 def test_create_with_old_DNA_MAGIC_999(self):
     """ Check that server picks suitable uid and gid
     when an old client asks for the magic uid 999 """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test', sn=u'Tuser1',
         uidnumber=999, version=u'2.49'
     )
     testuser.track_create()
     testuser.attrs.update(
         uidnumber=[lambda v: int(v) != 999],
         gidnumber=[lambda v: int(v) != 999],
     )
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #11
0
 def test_create_with_old_DNA_MAGIC_999(self):
     """ Check that server picks suitable uid and gid
     when an old client asks for the magic uid 999 """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test', sn=u'Tuser1',
         uidnumber=999, version=u'2.49'
     )
     testuser.track_create()
     testuser.attrs.update(
         uidnumber=[lambda v: int(v) != 999],
         gidnumber=[lambda v: int(v) != 999],
     )
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #12
0
 def test_create_without_upg_with_gid_set(self):
     """ Create user without User's Primary GID with GID set """
     testuser = UserTracker(name=u'tuser1',
                            givenname=u'Test',
                            sn=u'Tuser1',
                            noprivate=True,
                            gidnumber=1000)
     testuser.track_create()
     del testuser.attrs['mepmanagedentry']
     testuser.attrs.update(gidnumber=[u'1000'])
     testuser.attrs.update(description=[],
                           objectclass=add_oc(objectclasses.user_base,
                                              u'ipantuserattrs'))
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result, [u'description'])
     testuser.delete()
Exemple #13
0
 def test_create_with_random_passwd(self):
     """ Create user with random password """
     testuser = UserTracker(name=u'tuser1',
                            givenname=u'Test',
                            sn=u'Tuser1',
                            random=True)
     testuser.track_create()
     testuser.attrs.update(randompassword=fuzzy_password,
                           has_keytab=True,
                           has_password=True,
                           krbextradata=[Fuzzy(type=bytes)],
                           krbpasswordexpiration=[fuzzy_dergeneralizedtime],
                           krblastpwdchange=[fuzzy_dergeneralizedtime])
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #14
0
 def test_create_without_upg_with_gid_set(self):
     """ Create user without User's Primary GID with GID set """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test', sn=u'Tuser1',
         noprivate=True, gidnumber=1000
     )
     testuser.track_create()
     del testuser.attrs['mepmanagedentry']
     testuser.attrs.update(gidnumber=[u'1000'])
     testuser.attrs.update(
         description=[],
         objectclass=add_oc(objectclasses.user_base, u'ipantuserattrs')
     )
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result, [u'description'])
     testuser.delete()
Exemple #15
0
 def test_create_with_random_passwd(self):
     """ Create user with random password """
     testuser = UserTracker(
         name=u'tuser1', givenname=u'Test', sn=u'Tuser1', random=True
     )
     testuser.track_create()
     testuser.attrs.update(
         randompassword=fuzzy_password,
         has_keytab=True, has_password=True,
         krbextradata=[Fuzzy(type=bytes)],
         krbpasswordexpiration=[fuzzy_dergeneralizedtime],
         krblastpwdchange=[fuzzy_dergeneralizedtime]
     )
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #16
0
 def test_create_with_uid_999(self):
     """ Check that server return uid and gid 999
     when a new client asks for uid 999 """
     testuser = UserTracker(name=u'tuser1',
                            givenname=u'Test',
                            sn=u'Tuser1',
                            uidnumber=999)
     testuser.track_create()
     # When uid is outside of IPA id range, no SID is generated
     del testuser.attrs['ipantsecurityidentifier']
     testuser.attrs.update(uidnumber=[u'999'],
                           gidnumber=[u'999'],
                           objectclass=objectclasses.user_base +
                           ['mepOriginEntry'])
     command = testuser.make_create_command()
     result = command()
     testuser.check_create(result)
     testuser.delete()
Exemple #17
0
    def test_create_without_upg_with_gid_set(self):
        """ Create user without User's Primary GID with GID set

        The UPG plugin is disabled, but the user is provided with a group
        """
        testuser = UserTracker(name=u'tuser1',
                               givenname=u'Test',
                               sn=u'Tuser1',
                               gidnumber=1000)
        testuser.track_create()
        del testuser.attrs['mepmanagedentry']
        testuser.attrs.update(gidnumber=[u'1000'])
        testuser.attrs.update(
            description=[],
            objectclass=objectclasses.user_base + [u'ipantuserattrs'],
        )
        command = testuser.make_create_command()
        result = command()
        testuser.check_create(result, [u'description'])
        testuser.delete()
Exemple #18
0
    def test_create_where_managed_group_exists(self, user, group):
        """ Create a managed group and then try to create user
        with the same name the group has

        As the UPG plugin is disabled, there is no conflict
        """
        group.create()
        testuser = UserTracker(name=group.cn,
                               givenname=u'Test',
                               sn=u'Tuser1',
                               gidnumber=1000)
        testuser.track_create()
        del testuser.attrs['mepmanagedentry']
        testuser.attrs.update(gidnumber=[u'1000'])
        testuser.attrs.update(description=[],
                              objectclass=add_oc(objectclasses.user_base,
                                                 u'ipantuserattrs'))
        command = testuser.make_create_command()
        result = command()
        testuser.check_create(result, [u'description'])
        testuser.delete()