xref: /freebsd/crypto/krb5/src/lib/kadm5/t_kadm5.py (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1from k5test import *
2
3# Specify a supported_enctypes so the chpass tests know what to expect.
4supported_enctypes = 'aes256-cts:normal aes128-cts:normal'
5conf = {'realms': {'$realm': {'supported_enctypes': supported_enctypes}}}
6realm = K5Realm(create_user=False, create_host=False, kdc_conf=conf)
7
8with open(os.path.join(realm.testdir, 'acl'), 'w') as f:
9    f.write('''
10admin                   admcilse
11admin/get               il
12admin/modify            mc
13admin/delete            d
14admin/add               a
15admin/rename            adil
16''')
17
18with open(os.path.join(realm.testdir, 'dictfile'), 'w') as f:
19    f.write('''
20Abyssinia
21Discordianism
22foo
23''')
24
25realm.start_kadmind()
26
27realm.run([kadminl, 'addpol', '-maxlife', '10000s', '-minlength', '8',
28           '-minclasses', '2', '-maxfailure', '2',
29           '-failurecountinterval', '90s', '-lockoutduration', '180s',
30           'test-pol'])
31realm.run([kadminl, 'addpol', '-minlife', '10s', 'minlife-pol'])
32realm.run([kadminl, 'addpol', 'dict-only-pol'])
33realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin'])
34realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/get'])
35realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/modify'])
36realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/delete'])
37realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/add'])
38realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/rename'])
39realm.run([kadminl, 'addprinc', '-pw', 'admin', 'admin/none'])
40realm.run([kadminl, 'addprinc', '-pw', 'us3r', '-policy', 'minlife-pol',
41           'user'])
42
43realm.run(['./t_kadm5srv', 'srv'])
44realm.run(['./t_kadm5clnt', 'clnt'])
45success('kadm5 API tests')
46