Пример #1
0
        def test_signing(self):

            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_admin(self.wheel, self.admin_cert_name, certsobj=self.certsobj)

            #TODO: Create a wheel that is signed by creator but not by admin

            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_initiator(self.wheel, self.initiator_cert_name, certsobj=self.certsobj)

            z = zipfile.ZipFile(self.wheel)
            self.assertTrue(auth.sign_as_creator(self.wheel, self.creator_cert_name, certsobj=self.certsobj))
            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_creator(self.wheel, self.creator_cert_name, certsobj=self.certsobj)
                print('---------------------------------',str(e))
                self.assertEqual("package must be signed by creator and adminstrator first",
                                 str(e))

            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_initiator(self.wheel, self.initiator_cert_name, certsobj=self.certsobj)

            self.assertTrue(auth.sign_as_admin(self.wheel, self.admin_cert_name, certsobj=self.certsobj))
            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_admin(self.wheel, self.admin_cert_name, certsobj=self.certsobj)

            self.assertTrue(auth.sign_as_initiator(self.wheel, self.initiator_cert_name, certsobj=self.certsobj))
            with self.assertRaises(auth.AuthError) as e:
                auth.sign_as_initiator(self.wheel, self.initiator_cert_name, certsobj=self.certsobj)

            #self.assertFalse(True)

            print('successful!')
Пример #2
0
def _sign_agent_package(agent_package, **kwargs):
    '''Sign an agent package'''
    if not os.path.exists(agent_package):
        raise AgentPackageError('Invalid package {}'.format(agent_package))

    cert_type = _cert_type_from_kwargs(**kwargs)
    files = _files_from_kwargs(**kwargs)
    certs_dir = kwargs.get('certs_dir', None)

    certsobj = None

    if certs_dir is not None:
        certsobj = certs.Certs(certs_dir)

    if cert_type == 'admin':
        if files:
            raise AgentPackageError("admin's aren't allowed to add files.")
        verified = auth.sign_as_admin(agent_package, 'admin', certsobj = certsobj)
    elif cert_type == 'creator':
        verified = auth.sign_as_creator(agent_package, 'creator', files, certsobj = certsobj)
    elif cert_type == 'initiator':
        verified = auth.sign_as_initiator(agent_package, 'initiator', files, certsobj = certsobj)
    elif cert_type == 'platform':
        verified = auth.sign_as_platform(agent_package, 'platform', files)
    else:
        raise AgentPackageError('Unknown packaging options')

    if verified:
        print('{} signed as {}'.format(agent_package, cert_type))
    else:
        print('Verification of signing failed!')
Пример #3
0
def _sign_agent_package(agent_package, **kwargs):
    '''Sign an agent package'''
    if not os.path.exists(agent_package):
        raise AgentPackageError('Invalid package {}'.format(agent_package))

    cert_type = _cert_type_from_kwargs(**kwargs)
    files = _files_from_kwargs(**kwargs)
    certs_dir = kwargs.get('certs_dir', None)

    certsobj = None

    if certs_dir is not None:
        certsobj = certs.Certs(certs_dir)

    if cert_type == 'admin':
        if files:
            raise AgentPackageError("admin's aren't allowed to add files.")
        verified = auth.sign_as_admin(agent_package, 'admin', certsobj = certsobj)
    elif cert_type == 'creator':
        verified = auth.sign_as_creator(agent_package, 'creator', files, certsobj = certsobj)
    elif cert_type == 'initiator':
        verified = auth.sign_as_initiator(agent_package, 'initiator', files, certsobj = certsobj)
    elif cert_type == 'platform':
        verified = auth.sign_as_platform(agent_package, 'platform', files)
    else:
        raise AgentPackageError('Unknown packaging options')

    if verified:
        print('{} signed as {}'.format(agent_package, cert_type))
    else:
        print('Verification of signing failed!')
Пример #4
0
 def direct_sign_agentpackage_creator(self, package):
     assert (RESTRICTED), "Auth not available"
     print ("wrapper.certsobj", self.certsobj.cert_dir)
     assert (
         auth.sign_as_creator(package, 'creator',
                              certsobj=self.certsobj)), "Signing as {} failed.".format(
         'creator')
Пример #5
0
 def direct_sign_agentpackage_creator(self, package):
     assert (RESTRICTED), "Auth not available"
     print ("wrapper.certsobj", self.certsobj.cert_dir)
     assert (
         auth.sign_as_creator(package, 'creator',
                              certsobj=self.certsobj)), "Signing as {} failed.".format(
         'creator')