def ApprovalRequest(client_id, token=None, approver="approver", reason="testing"): token = token or GetToken() approval_reason = reason or token.reason security.ClientApprovalRequestor( reason=approval_reason, subject_urn=rdf_client.ClientURN(client_id), approver=approver, token=token).Request()
def testApprovalDoesNotCreateUser(self): username = "******" user = aff4.FACTORY.Open("aff4:/users/%s" % username, token=self.token) self.assertFalse(isinstance(user, users.GRRUser)) security.ClientApprovalRequestor(subject_urn=self.client_id, reason=self.token.reason, approver=username, token=self.token).Request() user = aff4.FACTORY.Open("aff4:/users/%s" % username, token=self.token) self.assertFalse(isinstance(user, users.GRRUser))
def testCreatingApprovalCreatesSymlink(self): client_id = self.SetupClient(0) security.ClientApprovalRequestor(subject_urn=client_id, reason=self.token.reason, approver="approver", token=self.token).Request() approval_id = list( aff4.FACTORY.ListChildren( "aff4:/users/test/approvals/client/C.1000000000000000") )[0].Basename() self.assertTrue(approval_id.startswith("approval:")) fd = aff4.FACTORY.Open( "aff4:/users/test/approvals/client/C.1000000000000000/%s" % approval_id, follow_symlinks=False, mode="r", token=self.token) self.assertEqual(fd.Get(fd.Schema.TYPE), "AFF4Symlink") self.assertEqual(fd.Get(fd.Schema.SYMLINK_TARGET), "aff4:/ACL/C.1000000000000000/test/%s" % approval_id)