Updated mcollective.init according to OSCI-658
[packages/precise/mcollective.git] / lib / mcollective / security.rb
diff --git a/lib/mcollective/security.rb b/lib/mcollective/security.rb
new file mode 100644 (file)
index 0000000..56d1cc4
--- /dev/null
@@ -0,0 +1,26 @@
+module MCollective
+  # Security is implimented using a module structure and installations
+  # can configure which module they want to use.
+  #
+  # Security modules deal with various aspects of authentication and authorization:
+  #
+  # - Determines if a filter excludes this host from dealing with a request
+  # - Serialization and Deserialization of messages
+  # - Validation of messages against keys, certificates or whatever the class choose to impliment
+  # - Encoding and Decoding of messages
+  #
+  # To impliment a new security class using SSL for example you would inherit from the base
+  # class and only impliment:
+  #
+  # - decodemsg
+  # - encodereply
+  # - encoderequest
+  # - validrequest?
+  #
+  # Each of these methods should increment various stats counters, see the default MCollective::Security::Psk module for examples of this
+  #
+  # Filtering can be extended by providing a new validate_filter? method.
+  module Security
+    autoload :Base, "mcollective/security/base"
+  end
+end