]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
tests/krb5: Keep track of account SIDs
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Tue, 13 Jun 2023 23:21:43 +0000 (11:21 +1200)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 14 Jun 2023 22:57:35 +0000 (22:57 +0000)
This prevents having to look them up in the database when tests need
them.

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/tests/krb5/kdc_base_test.py
python/samba/tests/krb5/raw_testcase.py

index e2d328d1dc705505fb1350a4dc67d2b0fac7495b..774cf24bffae98cd677ed09ea20317f2441e34a8 100644 (file)
@@ -911,12 +911,19 @@ class KDCBaseTest(TestCaseInTempDir, RawKerberosTest):
 
         res = samdb.search(base=dn,
                            scope=ldb.SCOPE_BASE,
-                           attrs=['msDS-KeyVersionNumber'])
+                           attrs=['msDS-KeyVersionNumber',
+                                  'objectSid'])
+
         kvno = res[0].get('msDS-KeyVersionNumber', idx=0)
         if kvno is not None:
             self.assertEqual(int(kvno), expected_kvno)
         creds.set_kvno(expected_kvno)
 
+        sid = res[0].get('objectSid', idx=0)
+        sid = samdb.schema_format_value('objectSID', sid)
+        sid = sid.decode('utf-8')
+        creds.set_sid(sid)
+
         return (creds, dn)
 
     def get_security_descriptor(self, dn):
index 193fea80adc4e592906dbdbf2c58801bded818c5..4fb60e0906968c7e88223bf54bba833f6117b10c 100644 (file)
@@ -396,6 +396,7 @@ class KerberosCredentials(Credentials):
         self.dn = None
         self.upn = None
         self.spn = None
+        self.sid = None
         self.account_type = None
 
     def set_as_supported_enctypes(self, value):
@@ -529,6 +530,12 @@ class KerberosCredentials(Credentials):
     def get_upn(self):
         return self.upn
 
+    def set_sid(self, sid):
+        self.sid = sid
+
+    def get_sid(self):
+        return self.sid
+
     def set_type(self, account_type):
         self.account_type = account_type