diff --git a/lib/SimpleSAML/Configuration.php b/lib/SimpleSAML/Configuration.php
index e87c2e225cd25abc83a3e3713fc1b4ccc307ba5d..e631c8b4d6095fa196d98074fb5b65ac744ffeb6 100644
--- a/lib/SimpleSAML/Configuration.php
+++ b/lib/SimpleSAML/Configuration.php
@@ -315,6 +315,24 @@ class SimpleSAML_Configuration {
 		return $ret;
 	}
 
+
+	/**
+	 * Retrieve list of options.
+	 *
+	 * This function returns the name of all options which are defined in this
+	 * configuration file, as an array of strings.
+	 *
+	 * @return array  Name of all options defined in this configuration file.
+	 */
+	public function getOptions() {
+
+		if (!isset($this->configuration)) {
+			$this->loadConfig();
+		}
+
+		return array_keys($this->configuration);
+	}
+
 }
 
 ?>
\ No newline at end of file