diff --git a/configuration.module b/configuration.module
index 8936b60..ae84232 100644
--- a/configuration.module
+++ b/configuration.module
@@ -40,6 +40,7 @@ function configuration_configuration_handlers() {
     'menu_link'    => '\Drupal\configuration\Config\MenuLinkConfiguration',
     'ctools'       => '\Drupal\configuration\Config\CtoolsConfiguration',
     'entity'       => '\Drupal\configuration\Config\EntityApiConfiguration',
+    'rule_config'  => '\Drupal\configuration\Config\RuleConfiguration',
     'views'        => '\Drupal\configuration\Config\ViewConfiguration',
     'strongarm'    => '\Drupal\configuration\Config\StrongarmConfiguration',
     'page_manager' => '\Drupal\configuration\Config\PageManagerHandlerConfiguration',
diff --git a/lib/Drupal/configuration/Config/RuleConfiguration.php b/lib/Drupal/configuration/Config/RuleConfiguration.php
new file mode 100644
index 0000000..e819cf0
--- /dev/null
+++ b/lib/Drupal/configuration/Config/RuleConfiguration.php
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ * @file
+ * Definition of Drupal\configuration\Config\RuleConfiguration.
+ */
+
+namespace Drupal\configuration\Config;
+
+use Drupal\configuration\Config\EntityApiConfiguration;
+use Drupal\configuration\Utils\ConfigIteratorSettings;
+
+class RuleConfiguration extends EntityApiConfiguration {
+
+  /**
+   * Implements Drupal\configuration\Config\Configuration::saveToActiveStore().
+   */
+  public function saveToActiveStore(ConfigIteratorSettings &$settings) {
+    $rules_config = $this->getData();
+    if ($existing_config = rules_config_load($rules_config->name)) {
+      $rules_config->id = $existing_config->id;
+      unset($rules_config->is_new);
+    }
+
+    if ($rules_config) {
+      $rules_config->save();
+      $settings->addInfo('imported', $this->getUniqueId());
+    }
+    else {
+      $settings->addInfo('fail', $this->getUniqueId());
+    }
+  }
+}
