示例#1
0
def update_configstore(cmd,
                       client,
                       name,
                       resource_group_name=None,
                       tags=None,
                       sku=None,
                       encryption_key_name=None,
                       encryption_key_vault=None,
                       encryption_key_version=None,
                       identity_client_id=None):
    __validate_cmk(encryption_key_name, encryption_key_vault,
                   encryption_key_version, identity_client_id)
    if resource_group_name is None:
        resource_group_name, _ = resolve_resource_group(cmd, name)

    update_params = ConfigurationStoreUpdateParameters(
        tags=tags if tags else None, sku=Sku(name=sku) if sku else None)

    if encryption_key_name is not None:
        key_vault_properties = KeyVaultProperties()
        if encryption_key_name:
            # key identifier schema https://keyvaultname.vault-int.azure-int.net/keys/keyname/keyversion
            key_identifier = "{}/keys/{}/{}".format(
                encryption_key_vault.strip('/'), encryption_key_name,
                encryption_key_version if encryption_key_version else "")
            key_vault_properties = KeyVaultProperties(
                key_identifier=key_identifier,
                identity_client_id=identity_client_id)

        update_params.encryption = EncryptionProperties(
            key_vault_properties=key_vault_properties)

    return client.update(resource_group_name=resource_group_name,
                         config_store_name=name,
                         config_store_update_parameters=update_params)
示例#2
0
def update_configstore(cmd,
                       client,
                       name,
                       resource_group_name=None,
                       tags=None,
                       sku=None,
                       encryption_key_name=None,
                       encryption_key_vault=None,
                       encryption_key_version=None,
                       identity_client_id=None,
                       enable_public_network=None,
                       disable_local_auth=None,
                       enable_purge_protection=None):
    __validate_cmk(encryption_key_name, encryption_key_vault,
                   encryption_key_version, identity_client_id)
    if resource_group_name is None:
        resource_group_name, _ = resolve_store_metadata(cmd, name)

    public_network_access = None
    if enable_public_network is not None:
        public_network_access = 'Enabled' if enable_public_network else 'Disabled'
    update_params = ConfigurationStoreUpdateParameters(
        tags=tags,
        sku=Sku(name=sku) if sku else None,
        public_network_access=public_network_access,
        disable_local_auth=disable_local_auth,
        enable_purge_protection=enable_purge_protection)

    if encryption_key_name is not None:
        key_vault_properties = KeyVaultProperties()
        if encryption_key_name:
            # key identifier schema https://keyvaultname.vault-int.azure-int.net/keys/keyname/keyversion
            key_identifier = "{}/keys/{}/{}".format(
                encryption_key_vault.strip('/'), encryption_key_name,
                encryption_key_version if encryption_key_version else "")
            key_vault_properties = KeyVaultProperties(
                key_identifier=key_identifier,
                identity_client_id=identity_client_id)

        update_params.encryption = EncryptionProperties(
            key_vault_properties=key_vault_properties)

    return client.begin_update(resource_group_name=resource_group_name,
                               config_store_name=name,
                               config_store_update_parameters=update_params)