You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shiro.apache.org by bd...@apache.org on 2016/10/24 14:33:02 UTC

[09/23] shiro-site git commit: even more html to markdown

even more html to markdown


Project: http://git-wip-us.apache.org/repos/asf/shiro-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/shiro-site/commit/4f3855d6
Tree: http://git-wip-us.apache.org/repos/asf/shiro-site/tree/4f3855d6
Diff: http://git-wip-us.apache.org/repos/asf/shiro-site/diff/4f3855d6

Branch: refs/heads/master
Commit: 4f3855d6f88f633a1755602cd07ded1296554e05
Parents: f8e2bc8
Author: Brian Demers <bd...@apache.org>
Authored: Sat Oct 22 21:22:04 2016 -0500
Committer: Brian Demers <bd...@apache.org>
Committed: Sat Oct 22 21:22:04 2016 -0500

----------------------------------------------------------------------
 caching.html                  |  63 -------
 caching.md                    |  70 ++++++++
 command-line-hasher.html      |  99 -----------
 command-line-hasher.md        |  90 ++++++++++
 commercial-support.html       |  21 ---
 commercial-support.md         |  19 +++
 cryptography-features.html    |  58 -------
 cryptography-features.md      |  52 ++++++
 cryptography.html             |   7 -
 cryptography.md               |   8 +
 developer-resources.html.vtl  |  34 ----
 developer-resources.md.vtl    |  38 +++++
 developers.html               |  47 ------
 developers.md                 |  48 ++++++
 documentation-help-block.html |   5 -
 documentation-help-block.md   |   6 +
 events.html                   |  18 --
 events.md                     |  27 +++
 getting-started-block.html    |   2 -
 getting-started-block.md      |   4 +
 graduation-resolution.html    |  55 -------
 graduation-resolution.md      |  55 +++++++
 jsp-tag-library.html          |  30 ----
 jsp-tag-library.md            |  22 +++
 mailing-lists.html            |  46 ------
 mailing-lists.md              |  56 +++++++
 permissions.html              | 326 -------------------------------------
 permissions.md                | 306 ++++++++++++++++++++++++++++++++++
 28 files changed, 801 insertions(+), 811 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/caching.html
