cloudstack-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject git commit: updated refs/heads/4.2 to 95974bf
Date Wed, 17 Jul 2013 05:08:31 GMT
Updated Branches:
  refs/heads/4.2 e37fc1345 -> 95974bfef



Branch: refs/heads/4.2
Commit: 95974bfefb044ed0785fb148800cc450c2f86180
Parents: e37fc13
Author: radhikap <>
Authored: Wed Jul 17 10:38:13 2013 +0530
Committer: radhikap <>
Committed: Wed Jul 17 10:38:13 2013 +0530

 docs/en-US/password-storage-engine.xml | 68 +++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)
diff --git a/docs/en-US/password-storage-engine.xml b/docs/en-US/password-storage-engine.xml
new file mode 100644
index 0000000..0566105
--- /dev/null
+++ b/docs/en-US/password-storage-engine.xml
@@ -0,0 +1,68 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" ""
+<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
+<!-- Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership. The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+<section id="password-storage-engine">
+  <title>Changing the Default Password Encryption</title>
+  <para>Passwords are encoded when creating or updating users. &PRODUCT; allows
you to determine the
+    default encoding and authentication mechanism for admin and user logins. A new configurable
+    called <code>UserPasswordEncoders</code> to allow you to separately configure
the order of
+    preference for encoding and authentication schemes. </para>
+  <para>Additionally, plain text user authenticator has been changed to use SHA256SALT
as the
+    default encoding algorithm because it is more secure compared to MD5 hashing. It does
a simple
+    string comparison between retrieved and supplied login passwords instead of comparing
+    retrieved md5 hash of the stored password against the supplied md5 hash of the password
+    clients no longer hash the password. The following method determines what encoding scheme
+    used to encode the password supplied during user creation or modification. </para>
+  <para>When a new user is created, the user password is encoded by using the first
valid encoder
+    loaded as per the sequence specified in the <code>UserPasswordEncoders</code>
property in the
+      <filename>ComponentContext.xml</filename> or <filename>nonossComponentContext.xml</filename>
+    files. The order of authentication schemes is determined by the <code>UserAuthenticators</code>
+    property in the same files. When a new authenticator or encoder is added, you can add
them to
+    this list. While doing so, ensure that the new authenticator or encoder is specified
as a bean
+    in both these files. The administrator can change the ordering of both these properties
+    preferred to change the order of schemes. Modify the following list properties available
+      <filename>client/tomcatconf/</filename> or
+      <filename>client/tomcatconf/</filename> as applicable,
to the desired
+    order:</para>
+  <programlisting>&lt;property name="UserAuthenticators"&gt;
+         &lt;list&gt;
+            &lt;ref bean="SHA256SaltedUserAuthenticator"/&gt;
+            &lt;ref bean="MD5UserAuthenticator"/&gt;
+            &lt;ref bean="LDAPUserAuthenticator"/&gt;
+            &lt;ref bean="PlainTextUserAuthenticator"/&gt;
+        &lt;/list&gt;
+    &lt;/property&gt;
+    &lt;property name="UserPasswordEncoders"&gt;
+        &lt;list&gt;
+            &lt;ref bean="SHA256SaltedUserAuthenticator"/&gt;
+             &lt;ref bean="MD5UserAuthenticator"/&gt;
+             &lt;ref bean="LDAPUserAuthenticator"/&gt;
+            &lt;ref bean="PlainTextUserAuthenticator"/&gt;
+            &lt;/list&gt;</programlisting>
+  <para>In the above default ordering, SHA256Salt is used first for
+      <code>UserPasswordEncoders</code>. If the module is found and encoding
returns a valid value,
+    the encoded password is stored in the user table's password column. If it fails for any
+    the MD5UserAuthenticator will be tried next, and the order continues. For
+      <code>UserAuthenticators</code>, SHA256Salt authentication is tried first.
If it succeeds, the
+    user is logged into the Management server. If it fails, MD5 is tried next, and attempts
+    continues until any of them succeeds and the user logs in . If none of them works,  the
user is
+    returned an invalid credential message. </para>

View raw message