def test_list_issuers(self, vault, **kwargs): self.assertIsNotNone(vault) vault_uri = vault.properties.vault_uri max_issuers = self.list_test_size expected = {} # create some certificate issuers( for x in range(0, max_issuers): issuer_name = 'pythonIssuer{}'.format(x + 1) issuer_credentials = IssuerCredentials(account_id='keyvaultuser', password='******') organization_details = OrganizationDetails( admin_details=[AdministratorDetails(first_name='Jane', last_name='Doe', email_address='*****@*****.**', phone='4256666666')]) error_count = 0 issuer_bundle = None while not issuer_bundle: try: issuer_bundle = self.client.set_certificate_issuer(vault_uri, issuer_name, 'test', issuer_credentials, organization_details) expected[issuer_bundle.id] = issuer_bundle.provider except Exception as ex: if hasattr(ex, 'message') and 'Throttled' in ex.message: error_count += 1 time.sleep(2.5 * error_count) continue else: raise ex # list certificate issuers result = list(self.client.get_certificate_issuers(vault_uri, self.list_test_size)) self._validate_certificate_issuer_list(result, expected)
def create_certificate_issuer(client, vault_base_url, issuer_name, provider_name, account_id=None, password=None, disabled=None, organization_id=None): """ Create a certificate issuer record. :param issuer_name: Unique identifier for the issuer settings. :param provider_name: The certificate provider name. Must be registered with your tenant ID and in your region. :param account_id: The issuer account id/username/etc. :param password: The issuer account password/secret/etc. :param organization_id: The organization id. """ from azure.keyvault.models import \ (CertificateIssuerSetParameters, IssuerCredentials, OrganizationDetails, IssuerAttributes, AdministratorDetails, KeyVaultErrorException) credentials = IssuerCredentials(account_id, password) issuer_attrs = IssuerAttributes(not disabled) org_details = OrganizationDetails(organization_id, admin_details=[]) return client.set_certificate_issuer(vault_base_url, issuer_name, provider_name, credentials, org_details, issuer_attrs)
def test_crud_issuer(self, vault, **kwargs): self.assertIsNotNone(vault) vault_uri = vault.properties.vault_uri issuer_name = 'pythonIssuer' issuer_credentials = IssuerCredentials(account_id='keyvaultuser', password='******') organization_details = OrganizationDetails( admin_details=[AdministratorDetails(first_name='Jane', last_name='Doe', email_address='*****@*****.**', phone='4256666666')]) # create certificate issuer issuer_bundle = self.client.set_certificate_issuer(vault_uri, issuer_name, 'test', issuer_credentials, organization_details) self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', issuer_credentials, organization_details) # get certificate issuer issuer_bundle = self.client.get_certificate_issuer(vault_uri, issuer_name) self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', issuer_credentials, organization_details) # update certificate issue new_credentials = IssuerCredentials(account_id='xboxuser', password='******') new_org_details = OrganizationDetails( admin_details=[AdministratorDetails(first_name='Jane II', last_name='Doe', email_address='*****@*****.**', phone='1111111111')]) issuer_bundle = self.client.update_certificate_issuer(vault_uri, issuer_name, 'test', new_credentials, new_org_details) self._validate_issuer_bundle(issuer_bundle, vault_uri, issuer_name, 'test', new_credentials, new_org_details) # delete certificate issuer( self.client.delete_certificate_issuer(vault_uri, issuer_name) # get certificate issuer returns not found try: self.client.get_certificate_issuer(vault_uri, issuer_name) self.fail('Get should fail') except Exception as ex: if not hasattr(ex, 'message') or 'not found' not in ex.message.lower(): raise ex