----------------------------------------------------------------------
diff --git a/caching.html b/caching.html
deleted file mode 100644
index 46080a5..0000000
--- a/caching.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<h1><a name="Caching-Caching"></a>Caching</h1>
-
-<p>The Shiro development team understands performance is critical in many applications.  Caching is a first class feature built into Shiro from day one to ensure that security operations remain as fast as possible.</p>
-
-<p>However, while Caching as a concept is a fundamental part of Shiro, implementing a full Cache mechanism would be outside the core competency of a security framework.  To that end, Shiro's cache support is basically an abstraction (wrapper) API that will 'sit' on top of an underlying production Cache mechanism (e.g. Hazelcast, Ehcache, OSCache, Terracotta, Coherence, GigaSpaces, JBossCache, etc).  This allows a Shiro end-user to configure any cache mechanism they prefer.</p>
-
-<h2><a name="Caching-CachingAPI"></a>Caching API</h2>
-
-<p>Shiro has three important cache interfaces:</p>
-
-<ul><li><tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/cache/CacheManager.html">CacheManager</a></tt> - The primary Manager component for all caching, it returns <tt>Cache</tt> instances.</li><li><tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/cache/Cache.html">Cache</a></tt> - Maintains key/value pairs</li><li><tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/cache/CacheManagerAware.html">CacheManagerAware</a></tt> - Implemented by components wishing to receive and use a CacheManager instance</li></ul>
-
-
-<p>A <tt>CacheManager</tt> returns <tt>Cache</tt> instances and various Shiro components use those <tt>Cache</tt> instances to cache data as necessary.  Any Shiro<br clear="none">
-component that implements <tt>CacheManagerAware</tt> will automatically receive a configured <tt>CacheManager</tt>, where it can be used to acquire <tt>Cache</tt> instances.</p>
-
-<p>The Shiro <a href="securitymanager.html" title="SecurityManager">SecurityManager</a> implementations and all <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/realm/AuthenticatingRealm.html">AuthenticatingRealm</a></tt> and <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html">AuthorizingRealm</a></tt> implementations implement CacheManagerAware.  If you set the <tt>CacheManager</tt> on the <tt>SecurityManager</tt>, it will in turn set it on the various Realms that implement CacheManagerAware as well (OO delegation).  For example, in shiro.ini:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeHeader panelHeader" style="border-bottom-width: 1px;"><b>example shiro.ini CacheManger configuration</b></div><div class="codeContent panelContent">
-<pre class="code-java">
-securityManager.realms = $myRealm1, $myRealm2, ..., $myRealmN
-...
-cacheManager = my.implementation.of.CacheManager
-...
-securityManager.cacheManager = $cacheManager
-# at <span class="code-keyword">this</span> point, the securityManager and all CacheManagerAware
-# realms have been set with the cacheManager instance
-</pre>
-</div></div>
-
-<h2><a name="Caching-CacheManagerImplementations"></a>CacheManager Implementations</h2>
-
-<p>Shiro provides a number of out-of-the-box <tt>CacheManager</tt> implementations that you might find useful instead of implementing your own.</p>
-
-<h3><a name="Caching-%7B%7BMemoryConstrainedCacheManager%7D%7D"></a><tt>MemoryConstrainedCacheManager</tt></h3>
-
-<p>The <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/cache/MemoryConstrainedCacheManager.html">MemoryConstrainedCacheManager</a></tt> is a <tt>CacheManager</tt> implementation suitable for single-JVM production environments.  It is not clustered/distributed, so if your application spans across more than one JVM (e.g. web app running on multiple web servers), and you want cache entries to be accessible across JVMs, you will need to use a distributed cache implementation instead.</p>
-
-<p>The <tt>MemoryConstrainedCacheManager</tt> manages <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/cache/MapCache.html">MapCache</a></tt> instances, one <tt>MapCache</tt> instance per named cache.  Each <tt>MapCache</tt> instance is backed by a Shiro <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/util/SoftHashMap.html">SoftHashMap</a></tt> which can auto-resize itself based on an application's runtime memory constraints/needs (by leveraging JDK <tt><a class="external-link" href="https://docs.oracle.com/javase/7/docs/api/java/lang/ref/SoftReference.html" rel="nofollow">SoftReference</a></tt> instances).</p>
-
-<p>Because the <tt>MemoryConstrainedCacheManager</tt> can auto-resize itself based on an application's memory profile, it is safe to use in a single-JVM production application as well as for testing needs.  However, it does not have more advanced features suche as cache entry Time-to-Live or Time-to-Expire settings.  For these more advanced cache management features, you'll likely want to use one of the more advanced <tt>CacheManager</tt> offerings below.</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeHeader panelHeader" style="border-bottom-width: 1px;"><b>MemoryConstrainedCacheManger shiro.ini configuration example</b></div><div class="codeContent panelContent">
-<pre class="code-java">
-
-...
-cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
-...
-securityManager.cacheManager = $cacheManager
-</pre>
-</div></div>
-
-<h3><a name="Caching-%7B%7BHazelcastCacheManager%7D%7D"></a><tt>HazelcastCacheManager</tt></h3>
-
-<p>TBD</p>
-
-<h3><a name="Caching-%7B%7BEhCacheManager%7D%7D"></a><tt>EhCacheManager</tt></h3>
-
-<p>TBD</p>
-
-<h2><a name="Caching-AuthorizationCacheInvalidation"></a>Authorization Cache Invalidation</h2>
-
-<p>Finally note that <tt><a class="external-link" href="static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html">AuthorizingRealm</a></tt> has a <a class="external-link" href="static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">clearCachedAuthorizationInfo method</a> that can be called by subclasses to evict the cached authzInfo for a particular account.  It is usually called by custom logic if the corresponding account's authz data has changed (to ensure the next authz check will pick up the new data).</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/caching.md
----------------------------------------------------------------------
diff --git a/caching.md b/caching.md
new file mode 100644
index 0000000..d9c024d
--- /dev/null
+++ b/caching.md
@@ -0,0 +1,70 @@
+<a name="Caching-Caching"></a>
+#Caching
+
+The Shiro development team understands performance is critical in many applications. Caching is a first class feature built into Shiro from day one to ensure that security operations remain as fast as possible.
+
+However, while Caching as a concept is a fundamental part of Shiro, implementing a full Cache mechanism would be outside the core competency of a security framework. To that end, Shiro's cache support is basically an abstraction (wrapper) API that will 'sit' on top of an underlying production Cache mechanism (e.g. Hazelcast, Ehcache, OSCache, Terracotta, Coherence, GigaSpaces, JBossCache, etc). This allows a Shiro end-user to configure any cache mechanism they prefer.
+
+<a name="Caching-CachingAPI"></a>
+##Caching API
+
+Shiro has three important cache interfaces:
+
+*   [`CacheManager`](static/current/apidocs/org/apache/shiro/cache/CacheManager.html) - The primary Manager component for all caching, it returns `Cache` instances.
+*   [`Cache`](static/current/apidocs/org/apache/shiro/cache/Cache.html) - Maintains key/value pairs
+*   [`CacheManagerAware`](static/current/apidocs/org/apache/shiro/cache/CacheManagerAware.html) - Implemented by components wishing to receive and use a CacheManager instance
+
+A `CacheManager` returns `Cache` instances and various Shiro components use those `Cache` instances to cache data as necessary. Any Shiro
+component that implements `CacheManagerAware` will automatically receive a configured `CacheManager`, where it can be used to acquire `Cache` instances.
+
+The Shiro [SecurityManager](securitymanager.html "SecurityManager") implementations and all [`AuthenticatingRealm`](static/current/apidocs/org/apache/shiro/realm/AuthenticatingRealm.html) and [`AuthorizingRealm`](static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html) implementations implement CacheManagerAware. If you set the `CacheManager` on the `SecurityManager`, it will in turn set it on the various Realms that implement CacheManagerAware as well (OO delegation). For example, in shiro.ini:
+
+**example shiro.ini CacheManger configuration**
+
+``` ini
+securityManager.realms = $myRealm1, $myRealm2, ..., $myRealmN
+...
+cacheManager = my.implementation.of.CacheManager
+...
+securityManager.cacheManager = $cacheManager
+# at this point, the securityManager and all CacheManagerAware
+# realms have been set with the cacheManager instance
+```
+
+<a name="Caching-CacheManagerImplementations"></a>
+##CacheManager Implementations
+
+Shiro provides a number of out-of-the-box `CacheManager` implementations that you might find useful instead of implementing your own.
+
+<a name="Caching-%7B%7BMemoryConstrainedCacheManager%7D%7D"></a>
+###`MemoryConstrainedCacheManager`
+
+The [`MemoryConstrainedCacheManager`](static/current/apidocs/org/apache/shiro/cache/MemoryConstrainedCacheManager.html) is a `CacheManager` implementation suitable for single-JVM production environments. It is not clustered/distributed, so if your application spans across more than one JVM (e.g. web app running on multiple web servers), and you want cache entries to be accessible across JVMs, you will need to use a distributed cache implementation instead.
+
+The `MemoryConstrainedCacheManager` manages [`MapCache`](static/current/apidocs/org/apache/shiro/cache/MapCache.html) instances, one `MapCache` instance per named cache. Each `MapCache` instance is backed by a Shiro [`SoftHashMap`](static/current/apidocs/org/apache/shiro/util/SoftHashMap.html) which can auto-resize itself based on an application's runtime memory constraints/needs (by leveraging JDK [`SoftReference`](https://docs.oracle.com/javase/7/docs/api/java/lang/ref/SoftReference.html) instances).
+
+Because the `MemoryConstrainedCacheManager` can auto-resize itself based on an application's memory profile, it is safe to use in a single-JVM production application as well as for testing needs. However, it does not have more advanced features suche as cache entry Time-to-Live or Time-to-Expire settings. For these more advanced cache management features, you'll likely want to use one of the more advanced `CacheManager` offerings below.
+
+**MemoryConstrainedCacheManger shiro.ini configuration example**
+
+``` ini
+...
+cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
+...
+securityManager.cacheManager = $cacheManager
+```
+
+<a name="Caching-%7B%7BHazelcastCacheManager%7D%7D"></a>
+###`HazelcastCacheManager`
+
+TBD
+
+<a name="Caching-%7B%7BEhCacheManager%7D%7D"></a>
+###`EhCacheManager`
+
+TBD
+
+<a name="Caching-AuthorizationCacheInvalidation"></a>
+##Authorization Cache Invalidation
+
+Finally note that [`AuthorizingRealm`](static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html) has a [clearCachedAuthorizationInfo method](static/current/apidocs/org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-) that can be called by subclasses to evict the cached authzInfo for a particular account. It is usually called by custom logic if the corresponding account's authz data has changed (to ensure the next authz check will pick up the new data).
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/command-line-hasher.html
----------------------------------------------------------------------
diff --git a/command-line-hasher.html b/command-line-hasher.html
deleted file mode 100644
index c4b74ae..0000000
--- a/command-line-hasher.html
+++ /dev/null
@@ -1,99 +0,0 @@
-<h1><a name="CommandLineHasher-CommandLineHasher"></a>Command Line Hasher</h1>
-
-<div class="toc">
-<ul><li><a href="#CommandLineHasher-Usage">Usage</a></li><li><a href="#CommandLineHasher-CommonScenarios">Common Scenarios</a></li><ul><li><a href="#CommandLineHasher-%7B%7Bshiro.ini%7D%7DUserPasswords"> <tt>shiro.ini</tt> User Passwords</a></li><li><a href="#CommandLineHasher-MD5checksum">MD5 checksum</a></li></ul></ul></div>
-
-<p>Shiro 1.2.0 and later provides a command line program that can hash strings and resources (files, URLs, classpath entries) of almost any type.  To use it, you must have a Java Virtual Machine installed and the 'java' command must be accessible in your <tt>$PATH</tt> environment variable.</p>
-
-<h2><a name="CommandLineHasher-Usage"></a>Usage</h2>
-
-<p>Ensure you have access to the <tt>shiro-tools-hasher-</tt><em>version</em><tt>-cli.jar</tt> file.  You can either find this in a source build in the <em>buildroot</em><tt>/tools/hasher/target</tt> directory or via download through Maven.</p>
-
-<p>Once you have access to the jar, you can run the following command:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-&gt; java -jar shiro-tools-hasher-X.X.X-cli.jar
-</pre>
-</div></div>
-
-<p>This will print all available options for both standard (MD5, SHA1) and more complex password hashing scenarios.</p>
-
-<h2><a name="CommandLineHasher-CommonScenarios"></a>Common Scenarios</h2>
-
-<p>Please read the printed instructions for the above command.  It will provide an exhaustive list of instructions which will help you use the hasher depending on your needs.  However, we've provided some quick reference usages/scenarios below for convenience.</p>
-
-<h3><a name="CommandLineHasher-%7B%7Bshiro.ini%7D%7DUserPasswords"></a><tt>shiro.ini</tt> User Passwords</h3>
-
-<p>It is best to keep user passwords in the <tt>shiro.ini</tt> <tt>[users]</tt> section secure.  To add a new user account line, use the above command with the <tt><b>-p</b></tt> (or <tt>--password</tt>) option:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-&gt; java -jar shiro-tools-hasher-X.X.X-cli.jar -p
-</pre>
-</div></div>
-
-<p>It will then ask you to enter the password and then confirm it:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-Password to hash:
-Password to hash (confirm):
-</pre>
-</div></div>
-
-<p>When this command executes, it will print out the securely-salted-iterated-and-hashed password.  For example:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-$shiro1$SHA-256$500000$eWpVX2tGX7WCP2J+jMCNqw==$it/NRclMOHrfOvhAEFZ0mxIZRdbcfqIBdwdwdDXW2dM=
-</pre>
-</div></div>
-
-<p>Take this value and place it as the password in the user definition line (followed by any optional roles) as defined in the <a href="configuration.html#Configuration-%5Cusers%5C">INI Users Configuration</a> documentation.  For example:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-[users]
-...
-user1 = $shiro1$SHA-256$500000$eWpVX2tGX7WCP2J+jMCNqw==$it/NRclMOHrfOvhAEFZ0mxIZRdbcfqIBdwdwdDXW2dM=
-</pre>
-</div></div>
-
-<p>You will also need to ensure that the implicit <tt>iniRealm</tt> uses a <tt>CredentialsMatcher</tt> that knows how to perform secure hashed password comparisons.  So configure this in the <tt>[main]</tt> section as well:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-[main]
-...
-passwordMatcher = org.apache.shiro.authc.credential.PasswordMatcher
-iniRealm.credentialsMatcher = $passwordMatcher
-...
-</pre>
-</div></div>
-
-
-<h3><a name="CommandLineHasher-MD5checksum"></a>MD5 checksum</h3>
-
-<p>Although you can perform any hash with any algorithm supported on the JVM, the default hashing algorithm is MD5, common for file checksums.  Just use the <tt><b>-r</b></tt> (or <tt>--resource</tt>) option to indicate the following value is a resource location (and not text you wish hashed):</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-&gt; java -jar shiro-tools-hasher-X.X.X-cli.jar -r RESOURCE_PATH
-</pre>
-</div></div>
-
-<p>By default <tt>RESOURCE_PATH</tt> is expected to be a file path, but you may specify classpath or URL resources by using the <tt>classpath:</tt> or <tt>url:</tt> prefix respectively.</p>
-
-<p>Some examples:</p>
-
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-&lt;command&gt; -r fileInCurrentDirectory.txt
-&lt;command&gt; -r ../../relativePathFile.xml
-&lt;command&gt; -r ~/documents/myfile.pdf
-&lt;command&gt; -r /usr/local/logs/absolutePathFile.log
-&lt;command&gt; -r url:http:<span class="code-comment">//foo.com/page.html
-</span>&lt;command&gt; -r classpath:/WEB-INF/lib/something.jar
-</pre>
-</div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/command-line-hasher.md
----------------------------------------------------------------------
diff --git a/command-line-hasher.md b/command-line-hasher.md
new file mode 100644
index 0000000..d812a74
--- /dev/null
+++ b/command-line-hasher.md
@@ -0,0 +1,90 @@
+<a name="CommandLineHasher-CommandLineHasher"></a>
+#Command Line Hasher
+
+*   [Usage](#CommandLineHasher-Usage)
+*   [Common Scenarios](#CommandLineHasher-CommonScenarios)
+
+*   [`shiro.ini` User Passwords](#CommandLineHasher-%7B%7Bshiro.ini%7D%7DUserPasswords)
+*   [MD5 checksum](#CommandLineHasher-MD5checksum)
+
+
+Shiro 1.2.0 and later provides a command line program that can hash strings and resources (files, URLs, classpath entries) of almost any type. To use it, you must have a Java Virtual Machine installed and the 'java' command must be accessible in your `$PATH` environment variable.
+
+<a name="CommandLineHasher-Usage"></a>
+##Usage
+
+Ensure you have access to the `shiro-tools-hasher-`_version_`-cli.jar` file. You can either find this in a source build in the _buildroot_`/tools/hasher/target` directory or via download through Maven.
+
+Once you have access to the jar, you can run the following command:
+
+``` bash
+$ java -jar shiro-tools-hasher-X.X.X-cli.jar
+```
+
+This will print all available options for both standard (MD5, SHA1) and more complex password hashing scenarios.
+
+<a name="CommandLineHasher-CommonScenarios"></a>
+##Common Scenarios
+
+Please read the printed instructions for the above command. It will provide an exhaustive list of instructions which will help you use the hasher depending on your needs. However, we've provided some quick reference usages/scenarios below for convenience.
+
+<a name="CommandLineHasher-%7B%7Bshiro.ini%7D%7DUserPasswords"></a>
+###`shiro.ini` User Passwords
+
+It is best to keep user passwords in the `shiro.ini` `[users]` section secure. To add a new user account line, use the above command with the `**-p**` (or `--password`) option:
+
+``` bash
+$ java -jar shiro-tools-hasher-X.X.X-cli.jar -p
+```
+
+It will then ask you to enter the password and then confirm it:
+
+``` bash
+Password to hash:
+Password to hash (confirm):
+```
+
+When this command executes, it will print out the securely-salted-iterated-and-hashed password. For example:
+
+``` bash
+$shiro1$SHA-256$500000$eWpVX2tGX7WCP2J+jMCNqw==$it/NRclMOHrfOvhAEFZ0mxIZRdbcfqIBdwdwdDXW2dM=
+```
+
+Take this value and place it as the password in the user definition line (followed by any optional roles) as defined in the [INI Users Configuration](configuration.html#Configuration-%5Cusers%5C) documentation. For example:
+
+``` ini
+[users]
+...
+user1 = $shiro1$SHA-256$500000$eWpVX2tGX7WCP2J+jMCNqw==$it/NRclMOHrfOvhAEFZ0mxIZRdbcfqIBdwdwdDXW2dM=
+```
+
+You will also need to ensure that the implicit `iniRealm` uses a `CredentialsMatcher` that knows how to perform secure hashed password comparisons. So configure this in the `[main]` section as well:
+
+``` ini
+[main]
+...
+passwordMatcher = org.apache.shiro.authc.credential.PasswordMatcher
+iniRealm.credentialsMatcher = $passwordMatcher
+...
+```
+
+<a name="CommandLineHasher-MD5checksum"></a>
+###MD5 checksum
+
+Although you can perform any hash with any algorithm supported on the JVM, the default hashing algorithm is MD5, common for file checksums. Just use the `**-r**` (or `--resource`) option to indicate the following value is a resource location (and not text you wish hashed):
+
+``` bash
+$ java -jar shiro-tools-hasher-X.X.X-cli.jar -r RESOURCE_PATH
+```
+
+By default `RESOURCE_PATH` is expected to be a file path, but you may specify classpath or URL resources by using the `classpath:` or `url:` prefix respectively.
+
+Some examples:
+
+``` bash
+<command> -r fileInCurrentDirectory.txt
+<command> -r ../../relativePathFile.xml
+<command> -r ~/documents/myfile.pdf
+<command> -r /usr/local/logs/absolutePathFile.log
+<command> -r url:http://foo.com/page.html <command> -r classpath:/WEB-INF/lib/something.jar
+```
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/commercial-support.html
----------------------------------------------------------------------
diff --git a/commercial-support.html b/commercial-support.html
deleted file mode 100644
index 960b457..0000000
--- a/commercial-support.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<h1><a name="CommercialSupport-CommercialSupportandConsultingforApacheShiro"></a>Service and Commercial Support for Apache Shiro</h1>
-
-<div>
-<h3>
-    <a class="external-link" href="https://www.stormpath.com" title="Stormpath User Management">Apache Shiro Plugin for Stormpath User Management</a>
-</h3>
-
-<p>The <a href="https://github.com/stormpath/stormpath-shiro/wiki">Apache Shiro plugin for Stormpath</a> allows an Apache Shiro-enabled application to use the <a href="https://www.stormpath.com">Stormpath User Management & Authentication service</a> for all authentication and access control needs.  </p>
-
-<p>Pairing Shiro with Stormpath give you a full application security system complete with immediate user account support, admin UI, authentication service, account registration and password reset workflows, password security, and more-- with little to no coding on your part.</p>
-    <a class="external-link" href="https://github.com/stormpath/stormpath-shiro/wiki" title="Apache Shiro plugin for Stormpath">Learn More >>></a>
-<h3>
-    <a class="external-link" href="https://www.stormpath.com/apache-shiro-support" title="Stormpath Support for Apache Shiro">Stormpath Commercial Support for Apache Shiro</a>
-</h3>
-
-<p>Shiro commercial support and consulting services are available from Stormpath, a company started by Shiro committer and Project Chair, Les Hazlewood:
-</p>
-    <a class="external-link" href="https://www.stormpath.com/apache-shiro-support" title="Stormpath Support for Apache Shiro">Learn More >>></a>
-</div>
-<br>
-<p><strong>Providing Shiro services? Get listed on this page by posting to the <a href="mailing-lists.html" title="Shiro Mailing Lists">Dev Mailing list</a> </strong></p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/commercial-support.md
----------------------------------------------------------------------
diff --git a/commercial-support.md b/commercial-support.md
new file mode 100644
index 0000000..7c34fa7
--- /dev/null
+++ b/commercial-support.md
@@ -0,0 +1,19 @@
+<a name="CommercialSupport-CommercialSupportandConsultingforApacheShiro"></a>
+#Service and Commercial Support for Apache Shiro
+
+
+### [Apache Shiro Plugin for Stormpath User Management](https://www.stormpath.com "Stormpath User Management")
+
+The [Apache Shiro plugin for Stormpath](https://github.com/stormpath/stormpath-shiro/wiki) allows an Apache Shiro-enabled application to use the [Stormpath User Management & Authentication service](https://www.stormpath.com) for all authentication and access control needs.
+
+Pairing Shiro with Stormpath give you a full application security system complete with immediate user account support, admin UI, authentication service, account registration and password reset workflows, password security, and more-- with little to no coding on your part.
+
+[Learn More >>>](https://github.com/stormpath/stormpath-shiro/wiki "Apache Shiro plugin for Stormpath")
+
+### [Stormpath Commercial Support for Apache Shiro](https://www.stormpath.com/apache-shiro-support "Stormpath Support for Apache Shiro")
+
+Shiro commercial support and consulting services are available from Stormpath, a company started by Shiro committer and Project Chair, Les Hazlewood:
+
+[Learn More >>>](https://www.stormpath.com/apache-shiro-support "Stormpath Support for Apache Shiro")
+
+**Providing Shiro services? Get listed on this page by posting to the [Dev Mailing list](mailing-lists.html "Shiro Mailing Lists")**
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/cryptography-features.html
----------------------------------------------------------------------
diff --git a/cryptography-features.html b/cryptography-features.html
deleted file mode 100644
index fa48535..0000000
--- a/cryptography-features.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<h1><a name="CryptographyFeatures-ApacheShiroCryptographyFeatures"></a>Apache Shiro Cryptography Features</h1>
-
-
-<div class="addthis_toolbox addthis_default_style">
-<a class="addthis_button_compact" href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=ra-4d66ef016022c3bd">Share</a>
-<span class="addthis_separator">|</span>
-<a class="addthis_button_preferred_1"></a>
-<a class="addthis_button_preferred_2"></a>
-<a class="addthis_button_preferred_3"></a>
-<a class="addthis_button_preferred_4"></a>
-</div>
-<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script>
-<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=ra-4d66ef016022c3bd"></script>
-
-
-<p><br clear="none" class="atl-forced-newline">
-Cryptography is the practice of protecting information from undesired access by hiding it or converting it into nonsense so know one else can read it. Shiro focuses on two core elements of Cryptography: ciphers that encrypt data like email using a public or private key, and hashes (aka message digests) that irreversibly encrypt data like passwords.</p>
-
-<p>Shiro Cryptography's primary goal is take what has traditionally be an extremely complex field and make it easy for the rest of us while providing a robust set of cryptography features.</p>
-
-<h2><a name="CryptographyFeatures-SimplicityFeatures"></a>Simplicity Features</h2>
-
-<ul><li><b>Interface-driven, POJO based</b> - All of Shiro's APIs are interface-based and implemented as POJOs.  This allows you to easily configure Shiro Cryptography components with JavaBeans-compatible formats like JSON, YAML, Spring XML and others.  You can also override or customize Shiro as you see necessary, leveraging its API to save you time and effort.</li></ul>
-
-
-<ul><li><b>Simplified wrapper over JCE</b> - The Java Cryptography Extension (JCE) can be complicated and difficult to use unless you're a cryptography expert.  Shiro's Cryptography APIs are much easier to understand and use, and they dramatically simplify JCE concepts.  So now even Cryptography novices can find what they need in minutes rather than hours or days. And you won't sacrifice any functionality because you still have access to more complicated JCE options if you need them.</li></ul>
-
-
-<ul><li><b>&#8220;Object Orientifies&#8221; cryptography concepts</b> - The JDK/JCE's Cipher and Message Digest (Hash) classes are abstract classes and quite confusing, requiring you to use obtuse factory methods with type-unsafe string arguments to acquire instances you want to use.  Shiro 'Object Orientifies' Ciphers and Hashes, basing them on a clean object hierarchy, and allows you to use them by simple instantiation.</li></ul>
-
-
-<ul><li><b>Runtime Exceptions</b> - Like everywhere else in Shiro, all cryptography exceptions are RuntimeExceptions.  You can decide whether or not to catch an exception based on your needs.</li></ul>
-
-
-<h2><a name="CryptographyFeatures-CipherFeatures"></a>Cipher Features</h2>
-
-<ul><li><b>OO Hierarchy</b> - Unlike the JCE, Shiro Cipher representations follow an Object-Oriented class hierarchy that match their mathematical concepts: <tt>AbstractSymmetricCipherService</tt>, <tt>DefaultBlockCipherService</tt>, <tt>AesCipherService</tt>, etc.  This allows you to easily override existing classes and extend functionality as needed.</li></ul>
-
-
-<ul><li><b>Just instantiate a class</b> - Unlike the JCE's confusing factory methods using String token arguments, using Shiro Ciphers are much easier - just instantiate a class, configure it with JavaBeans properties as necessary, and use it as desired.  For example, <tt>new AesCipherService()</tt>.</li></ul>
-
-
-<ul><li><b>More secure default settings</b> - The JCE Cipher instances assume a 'lowest common denominator' default and do not automatically enable more secure options.  Shiro will automatically enable the more secure options to ensure your data is as safe as it can be by default, helping you prevent accidental security holes.</li></ul>
-
-
-<h2><a name="CryptographyFeatures-HashFeatures"></a>Hash Features</h2>
-
-<ul><li><b>Deault interface implementations</b> - Shiro provides default Hash (aka Message Digests in the JDK) implementations out-of-the-box, such as MD5, SHA1, SHA-256, et al.  This provides a type-safe construction method (e.g. <tt>new Md5Hash(data)</tt>) instead of being forced to use type-unsafe string factory methods in the JDK.</li></ul>
-
-
-<ul><li><b>Built-in Hex and Base64 conversion</b> - Shiro Hash instances can automatically provide Hex and Base-64 encoding of hashed data via their <tt>toHex()</tt> and <tt>toBase64()</tt> methods.  So now you do not need to figure out how to correctly encode the data yourself.</li></ul>
-
-
-<ul><li><b>Built-in Salt and repeated hashing support</b> - Salts and repeated hash iterations are very valuable tools when hashing data, especially when it comes to protecting user passwords.  Shiro's Hash implementations support salts and multiple hash iterations out of the box so you don't have to repeat this logic anywhere you might need it.</li></ul>
-
-
-<h2><a name="CryptographyFeatures-GetStartedin10MinuteswithShiro"></a>Get Started in 10 Minutes with Shiro</h2>
-<p>Try out Shiro for yourself with our <a href="10-minute-tutorial.html" title="10 Minute Tutorial">10 Minute Tutorial</a>.  And if you have any questions about Shiro, please check out our <a href="forums.html" title="Forums">community forum</a> or <a href="mailing-lists.html" title="Mailing Lists">user mailing list</a> for answers from the community.</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/cryptography-features.md
----------------------------------------------------------------------
diff --git a/cryptography-features.md b/cryptography-features.md
new file mode 100644
index 0000000..a0ee09a
--- /dev/null
+++ b/cryptography-features.md
@@ -0,0 +1,52 @@
+<a name="CryptographyFeatures-ApacheShiroCryptographyFeatures"></a>
+#Apache Shiro Cryptography Features
+
+<div class="addthis_toolbox addthis_default_style">
+    <a class="addthis_button_compact" href="http://www.addthis.com/bookmark.php?v=250&amp;pubid=ra-4d66ef016022c3bd">Share</a>
+    <span class="addthis_separator">|</span>
+    <a class="addthis_button_preferred_1"></a>
+    <a class="addthis_button_preferred_2"></a>
+    <a class="addthis_button_preferred_3"></a>
+    <a class="addthis_button_preferred_4"></a>
+</div>
+<script type="text/javascript">var addthis_config = {"data_track_clickback":true};</script>
+<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=ra-4d66ef016022c3bd"></script>
+
+
+Cryptography is the practice of protecting information from undesired access by hiding it or converting it into nonsense so know one else can read it. Shiro focuses on two core elements of Cryptography: ciphers that encrypt data like email using a public or private key, and hashes (aka message digests) that irreversibly encrypt data like passwords.
+
+Shiro Cryptography's primary goal is take what has traditionally be an extremely complex field and make it easy for the rest of us while providing a robust set of cryptography features.
+
+<a name="CryptographyFeatures-SimplicityFeatures"></a>
+##Simplicity Features
+
+*   **Interface-driven, POJO based** - All of Shiro's APIs are interface-based and implemented as POJOs. This allows you to easily configure Shiro Cryptography components with JavaBeans-compatible formats like JSON, YAML, Spring XML and others. You can also override or customize Shiro as you see necessary, leveraging its API to save you time and effort.
+
+*   **Simplified wrapper over JCE** - The Java Cryptography Extension (JCE) can be complicated and difficult to use unless you're a cryptography expert. Shiro's Cryptography APIs are much easier to understand and use, and they dramatically simplify JCE concepts. So now even Cryptography novices can find what they need in minutes rather than hours or days. And you won't sacrifice any functionality because you still have access to more complicated JCE options if you need them.
+
+*   **\u201cObject Orientifies\u201d cryptography concepts** - The JDK/JCE's Cipher and Message Digest (Hash) classes are abstract classes and quite confusing, requiring you to use obtuse factory methods with type-unsafe string arguments to acquire instances you want to use. Shiro 'Object Orientifies' Ciphers and Hashes, basing them on a clean object hierarchy, and allows you to use them by simple instantiation.
+
+*   **Runtime Exceptions** - Like everywhere else in Shiro, all cryptography exceptions are RuntimeExceptions. You can decide whether or not to catch an exception based on your needs.
+
+<a name="CryptographyFeatures-CipherFeatures"></a>
+##Cipher Features
+
+*   **OO Hierarchy** - Unlike the JCE, Shiro Cipher representations follow an Object-Oriented class hierarchy that match their mathematical concepts: `AbstractSymmetricCipherService`, `DefaultBlockCipherService`, `AesCipherService`, etc. This allows you to easily override existing classes and extend functionality as needed.
+
+*   **Just instantiate a class** - Unlike the JCE's confusing factory methods using String token arguments, using Shiro Ciphers are much easier - just instantiate a class, configure it with JavaBeans properties as necessary, and use it as desired. For example, `new AesCipherService()`.
+
+*   **More secure default settings** - The JCE Cipher instances assume a 'lowest common denominator' default and do not automatically enable more secure options. Shiro will automatically enable the more secure options to ensure your data is as safe as it can be by default, helping you prevent accidental security holes.
+
+<a name="CryptographyFeatures-HashFeatures"></a>
+##Hash Features
+
+*   **Deault interface implementations** - Shiro provides default Hash (aka Message Digests in the JDK) implementations out-of-the-box, such as MD5, SHA1, SHA-256, et al. This provides a type-safe construction method (e.g. `new Md5Hash(data)`) instead of being forced to use type-unsafe string factory methods in the JDK.
+
+*   **Built-in Hex and Base64 conversion** - Shiro Hash instances can automatically provide Hex and Base-64 encoding of hashed data via their `toHex()` and `toBase64()` methods. So now you do not need to figure out how to correctly encode the data yourself.
+
+*   **Built-in Salt and repeated hashing support** - Salts and repeated hash iterations are very valuable tools when hashing data, especially when it comes to protecting user passwords. Shiro's Hash implementations support salts and multiple hash iterations out of the box so you don't have to repeat this logic anywhere you might need it.
+
+<a name="CryptographyFeatures-GetStartedin10MinuteswithShiro"></a>
+##Get Started in 10 Minutes with Shiro
+
+Try out Shiro for yourself with our [10 Minute Tutorial](10-minute-tutorial.html "10 Minute Tutorial"). And if you have any questions about Shiro, please check out our [community forum](forums.html "Forums") or [user mailing list](mailing-lists.html "Mailing Lists") for answers from the community.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/cryptography.html
----------------------------------------------------------------------
diff --git a/cryptography.html b/cryptography.html
deleted file mode 100644
index a5f5faf..0000000
--- a/cryptography.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<p>TO DO. In the mean time, you can read more about <a href="cryptography-features.html" title="Apache Shiro Cryptography Features">Shiro's Crypography Features</a>.</p>
-
-<h2><a name="Cryptography-Lendahandwithdocumentation"></a>Lend a hand with documentation </h2>
-
-<p>While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time.  If you'd like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro. </p>
-
-<p>The easiest way to contribute your documentation is to send it to the <a class="external-link" href="http://shiro-user.582556.n2.nabble.com/" rel="nofollow">User Forum</a> or the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.</p>

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/cryptography.md
----------------------------------------------------------------------
diff --git a/cryptography.md b/cryptography.md
new file mode 100644
index 0000000..1d41ddb
--- /dev/null
+++ b/cryptography.md
@@ -0,0 +1,8 @@
+TODO. In the mean time, you can read more about [Shiro's Crypography Features](cryptography-features.html "Apache Shiro Cryptography Features").
+
+<a name="Cryptography-Lendahandwithdocumentation"></a>
+##Lend a hand with documentation
+
+While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time. If you'd like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.
+
+The easiest way to contribute your documentation is to send it to the [User Forum](http://shiro-user.582556.n2.nabble.com/) or the [User Mailing List](mailing-lists.html "Mailing Lists").
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/developer-resources.html.vtl
----------------------------------------------------------------------
diff --git a/developer-resources.html.vtl b/developer-resources.html.vtl
deleted file mode 100644
index 4faeafb..0000000
--- a/developer-resources.html.vtl
+++ /dev/null
@@ -1,34 +0,0 @@
-<h1><a name="DeveloperResources-ApacheShiroDeveloperResources"></a>Apache Shiro Developer Resources</h1>
-
-<p>This page and its children are dedicated for reference information used by the Apache Shiro development team when performing tasks as a committer or contributor</p>
-
-<h2><a name="DeveloperResources-WritingDocumentation"></a>Writing Documentation</h2>
-
-<p>All non-JavaDoc documentation is managed in our <a class="external-link" href="https://github.com/apache/shiro-site">apache/shiro-site</a> repo.</p>
-
-<h2><a name="DeveloperResources-SourceCodeRepository"></a>Source Code Repository</h2>
-
-<p>We use a Git repository located at <a class="external-link" href="git://git.apache.org/shiro.git">git://git.apache.org/shiro.git</a>.</p>
-
-<p>Active development is done in the <tt>master</tt> branch, and maintenance typically on the <tt>1.2.x</tt> branch.</p>
-
-<h3><a name="DeveloperResources-BuildingfromGit"></a>Building from Git</h3>
-
-<p>For Shiro cutting-edge development, you can clone the code from Git and build it using <a class="external-link" href="http://maven.apache.org">Maven</a> 2.2+:</p>
-
-<ol><li>Check out the code:
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-git clone https:<span class="code-comment">//github.com/apache/shiro.git</span>
-</pre>
-</div></div></li><li>Build the project using <a class="external-link" href="http://maven.apache.org">Maven</a> 2.2+:
-<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-cd shiro
-mvn install
-</pre>
-</div></div>
-<p>The resulting artifacts will be in your local M2 Repo under the org.apache.shiro group.</p></li></ol>
-
-
-#danger('Cutting-edge development', 'When building from <tt>master</tt> or any branches, use the generated artifacts at your own risk!  Current and previous stable releases will always be available via the <a href="download.html" title="Download">Download</a> page.')
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/developer-resources.md.vtl
----------------------------------------------------------------------
diff --git a/developer-resources.md.vtl b/developer-resources.md.vtl
new file mode 100644
index 0000000..eb4b12f
--- /dev/null
+++ b/developer-resources.md.vtl
@@ -0,0 +1,38 @@
+<a name="DeveloperResources-ApacheShiroDeveloperResources"></a>
+#[[#Apache Shiro Developer Resources]]#
+
+This page and its children are dedicated for reference information used by the Apache Shiro development team when performing tasks as a committer or contributor
+
+<a name="DeveloperResources-WritingDocumentation"></a>
+#[[##Writing Documentation]]#
+
+All non-JavaDoc documentation is managed in our [apache/shiro-site](https://github.com/apache/shiro-site) repo.
+
+<a name="DeveloperResources-SourceCodeRepository"></a>
+#[[##Source Code Repository]]#
+
+We use a Git repository located at [git://git.apache.org/shiro.git](git://git.apache.org/shiro.git).
+
+Active development is done in the `master` branch, and maintenance typically on the `1.2.x` branch.
+
+<a name="DeveloperResources-BuildingfromGit"></a>
+#[[###Building from Git]]#
+
+For Shiro cutting-edge development, you can clone the code from Git and build it using [Maven](http://maven.apache.org) 2.2+:
+
+1.  Check out the code:
+
+    ``` bash
+    git clone https://github.com/apache/shiro.git
+    ```
+
+2.  Build the project using [Maven](http://maven.apache.org) 3.x+:
+    
+    ``` bash
+    cd shiro
+    mvn install
+    ```
+    
+    The resulting artifacts will be in your local M2 Repo under the org.apache.shiro group.
+
+#danger('Cutting-edge development', 'When building from `master` or any branches, use the generated artifacts at your own risk!  Current and previous stable releases will always be available via the <a href="download.html" title="Download">Download</a> page.')
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/developers.html
----------------------------------------------------------------------
diff --git a/developers.html b/developers.html
deleted file mode 100644
index fa94209..0000000
--- a/developers.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<h1><a name="Developers-ApacheShiroDeveloperReferenceInformation"></a>Apache Shiro Developer Reference Information</h1>
-
-<p>This page and its children are dedicated for reference information used by the Apache Shiro development team when performing tasks as a committer.</p>
-
-<h2><a name="Developers-WritingDocumentation"></a>Writing Documentation</h2>
-
-<p>All non-JavaDoc documentation is written in our <a class="external-link" href="https://cwiki.apache.org/confluence/display/SHIRO">Apache Shiro Confluence Wiki Space</a>.  This space is converted into the public website as described below.</p>
-
-<h2><a name="Developers-Version2Brainstorming"></a>Version 2 Brainstorming</h2>
-
-<p>Version 2 has no timeline yet, but if you're interested in seeing what the major ideas are, as well as to contribute any of your own, you can visit the <a class="external-link" href="https://cwiki.apache.org/confluence/display/SHIRO/Version+2+Brainstorming">Version 2 Brainstorming Page</a>.</p>
-
-<h2><a name="Developers-Website"></a>Website</h2>
-
-<p>The Shiro website is automatically generated based on the content maintained in the <a class="external-link" href="https://cwiki.apache.org/confluence/display/SHIRO">Apache Shiro Confluence Wiki Space</a>, with a few notable exceptions that we'll cover in a bit.  Here's how it works:</p>
-
-<ol><li>Shiro committers and approved contributors modify the Confluence wiki pages as necessary.  The left navigation panel is controlled by the <a class="external-link" href="https://cwiki.apache.org/confluence/display/SHIRO/Navigation">Navigation wiki page</a>.
-<br clear="none" class="atl-forced-newline">
-<br clear="none" class="atl-forced-newline"></li><li>Confluence detects changes to these pages and executes a 3rd-party <a class="external-link" href="http://code.google.com/p/couldit-autoexport" rel="nofollow">Auto Export Confluence Plugin</a> that renders the content to .html files that can be served to the world (this plugin was installed in Confluence by the Apache Infrastructure team).  If you're setting up <tt>Auto Export</tt> for the first time, read the "Setting up Confluence Export" section below.
-<br clear="none" class="atl-forced-newline">
-<br clear="none" class="atl-forced-newline"> 
-	<ol><li>A project contributor makes a single Velocity-based HTML template file.  It can reference associated static assets (images, css files, javascript, etc) as necessary.  They test it in their HTML design tool of choice to get the look and feel they want.
-<br clear="none" class="atl-forced-newline">
-<br clear="none" class="atl-forced-newline"></li><li>The template designer sends the one HTML template file only (and not the referenced static assets) to an Apache member with Confluence administrative privileges and asks them to install their HTML template file into the <tt>Auto Export</tt> plugin configuration.  Unfortunately only a Confluence administrators may perform this function - the plugin does not support administration on a per-project level.
-<br clear="none" class="atl-forced-newline">
-<br clear="none" class="atl-forced-newline">
-You will have to separately upload the any referenced static assets to another location.  We'll cover that shortly.
-<br clear="none" class="atl-forced-newline">
-<br clear="none" class="atl-forced-newline"></li><li>The Confluence administrator installs the HTML template for the project's space only.</li><li>For each wiki page, the auto export plugin merges the page content with an HTML template and outputs a new <tt>.html</tt> file (html template + wiki content body = finished page).</li><li>All of the output files and any associated data (attachments, etc) are placed in a filesystem directory that mirrors content tree hierarchy in the wiki.<br clear="none">
-the The output files mirror the  fileThe auto export plugin takes all of the pages and their content (attachments, etc), applies a single HTML template to each wiki page, and outputs each 'merged' page (html template + embedded wiki content = finished page)</li></ol>
-	</li></ol>
-
-
-<p>The website files are maintained on <tt>people.apache.org</tt> in <tt>/www/shiro.apache.org</tt>:</p>
-
-<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
-<pre>&gt; ssh people.apache.org
-
-(a bunch of login messages)
-
-[lhazlewood@minotaur:~]$
-[lhazlewood@minotaur:~]$ cd /www/shiro.apache.org
-[lhazlewood@minotaur:/www/shiro.apache.org]$ 
-</pre>
-</div></div>
-
-<p>Changes made to any files under this directory are synced and published to a set of mirrored Apache web servers that we can't access.  So note: <b>Any changes to files under this directory will be propagated to the public Shiro site</b>.  Be careful!</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/developers.md
----------------------------------------------------------------------
diff --git a/developers.md b/developers.md
new file mode 100644
index 0000000..e0a06d0
--- /dev/null
+++ b/developers.md
@@ -0,0 +1,48 @@
+<a name="Developers-ApacheShiroDeveloperReferenceInformation"></a>
+#Apache Shiro Developer Reference Information
+
+This page and its children are dedicated for reference information used by the Apache Shiro development team when performing tasks as a committer.
+
+<a name="Developers-WritingDocumentation"></a>
+##Writing Documentation
+
+All non-JavaDoc documentation is written in our [Apache Shiro Confluence Wiki Space](https://cwiki.apache.org/confluence/display/SHIRO). This space is converted into the public website as described below.
+
+<a name="Developers-Version2Brainstorming"></a>
+##Version 2 Brainstorming
+
+Version 2 has no timeline yet, but if you're interested in seeing what the major ideas are, as well as to contribute any of your own, you can visit the [Version 2 Brainstorming Page](https://cwiki.apache.org/confluence/display/SHIRO/Version+2+Brainstorming).
+
+<a name="Developers-Website"></a>
+##Website
+
+The Shiro website is automatically generated based on the content maintained in the [Apache Shiro Confluence Wiki Space](https://cwiki.apache.org/confluence/display/SHIRO), with a few notable exceptions that we'll cover in a bit. Here's how it works:
+
+1.  Shiro committers and approved contributors modify the Confluence wiki pages as necessary. The left navigation panel is controlled by the [Navigation wiki page](https://cwiki.apache.org/confluence/display/SHIRO/Navigation).
+
+2.  Confluence detects changes to these pages and executes a 3rd-party [Auto Export Confluence Plugin](http://code.google.com/p/couldit-autoexport) that renders the content to .html files that can be served to the world (this plugin was installed in Confluence by the Apache Infrastructure team). If you're setting up `Auto Export` for the first time, read the "Setting up Confluence Export" section below.
+
+    1.  A project contributor makes a single Velocity-based HTML template file. It can reference associated static assets (images, css files, javascript, etc) as necessary. They test it in their HTML design tool of choice to get the look and feel they want.
+    
+    2.  The template designer sends the one HTML template file only (and not the referenced static assets) to an Apache member with Confluence administrative privileges and asks them to install their HTML template file into the `Auto Export` plugin configuration. Unfortunately only a Confluence administrators may perform this function - the plugin does not support administration on a per-project level.
+    
+    You will have to separately upload the any referenced static assets to another location. We'll cover that shortly.
+    
+    3.  The Confluence administrator installs the HTML template for the project's space only.
+    4.  For each wiki page, the auto export plugin merges the page content with an HTML template and outputs a new `.html` file (html template + wiki content body = finished page).
+    5.  All of the output files and any associated data (attachments, etc) are placed in a filesystem directory that mirrors content tree hierarchy in the wiki.
+    the The output files mirror the fileThe auto export plugin takes all of the pages and their content (attachments, etc), applies a single HTML template to each wiki page, and outputs each 'merged' page (html template + embedded wiki content = finished page)
+
+The website files are maintained on `people.apache.org` in `/www/shiro.apache.org`:
+
+``` bash
+> ssh people.apache.org
+
+(a bunch of login messages)
+
+[lhazlewood@minotaur:~]$
+[lhazlewood@minotaur:~]$ cd /www/shiro.apache.org
+[lhazlewood@minotaur:/www/shiro.apache.org]$ 
+```
+
+Changes made to any files under this directory are synced and published to a set of mirrored Apache web servers that we can't access. So note: **Any changes to files under this directory will be propagated to the public Shiro site**. Be careful!
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/documentation-help-block.html
----------------------------------------------------------------------
diff --git a/documentation-help-block.html b/documentation-help-block.html
deleted file mode 100644
index 58035ba..0000000
--- a/documentation-help-block.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<h2><a name="DocumentationHelpBlock-Lendahandwithdocumentation"></a>Lend a hand with documentation </h2>
-
-<p>While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time.  If you'd like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro. </p>
-
-<p>The easiest way to contribute your documentation is to send it to the <a class="external-link" href="http://shiro-user.582556.n2.nabble.com/" rel="nofollow">User Forum</a> or the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/documentation-help-block.md
----------------------------------------------------------------------
diff --git a/documentation-help-block.md b/documentation-help-block.md
new file mode 100644
index 0000000..0c75793
--- /dev/null
+++ b/documentation-help-block.md
@@ -0,0 +1,6 @@
+<a name="DocumentationHelpBlock-Lendahandwithdocumentation"></a>
+##Lend a hand with documentation
+
+While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time. If you'd like to help the Shiro project, please consider corrected, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.
+
+The easiest way to contribute your documentation is to send it to the [User Forum](http://shiro-user.582556.n2.nabble.com/) or the [User Mailing List](mailing-lists.html "Mailing Lists").
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/events.html
----------------------------------------------------------------------
diff --git a/events.html b/events.html
deleted file mode 100644
index b053cd3..0000000
--- a/events.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<h1><a name="Events-ApacheShiroEvents"></a>Apache Shiro Events</h1>
-
-<p>Below is list of upcoming and past Shiro events.  </p>
-
-<h2><a name="Events-UpcomingEvents"></a>Upcoming Events</h2>
-
-<h3><a name="Events-DevNexus%3AApplicationSecuritywithApacheShiro"></a>DevNexus: Application Security with Apache Shiro</h3>
-<p>March 22, 2011, Atlanta, GA
-<br clear="none" class="atl-forced-newline"><a class="external-link" href="https://www.devnexus.com/s/presentations#1138" rel="nofollow">https://www.devnexus.com/s/presentations#1138</a></p>
-
-<h2><a name="Events-PastEvents"></a>Past Events</h2>
-
-<h3><a name="Events-SanFranciscoJavaUserGroup%3ASuperSimpleApplicationSecuritywithApacheShiro"></a>San Francisco Java User Group: Super Simple Application Security with Apache Shiro</h3>
-<p>October 12, 2010, San Francisco, CA
-<br clear="none" class="atl-forced-newline"><a class="external-link" href="http://www.meetup.com/sfjava/" rel="nofollow">http://www.meetup.com/sfjava/</a></p>
-
-<h3><a name="Events-SDForum%3ASecuringApplicationswithApacheShiro"></a>SDForum: Securing Applications with Apache Shiro</h3>
-<p>June 1, 2010, Palo Alto, CA</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/events.md
----------------------------------------------------------------------
diff --git a/events.md b/events.md
new file mode 100644
index 0000000..e2e3a36
--- /dev/null
+++ b/events.md
@@ -0,0 +1,27 @@
+<a name="Events-ApacheShiroEvents"></a>
+#Apache Shiro Events
+
+Below is list of upcoming and past Shiro events.
+
+<a name="Events-UpcomingEvents"></a>
+##Upcoming Events
+
+<a name="Events-DevNexus%3AApplicationSecuritywithApacheShiro"></a>
+###DevNexus: Application Security with Apache Shiro
+
+March 22, 2011, Atlanta, GA
+[https://www.devnexus.com/s/presentations#1138](https://www.devnexus.com/s/presentations#1138)
+
+<a name="Events-PastEvents"></a>
+##Past Events
+
+<a name="Events-SanFranciscoJavaUserGroup%3ASuperSimpleApplicationSecuritywithApacheShiro"></a>
+###San Francisco Java User Group: Super Simple Application Security with Apache Shiro
+
+October 12, 2010, San Francisco, CA
+[http://www.meetup.com/sfjava/](http://www.meetup.com/sfjava/)
+
+<a name="Events-SDForum%3ASecuringApplicationswithApacheShiro"></a>
+###SDForum: Securing Applications with Apache Shiro
+
+June 1, 2010, Palo Alto, CA
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/getting-started-block.html
----------------------------------------------------------------------
diff --git a/getting-started-block.html b/getting-started-block.html
deleted file mode 100644
index a6df7c2..0000000
--- a/getting-started-block.html
+++ /dev/null
@@ -1,2 +0,0 @@
-<h2><a name="GettingStartedBlock-GetStartedin10MinuteswithShiro"></a>Get Started in 10 Minutes with Shiro</h2>
-<p>Try out Shiro for yourself with our <a href="10-minute-tutorial.html" title="10 Minute Tutorial">10 Minute Tutorial</a>.  And if you have any questions about Shiro, please check out our <a href="forums.html" title="Forums">community forum</a> or <a href="mailing-lists.html" title="Mailing Lists">user mailing list</a> for answers from the community.</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/getting-started-block.md
----------------------------------------------------------------------
diff --git a/getting-started-block.md b/getting-started-block.md
new file mode 100644
index 0000000..02209ea
--- /dev/null
+++ b/getting-started-block.md
@@ -0,0 +1,4 @@
+<a name="GettingStartedBlock-GetStartedin10MinuteswithShiro"></a>
+##Get Started in 10 Minutes with Shiro
+
+Try out Shiro for yourself with our [10 Minute Tutorial](10-minute-tutorial.html "10 Minute Tutorial"). And if you have any questions about Shiro, please check out our [community forum](forums.html "Forums") or [user mailing list](mailing-lists.html "Mailing Lists") for answers from the community.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/graduation-resolution.html
----------------------------------------------------------------------
diff --git a/graduation-resolution.html b/graduation-resolution.html
deleted file mode 100644
index e292009..0000000
--- a/graduation-resolution.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<h1><a name="GraduationResolution-ApacheShiroGraduationResolution"></a>Apache Shiro Graduation Resolution</h1>
-
-<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
-<pre>Establish Apache Shiro Project
-
-WHEREAS, the Board of Directors deems it to be in the best
-interests of the Foundation and consistent with the Foundation's
-purpose to establish a Project Management Committee charged with
-the creation and maintenance of open-source software related to
-application security, for distribution at no charge to the 
-public.
-
-NOW, THEREFORE, BE IT RESOLVED, that a Project Management
-Committee (PMC), to be known as the "The Apache Shiro Project",
-be and hereby is established pursuant to Bylaws of the
-Foundation; and be it further
-
-RESOLVED, that The Apache Shiro Project be and hereby is
-responsible for the creation and maintenance of a software
-project related to application security; and be it further
-
-RESOLVED, that the office of "Vice President, Shiro" be and
-hereby is created, the person holding such office to serve at the
-direction of the Board of Directors as the chair of The Apache
-Shiro Project, and to have primary responsibility for management 
-of the projects within the scope of responsibility of 
-The Apache Shiro Project; and be it further
-
-RESOLVED, that the persons listed immediately below be and
-hereby are appointed to serve as the initial members of The
-Apache Shiro Project:
-
-* Les Hazlewood       (lhazlewood@apache.org)
-* Kalle Korhonen      (kaosko@apache.org)
-* Peter Ledbrook      (pledbrook@apache.org)
-* Jeremy Haile        (jhaile@apache.org)
-* Craig L Russell     (craig.russell@oracle.com)
-
-NOW, THEREFORE, BE IT FURTHER RESOLVED, that Les Hazlewood
-be and hereby is appointed to the office of Vice
-President, Shiro, to serve in accordance with and subject to
-the direction of the Board of Directors and the Bylaws of the
-Foundation until death, resignation, retirement, removal or
-disqualification, or until a successor is appointed; and be it
-further
-
-RESOLVED, that the initial Apache Shiro Project be and hereby
-is tasked with the migration and rationalization of the Apache
-Incubator Shiro podling; and be it further
-
-RESOLVED, that all responsibility pertaining to the Apache
-Incubator Shiro podling encumbered upon the Apache Incubator
-PMC are hereafter discharged.
-</pre>
-</div></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/graduation-resolution.md
----------------------------------------------------------------------
diff --git a/graduation-resolution.md b/graduation-resolution.md
new file mode 100644
index 0000000..9c1c62c
--- /dev/null
+++ b/graduation-resolution.md
@@ -0,0 +1,55 @@
+<a name="GraduationResolution-ApacheShiroGraduationResolution"></a>
+#Apache Shiro Graduation Resolution
+
+``` nohighlight
+Establish Apache Shiro Project
+
+WHEREAS, the Board of Directors deems it to be in the best
+interests of the Foundation and consistent with the Foundation's
+purpose to establish a Project Management Committee charged with
+the creation and maintenance of open-source software related to
+application security, for distribution at no charge to the 
+public.
+
+NOW, THEREFORE, BE IT RESOLVED, that a Project Management
+Committee (PMC), to be known as the "The Apache Shiro Project",
+be and hereby is established pursuant to Bylaws of the
+Foundation; and be it further
+
+RESOLVED, that The Apache Shiro Project be and hereby is
+responsible for the creation and maintenance of a software
+project related to application security; and be it further
+
+RESOLVED, that the office of "Vice President, Shiro" be and
+hereby is created, the person holding such office to serve at the
+direction of the Board of Directors as the chair of The Apache
+Shiro Project, and to have primary responsibility for management 
+of the projects within the scope of responsibility of 
+The Apache Shiro Project; and be it further
+
+RESOLVED, that the persons listed immediately below be and
+hereby are appointed to serve as the initial members of The
+Apache Shiro Project:
+
+* Les Hazlewood       (lhazlewood@apache.org)
+* Kalle Korhonen      (kaosko@apache.org)
+* Peter Ledbrook      (pledbrook@apache.org)
+* Jeremy Haile        (jhaile@apache.org)
+* Craig L Russell     (craig.russell@oracle.com)
+
+NOW, THEREFORE, BE IT FURTHER RESOLVED, that Les Hazlewood
+be and hereby is appointed to the office of Vice
+President, Shiro, to serve in accordance with and subject to
+the direction of the Board of Directors and the Bylaws of the
+Foundation until death, resignation, retirement, removal or
+disqualification, or until a successor is appointed; and be it
+further
+
+RESOLVED, that the initial Apache Shiro Project be and hereby
+is tasked with the migration and rationalization of the Apache
+Incubator Shiro podling; and be it further
+
+RESOLVED, that all responsibility pertaining to the Apache
+Incubator Shiro podling encumbered upon the Apache Incubator
+PMC are hereafter discharged.
+```
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/jsp-tag-library.html
----------------------------------------------------------------------
diff --git a/jsp-tag-library.html b/jsp-tag-library.html
deleted file mode 100644
index 9297073..0000000
--- a/jsp-tag-library.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<h1><a name="JSPTagLibrary-JSP%2FGSPTagLibraryforApacheShiro"></a>JSP/GSP Tag Library for Apache Shiro</h1>
-
-<ul><li><b>&lt;shiro:guest/&gt;</b> - Displays body content only if the current Subject IS NOT known to the system, either because they have not logged in or they have no corresponding 'RememberMe' identity. It is logically opposite to the 'user' tag.</li></ul>
-
-
-<ul><li><b>&lt;shiro:user/&gt;</b> - Displays body content only if the current Subject has a known identity, either from a previous login or from 'RememberMe' services. Note that this is semantically different from the 'authenticated' tag, which is more restrictive. It is logically opposite to the 'guest' tag.</li></ul>
-
-
-<ul><li><b>&lt;shiro:principal/&gt;</b> - Displays the user's principal or a property of the user's principal.</li></ul>
-
-
-<ul><li><b>&lt;shiro:hasPermission/&gt;</b> - Displays body content only if the current Subject (user) 'has' (implies) the specified permission (i.e the user has the specified ability).</li></ul>
-
-
-<ul><li><b>&lt;shiro:lacksPermission/&gt;</b> - Displays body content only if the current Subject (user) does NOT have (not imply) the specified permission (i.e. the user lacks the specified ability)</li></ul>
-
-
-<ul><li><b>&lt;shiro:hasRole/&gt;</b> - Displays body content only if the current user has the specified role.</li></ul>
-
-
-<ul><li><b>&lt;shiro:lacksRole/&gt;</b> - Displays body content only if the current user does NOT have the specified role (i.e. they explicitly lack the specified role)</li></ul>
-
-
-<ul><li><b>&lt;shiro:hasAnyRoles/&gt;</b> - Displays body content only if the current user has one of the specified roles from a comma-separated list of role names</li></ul>
-
-
-<ul><li><b>&lt;shiro:authenticated/&gt;</b> - Displays body content only if the current user has successfully authenticated <em>during their current session</em>. It is more restrictive than the 'user' tag. It is logically opposite to the 'notAuthenticated' tag.</li></ul>
-
-
-<ul><li><b>&lt;shiro:notAuthenticated/&gt;</b> - Displays body content only if the current user has NOT succesfully authenticated <em>during their current session</em>. It is logically opposite to the 'authenticated' tag.</li></ul>

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/jsp-tag-library.md
----------------------------------------------------------------------
diff --git a/jsp-tag-library.md b/jsp-tag-library.md
new file mode 100644
index 0000000..5804469
--- /dev/null
+++ b/jsp-tag-library.md
@@ -0,0 +1,22 @@
+<a name="JSPTagLibrary-JSP%2FGSPTagLibraryforApacheShiro"></a>
+#JSP/GSP Tag Library for Apache Shiro
+
+*   **<shiro:guest/>** - Displays body content only if the current Subject IS NOT known to the system, either because they have not logged in or they have no corresponding 'RememberMe' identity. It is logically opposite to the 'user' tag.
+
+*   **<shiro:user/>** - Displays body content only if the current Subject has a known identity, either from a previous login or from 'RememberMe' services. Note that this is semantically different from the 'authenticated' tag, which is more restrictive. It is logically opposite to the 'guest' tag.
+
+*   **<shiro:principal/>** - Displays the user's principal or a property of the user's principal.
+
+*   **<shiro:hasPermission/>** - Displays body content only if the current Subject (user) 'has' (implies) the specified permission (i.e the user has the specified ability).
+
+*   **<shiro:lacksPermission/>** - Displays body content only if the current Subject (user) does NOT have (not imply) the specified permission (i.e. the user lacks the specified ability)
+
+*   **<shiro:hasRole/>** - Displays body content only if the current user has the specified role.
+
+*   **<shiro:lacksRole/>** - Displays body content only if the current user does NOT have the specified role (i.e. they explicitly lack the specified role)
+
+*   **<shiro:hasAnyRoles/>** - Displays body content only if the current user has one of the specified roles from a comma-separated list of role names
+
+*   **<shiro:authenticated/>** - Displays body content only if the current user has successfully authenticated _during their current session_. It is more restrictive than the 'user' tag. It is logically opposite to the 'notAuthenticated' tag.
+
+*   **<shiro:notAuthenticated/>** - Displays body content only if the current user has NOT succesfully authenticated _during their current session_. It is logically opposite to the 'authenticated' tag.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/mailing-lists.html
----------------------------------------------------------------------
diff --git a/mailing-lists.html b/mailing-lists.html
deleted file mode 100644
index 751d45b..0000000
--- a/mailing-lists.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<h1><a name="MailingLists-ApacheShiroMailingLists"></a>Apache Shiro Mailing Lists</h1>
-
-<div class="table-wrap">
-    <table class="confluenceTable">
-        <tbody>
-        <tr>
-            <th colspan="1" rowspan="1" class="confluenceTh"> List Name</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> List Address</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Subscribe</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Unsubscribe</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> ASF Archive</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Nabble (Online Forums)</th>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro User List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user@shiro.apache.org" rel="nofollow">user@shiro.apache.org</a>
-            </td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-user/">ASF Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://shiro-user.582556.n2.nabble.com/" rel="nofollow">Nabble Forum and Archive</a></td>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro Developer List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev@shiro.apache.org" rel="nofollow">dev@shiro.apache.org</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-dev/">ASF Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://shiro-developer.582600.n2.nabble.com/" rel="nofollow">Nabble Forum and Archive</a></td>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro SCM List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits@shiro.apache.org" rel="nofollow">commits@shiro.apache.org</a> </td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-commits/">ASF Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"></td>
-        </tr>
-        </tbody>
-    </table>
-</div>
-
-
-<h3><a name="MailingLists-DiscussionForums"></a>Discussion Forums</h3>
-
-<p>If you prefer you could use our discussion <a href="forums.html" title="Forums">Forums</a> which are sync'd with the above mailing lists.</p>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/4f3855d6/mailing-lists.md
----------------------------------------------------------------------
diff --git a/mailing-lists.md b/mailing-lists.md
new file mode 100644
index 0000000..b480feb
--- /dev/null
+++ b/mailing-lists.md
@@ -0,0 +1,56 @@
+<a name="MailingLists-ApacheShiroMailingLists"></a>
+#Apache Shiro Mailing Lists
+
+<!-- Markdown tables need some style before switchig
+| List Name            | List Address                      | Subscribe                                              | Unsubscribe                                                | ASF Archive                                                            | Nabble (Online Forums)                                                   |
+|----------------------|-----------------------------------|--------------------------------------------------------|------------------------------------------------------------|------------------------------------------------------------------------|--------------------------------------------------------------------------|
+| Shiro User List      | [mailto:user@shiro.apache.org]    | [Subscribe](mailto:user-subscribe@shiro.apache.org)    | [Unsubscribe](mailto:user-unsubscribe@shiro.apache.org)    | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-user/)    | [Nabble Forum and Archive](http://shiro-user.582556.n2.nabble.com/)      |
+| Shiro Developer List | [mailto:dev@shiro.apache.org]     | [Subscribe](mailto:dev-subscribe@shiro.apache.org)     | [Unsubscribe](mailto:dev-unsubscribe@shiro.apache.org)     | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-dev)      | [Nabble Forum and Archive](http://shiro-developer.582600.n2.nabble.com/) |
+| Shiro SCM List       | [mailto:commits@shiro.apache.org] | [Subscribe](mailto:commits-subscribe@shiro.apache.org) | [Unsubscribe](mailto:commits-unsubscribe@shiro.apache.org) | [ASF Archive](http://mail-archives.apache.org/mod_mbox/shiro-commits/) |                                                                          |
+-->
+
+<div class="table-wrap">
+    <table class="confluenceTable">
+        <tbody>
+        <tr>
+            <th colspan="1" rowspan="1" class="confluenceTh"> List Name</th>
+            <th colspan="1" rowspan="1" class="confluenceTh"> List Address</th>
+            <th colspan="1" rowspan="1" class="confluenceTh"> Subscribe</th>
+            <th colspan="1" rowspan="1" class="confluenceTh"> Unsubscribe</th>
+            <th colspan="1" rowspan="1" class="confluenceTh"> ASF Archive</th>
+            <th colspan="1" rowspan="1" class="confluenceTh"> Nabble (Online Forums)</th>
+        </tr>
+        <tr>
+            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro User List</td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user@shiro.apache.org" rel="nofollow">user@shiro.apache.org</a>
+            </td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:user-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-user/">ASF Archive</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://shiro-user.582556.n2.nabble.com/" rel="nofollow">Nabble Forum and Archive</a></td>
+        </tr>
+        <tr>
+            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro Developer List</td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev@shiro.apache.org" rel="nofollow">dev@shiro.apache.org</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:dev-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-dev/">ASF Archive</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://shiro-developer.582600.n2.nabble.com/" rel="nofollow">Nabble Forum and Archive</a></td>
+        </tr>
+        <tr>
+            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro SCM List</td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits@shiro.apache.org" rel="nofollow">commits@shiro.apache.org</a> </td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits-subscribe@shiro.apache.org" rel="nofollow">Subscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="mailto:commits-unsubscribe@shiro.apache.org" rel="nofollow">Unsubscribe</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"><a class="external-link" href="http://mail-archives.apache.org/mod_mbox/shiro-commits/">ASF Archive</a></td>
+            <td colspan="1" rowspan="1" class="confluenceTd"></td>
+        </tr>
+        </tbody>
+    </table>
+</div>
+
+
+<a name="MailingLists-DiscussionForums"></a>
+###Discussion Forums
+
+If you prefer you could use our discussion [Forums](forums.html "Forums") which are sync'd with the above mailing lists.
\ No newline at end of file