Ejemplo n.º 1
0
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()
Ejemplo n.º 2
0
    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))
Ejemplo n.º 3
0
    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)