vuls: init at 0.27.0
[NixPkgs.git] / nixos / tests / kerberos / heimdal.nix
blob098080a84592e728017f6dc5f350f4e7d5d43dac
1 import ../make-test-python.nix ({pkgs, ...}: {
2   name = "kerberos_server-heimdal";
4   nodes.machine = { config, libs, pkgs, ...}:
5   { services.kerberos_server =
6     { enable = true;
7       settings.realms = {
8         "FOO.BAR".acl = [{principal = "admin"; access = ["add" "cpw"];}];
9       };
10     };
11     security.krb5 = {
12       enable = true;
13       package = pkgs.heimdal;
14       settings = {
15         libdefaults = {
16           default_realm = "FOO.BAR";
17         };
18         realms = {
19           "FOO.BAR" = {
20             admin_server = "machine";
21             kdc = "machine";
22           };
23         };
24       };
25     };
26   };
28   testScript = ''
29     machine.succeed(
30         "kadmin -l init --realm-max-ticket-life='8 day' --realm-max-renewable-life='10 day' FOO.BAR",
31         "systemctl restart kadmind.service kdc.service",
32     )
34     for unit in ["kadmind", "kdc", "kpasswdd"]:
35         machine.wait_for_unit(f"{unit}.service")
37     machine.succeed(
38         "kadmin -l add --password=admin_pw --use-defaults admin",
39         "kadmin -l ext_keytab --keytab=admin.keytab admin",
40         "kadmin -p admin -K admin.keytab add --password=alice_pw --use-defaults alice",
41         "kadmin -l ext_keytab --keytab=alice.keytab alice",
42         "kinit -kt alice.keytab alice",
43     )
44   '';
46   meta.maintainers = [ pkgs.lib.maintainers.dblsaiko ];