Modified: 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-ACLs.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-ACLs.html?rev=1722689&r1=1722688&r2=1722689&view=diff
==============================================================================
--- 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-ACLs.html
 (original)
+++ 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-ACLs.html
 Sat Jan  2 23:59:48 2016
@@ -114,7 +114,7 @@ https://github.com/apache/qpid-proton/bl
         <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-java-trunk/index.html">Qpid Java Trunk</a></li><li><a 
href="/releases/qpid-java-trunk/java-broker/book/index.html">AMQP Messaging 
Broker (Java)</a></li><li>8.3.&#160;Access Control Lists</li></ul>
 
         <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.3.&#160;Access Control Lists</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security-Group-Providers.html">Prev</a>&#160;</td><th 
align="center" width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Security-Configuration-Encryption.html">Next</a></td></tr></table><hr
 /></div><div class="section"><div class="titlepage"><div><div><h2 
class="title"><a id="Java-Broker-Security-ACLs"></a>8.3.&#160;Access Control 
Lists</h2></div></div></div><p>
+          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.3.&#160;Access Control Lists</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security-Group-Providers.html">Prev</a>&#160;</td><th 
align="center" width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Security-Configuration-Encryption.html">Next</a></td></tr></table><hr
 /></div><div class="section"><div class="titlepage"><div><div><h2 
class="title" style="clear: both"><a 
id="Java-Broker-Security-ACLs"></a>8.3.&#160;Access Control 
Lists</h2></div></div></div><p>
     In Qpid, Access Control Lists (ACLs) specify which actions can be 
performed by each authenticated user.
     To enable, an <span class="emphasis"><em>Access Control 
Provider</em></span> needs to be configured on the <span 
class="emphasis"><em>Broker</em></span>.
     The <span class="emphasis"><em>Access Control Provider</em></span> of type 
"AclFile" uses local file to specify the ACL rules.
@@ -131,7 +131,7 @@ https://github.com/apache/qpid-proton/bl
     The ACL Providers can be configured using <a class="link" 
href="Java-Broker-Management-Channel-REST-API.html" title="6.3.&#160;REST 
API">REST Management interfaces</a>
     and <a class="link" href="Java-Broker-Management-Channel-Web-Console.html" 
title="6.2.&#160;Web Management Console">Web Management Console</a>.
   </p><p>The following ACL Provider managing operations are available from Web 
Management Console:
-    </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li 
class="listitem"><p>A new ACL Provider can be added by clicking onto "Add 
Access Control Provider" on the Broker tab.</p></li><li class="listitem"><p>An 
ACL Provider details can be viewed on the Access Control Provider tab.
+    </p><div class="itemizedlist"><ul class="itemizedlist" 
style="list-style-type: disc; "><li class="listitem"><p>A new ACL Provider can 
be added by clicking onto "Add Access Control Provider" on the Broker 
tab.</p></li><li class="listitem"><p>An ACL Provider details can be viewed on 
the Access Control Provider tab.
         The tab is shown after clicking onto ACL Provider name in the Broker 
object tree or after clicking
         onto ACL Provider row in ACL Providers grid on the Broker 
tab.</p></li><li class="listitem"><p>An existing ACL Provider can be deleted by 
clicking onto buttons "Delete Access Control Provider"
         on the Broker tab or Access Control Provider 
tab.</p></li></ul></div><p>
@@ -173,7 +173,7 @@ https://github.com/apache/qpid-proton/bl
       at a certain level of abstraction (e.g. QUEUE) and apply them 
consistently across the whole system.
     </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 
class="title">Note</h3><p>
         Some rules can be restricted to the virtual host if property 
virtualhost_name is specified.
-        </p><div class="example"><a id="idm140601087486448"></a><p 
class="title"><strong>Example&#160;8.1.&#160;Restrict rules to specific virtual 
hosts</strong></p><div class="example-contents"><pre class="programlisting">
+        </p><div class="example"><a id="d0e4235"></a><p 
class="title"><strong>Example&#160;8.1.&#160;Restrict rules to specific virtual 
hosts</strong></p><div class="example-contents"><pre class="programlisting">
       ACL ALLOW bob CREATE QUEUE virtualhost_name="test"
       ACL ALLOW bob ALL EXCHANGE virtualhost_name="prod"
     </pre></div></div><p><br class="example-break" />
@@ -193,7 +193,7 @@ https://github.com/apache/qpid-proton/bl
       ACL DENY guest \
       ALL ALL   # A broken line
     </pre></div><div class="table"><a 
id="table-Java-Broker-Security-ACLs-Syntax_permissions"></a><p 
class="title"><strong>Table&#160;8.1.&#160;List of ACL 
permission</strong></p><div class="table-contents"><table border="1" 
summary="List of ACL permission"><colgroup><col /><col 
/></colgroup><tbody><tr><td><span 
class="command"><strong>ALLOW</strong></span></td><td><p>Allow the 
action</p></td></tr><tr><td><span 
class="command"><strong>ALLOW-LOG</strong></span></td><td><p> Allow the action 
and log the action in the log </p></td></tr><tr><td><span 
class="command"><strong>DENY</strong></span></td><td><p> Deny the 
action</p></td></tr><tr><td><span 
class="command"><strong>DENY-LOG</strong></span></td><td><p> Deny the action 
and log the action in the log</p></td></tr></tbody></table></div></div><br 
class="table-break" /><div class="table"><a 
id="table-Java-Broker-Security-ACLs-Syntax_actions"></a><p 
class="title"><strong>Table&#160;8.2.&#160;List of ACL actions</strong></p><div 
class="tab
 le-contents"><table border="1" summary="List of ACL actions"><colgroup><col 
/><col /><col /><col 
/></colgroup><thead><tr><th><p>Action</p></th><th><p>Description</p></th><th><p>Supported
 object types</p></th><th><p>Supported 
properties</p></th></tr></thead><tbody><tr><td> <span 
class="command"><strong>CONSUME</strong></span> </td><td> <p> Applied when 
subscriptions are created </p> </td><td><p>QUEUE</p></td><td><p>name, 
autodelete, temporary, durable, exclusive, alternate, owner, 
virtualhost_name</p></td></tr><tr><td> <span 
class="command"><strong>PUBLISH</strong></span> </td><td> <p> Applied on a per 
message basis on publish message transfers</p> 
</td><td><p>EXCHANGE</p></td><td><p>name, routingkey, immediate, 
virtualhost_name</p></td></tr><tr><td> <span 
class="command"><strong>CREATE</strong></span> </td><td> <p> Applied when an 
object is created, such as bindings, queues, exchanges</p> 
</td><td><p>VIRTUALHOSTNODE, VIRTUALHOST, EXCHANGE, QUEUE, USER, 
GROUP</p></td><td><p>see prope
 rties on the corresponding object type</p></td></tr><tr><td> <span 
class="command"><strong>ACCESS</strong></span> </td><td> <p> Applied when an 
object is read or accessed</p> </td><td><p>VIRTUALHOST, 
MANAGEMENT</p></td><td><p>name (for VIRTUALHOST only)</p></td></tr><tr><td> 
<span class="command"><strong>BIND</strong></span> </td><td> <p> Applied when 
queues are bound to exchanges</p> </td><td><p>EXCHANGE</p></td><td><p>name, 
routingKey, queuename, virtualhost_name, temporary, 
durable</p></td></tr><tr><td> <span 
class="command"><strong>UNBIND</strong></span> </td><td> <p> Applied when 
queues are unbound from exchanges</p> </td><td><p>EXCHANGE</p></td><td><p>name, 
routingKey, queuename, virtualhost_name, temporary, 
durable</p></td></tr><tr><td> <span 
class="command"><strong>DELETE</strong></span> </td><td> <p> Applied when 
objects are deleted </p> </td><td><p>VIRTUALHOSTNODE, VIRTUALHOST, EXCHANGE, 
QUEUE, USER, GROUP</p></td><td><p>see properties on the corresponding object 
type</p><
 /td></tr><tr><td> <span class="command"><strong>PURGE</strong></span> </td><td>
-          <p>Applied when purge the contents of a queue</p> 
</td><td><p>QUEUE</p></td><td><p> </p></td></tr><tr><td> <span 
class="command"><strong>UPDATE</strong></span> </td><td> <p> Applied when an 
object is updated </p> </td><td><p>VIRTUALHOSTNODE, VIRTUALHOST, EXCHANGE, 
QUEUE, USER, GROUP</p></td><td><p>see EXCHANGE and QUEUE 
properties</p></td></tr><tr><td> <span 
class="command"><strong>CONFIGURE</strong></span> </td><td> <p> Applied when an 
object is configured via REST management interfaces.</p> 
</td><td><p>BROKER</p></td><td><p> </p></td></tr><tr><td><span 
class="command"><strong>ACCESS_LOGS</strong></span> </td><td><p>Allows/denies 
to the specific user an operation to download broker log file(s) over REST 
interfaces</p> </td><td><p>BROKER</p></td><td><p> 
</p></td></tr></tbody></table></div></div><br class="table-break" /><div 
class="table"><a id="table-Java-Broker-Security-ACLs-Syntax_objects"></a><p 
class="title"><strong>Table&#160;8.3.&#160;List of ACL objects</strong></p
 ><div class="table-contents"><table border="1" summary="List of ACL 
 >objects"><colgroup><col /><col /><col /><col 
 >/></colgroup><thead><tr><th><p>Object 
 >type</p></th><th><p>Description</p></th><th><p>Supported 
 >actions</p></th><th><p>Supported 
 >properties</p></th></tr></thead><tbody><tr><td> <span 
 >class="command"><strong>VIRTUALHOSTNODE</strong></span> </td><td> <p>A 
 >virtualhostnode or remote replication node</p> </td><td><p>ALL, CREATE, 
 >UPDATE, DELETE</p> </td><td><p>name</p> </td></tr><tr><td> <span 
 >class="command"><strong>VIRTUALHOST</strong></span> </td><td> <p>A 
 >virtualhost</p> </td><td><p>ALL, CREATE, UPDATE, DELETE, ACCESS</p> 
 ></td><td><p>name</p> </td></tr><tr><td> <span 
 >class="command"><strong>MANAGEMENT </strong></span> </td><td> <p>Management - 
 >for web and JMX</p> </td><td><p>ALL, ACCESS</p> </td><td><p> 
 ></p></td></tr><tr><td> <span class="command"><strong>QUEUE</strong></span> 
 ></td><td> <p>A queue </p> </td><td><p>ALL, CREATE, DELETE, PURGE, CONSUME, 
 >UPDATE</p></td><td><p>na
 me, autodelete, temporary, durable, exclusive, alternate, owner, 
virtualhost_name</p></td></tr><tr><td> <span 
class="command"><strong>EXCHANGE</strong></span> </td><td><p>An 
exchange</p></td><td><p>ALL, ACCESS, CREATE, DELETE, BIND, UNBIND, PUBLISH, 
UPDATE</p></td><td><p>name, autodelete, temporary, durable, type, 
virtualhost_name, queuename(only for BIND and UNBIND), routingkey(only for BIND 
and UNBIND, PUBLISH)</p></td></tr><tr><td> <span 
class="command"><strong>USER</strong></span> </td><td> <p>A user</p> 
</td><td><p>ALL, CREATE, DELETE, 
UPDATE</p></td><td><p>name</p></td></tr><tr><td> <span 
class="command"><strong>GROUP</strong></span> </td><td> <p>A group</p> 
</td><td><p>ALL, CREATE, DELETE, 
UPDATE</p></td><td><p>name</p></td></tr><tr><td> <span 
class="command"><strong>METHOD</strong></span> </td><td> <p>Management or agent 
or broker method</p> </td><td><p>ALL, ACCESS, UPDATE</p></td><td><p>name, 
component, virtualhost_name</p></td></tr><tr><td> <span 
class="command"><strong>BR
 OKER</strong></span> </td><td> <p>The broker</p> </td><td><p>ALL, CONFIGURE, 
ACCESS_LOGS</p></td><td><p> </p></td></tr></tbody></table></div></div><br 
class="table-break" /><div class="table"><a 
id="table-Java-Broker-Security-ACLs-Syntax_properties"></a><p 
class="title"><strong>Table&#160;8.4.&#160;List of ACL 
properties</strong></p><div class="table-contents"><table border="1" 
summary="List of ACL properties"><colgroup><col /><col 
/></colgroup><tbody><tr><td><span class="command"><strong>name</strong></span> 
</td><td> <p> String. Object name, such as a queue name, exchange name or JMX 
method name.  </p> </td></tr><tr><td> <span 
class="command"><strong>durable</strong></span> </td><td> <p> Boolean. 
Indicates the object is durable </p> </td></tr><tr><td> <span 
class="command"><strong>routingkey</strong></span> </td><td> <p> String. 
Specifies routing key </p> </td></tr><tr><td> <span 
class="command"><strong>autodelete</strong></span> </td><td> <p> Boolean. 
Indicates whether or not the
  object gets deleted when the connection is closed </p> </td></tr><tr><td> 
<span class="command"><strong>exclusive</strong></span> </td><td> <p> Boolean. 
Indicates the presence of an <em class="parameter"><code>exclusive</code></em> 
flag </p> </td></tr><tr><td> <span 
class="command"><strong>temporary</strong></span> </td><td> <p> Boolean. 
Indicates the presence of an <em class="parameter"><code>temporary</code></em> 
flag </p> </td></tr><tr><td> <span class="command"><strong>type</strong></span> 
</td><td> <p> String. Type of object, such as topic, fanout, or xml </p> 
</td></tr><tr><td> <span class="command"><strong>alternate</strong></span> 
</td><td> <p> String. Name of the alternate exchange </p> </td></tr><tr><td> 
<span class="command"><strong>queuename</strong></span> </td><td> <p> String. 
Name of the queue (used only when the object is something other than <em 
class="parameter"><code>queue</code></em> </p> </td></tr><tr><td> <span 
class="command"><strong>component</strong></span>
  </td><td> <p> String. JMX component name</p> </td></tr><tr><td> <span 
class="command"><strong>from_network</strong></span> </td><td>
+          <p>Applied when purge the contents of a queue</p> 
</td><td><p>QUEUE</p></td><td><p> </p></td></tr><tr><td> <span 
class="command"><strong>UPDATE</strong></span> </td><td> <p> Applied when an 
object is updated </p> </td><td><p>VIRTUALHOSTNODE, VIRTUALHOST, EXCHANGE, 
QUEUE, USER, GROUP</p></td><td><p>see EXCHANGE and QUEUE 
properties</p></td></tr><tr><td> <span 
class="command"><strong>CONFIGURE</strong></span> </td><td> <p> Applied when an 
object is configured via REST management interfaces.</p> 
</td><td><p>BROKER</p></td><td><p> </p></td></tr><tr><td><span 
class="command"><strong>ACCESS_LOGS</strong></span> </td><td><p>Allows/denies 
the specific user to download log file(s) over REST interfaces.</p> 
</td><td><p>BROKER, VIRTUALHOST</p></td><td><p>name (for VIRTUALHOST 
only)</p></td></tr><tr><td><span 
class="command"><strong>SHUTDOWN</strong></span> </td><td><p>Allows/denies the 
specific user to shutdown the Broker.</p> </td><td><p>BROKER</p></td><td><p 
/></td></tr></tbody></t
 able></div></div><br class="table-break" /><div class="table"><a 
id="table-Java-Broker-Security-ACLs-Syntax_objects"></a><p 
class="title"><strong>Table&#160;8.3.&#160;List of ACL objects</strong></p><div 
class="table-contents"><table border="1" summary="List of ACL 
objects"><colgroup><col /><col /><col /><col 
/></colgroup><thead><tr><th><p>Object 
type</p></th><th><p>Description</p></th><th><p>Supported 
actions</p></th><th><p>Supported 
properties</p></th></tr></thead><tbody><tr><td> <span 
class="command"><strong>VIRTUALHOSTNODE</strong></span> </td><td> <p>A 
virtualhostnode or remote replication node</p> </td><td><p>ALL, CREATE, UPDATE, 
DELETE</p> </td><td><p>name</p> </td></tr><tr><td> <span 
class="command"><strong>VIRTUALHOST</strong></span> </td><td> <p>A 
virtualhost</p> </td><td><p>ALL, CREATE, UPDATE, DELETE, ACCESS, 
ACCESS_LOGS</p> </td><td><p>name</p> </td></tr><tr><td> <span 
class="command"><strong>QUEUE</strong></span> </td><td> <p>A queue </p> 
</td><td><p>ALL, CREATE, DELET
 E, PURGE, CONSUME, UPDATE</p></td><td><p>name, autodelete, temporary, durable, 
exclusive, alternate, owner, virtualhost_name</p></td></tr><tr><td> <span 
class="command"><strong>EXCHANGE</strong></span> </td><td><p>An 
exchange</p></td><td><p>ALL, ACCESS, CREATE, DELETE, BIND, UNBIND, PUBLISH, 
UPDATE</p></td><td><p>name, autodelete, temporary, durable, type, 
virtualhost_name, queuename(only for BIND and UNBIND), routingkey(only for BIND 
and UNBIND, PUBLISH)</p></td></tr><tr><td> <span 
class="command"><strong>USER</strong></span> </td><td> <p>A user</p> 
</td><td><p>ALL, CREATE, DELETE, 
UPDATE</p></td><td><p>name</p></td></tr><tr><td> <span 
class="command"><strong>GROUP</strong></span> </td><td> <p>A group</p> 
</td><td><p>ALL, CREATE, DELETE, 
UPDATE</p></td><td><p>name</p></td></tr><tr><td> <span 
class="command"><strong>METHOD</strong></span> </td><td> <p>Management or agent 
or broker method</p> </td><td><p>ALL, ACCESS, UPDATE</p></td><td><p>name, 
component, virtualhost_name</p></td></t
 r><tr><td> <span class="command"><strong>BROKER</strong></span> </td><td> 
<p>The broker</p> </td><td><p>ALL, CONFIGURE, ACCESS_LOGS</p></td><td><p> 
</p></td></tr></tbody></table></div></div><br class="table-break" /><div 
class="table"><a id="table-Java-Broker-Security-ACLs-Syntax_properties"></a><p 
class="title"><strong>Table&#160;8.4.&#160;List of ACL 
properties</strong></p><div class="table-contents"><table border="1" 
summary="List of ACL properties"><colgroup><col /><col 
/></colgroup><tbody><tr><td><span class="command"><strong>name</strong></span> 
</td><td> <p> String. Object name, such as a queue name or exchange name.</p> 
</td></tr><tr><td> <span class="command"><strong>durable</strong></span> 
</td><td> <p> Boolean. Indicates the object is durable </p> </td></tr><tr><td> 
<span class="command"><strong>routingkey</strong></span> </td><td> <p> String. 
Specifies routing key </p> </td></tr><tr><td> <span 
class="command"><strong>autodelete</strong></span> </td><td> <p> Boolean. Indi
 cates whether or not the object gets deleted when the connection is closed 
</p> </td></tr><tr><td> <span class="command"><strong>exclusive</strong></span> 
</td><td> <p> Boolean. Indicates the presence of an <em 
class="parameter"><code>exclusive</code></em> flag </p> </td></tr><tr><td> 
<span class="command"><strong>temporary</strong></span> </td><td> <p> Boolean. 
Indicates the presence of an <em class="parameter"><code>temporary</code></em> 
flag </p> </td></tr><tr><td> <span class="command"><strong>type</strong></span> 
</td><td> <p> String. Type of object, such as topic, fanout, or xml </p> 
</td></tr><tr><td> <span class="command"><strong>alternate</strong></span> 
</td><td> <p> String. Name of the alternate exchange </p> </td></tr><tr><td> 
<span class="command"><strong>queuename</strong></span> </td><td> <p> String. 
Name of the queue (used only when the object is something other than <em 
class="parameter"><code>queue</code></em> </p> </td></tr><tr><td> <span 
class="command"><strong>c
 omponent</strong></span> </td><td> <p> String. component name</p> 
</td></tr><tr><td> <span class="command"><strong>from_network</strong></span> 
</td><td>
             <p>
               Comma-separated strings representing IPv4 address ranges.
             </p>
@@ -203,7 +203,7 @@ https://github.com/apache/qpid-proton/bl
             <p>
               The rule matches if any of the address ranges match the IPv4 
address of the messaging client.
               The address ranges are specified using either Classless 
Inter-Domain Routing notation
-              (e.g. 192.168.1.0/24; see <a class="ulink" 
href="http://tools.ietf.org/html/rfc4632"; target="_top">RFC 4632</a>)
+              (e.g. 192.168.1.0/24; see <a class="link" 
href="http://tools.ietf.org/html/rfc4632"; target="_top">RFC 4632</a>)
               or wildcards (e.g. 192.169.1.*).
             </p>
           </td></tr><tr><td> <span 
class="command"><strong>from_hostname</strong></span> </td><td>
@@ -222,7 +222,7 @@ https://github.com/apache/qpid-proton/bl
             </p>
             <p>
               You can modify the time-to-live of cached results using the 
*.ttl properties described on the
-              Java <a class="ulink" 
href="http://docs.oracle.com/javase/6/docs/technotes/guides/net/properties.html";
 target="_top">Networking
+              Java <a class="link" 
href="http://docs.oracle.com/javase/6/docs/technotes/guides/net/properties.html";
 target="_top">Networking
               Properties</a> page.
             </p>
             <p>
@@ -239,7 +239,7 @@ https://github.com/apache/qpid-proton/bl
             <p>
               Boolean. A property can be used to restrict PUBLISH action to 
publishing only messages with given immediate flag.
             </p>
-          </td></tr></tbody></table></div></div><br class="table-break" /><div 
class="table"><a 
id="table-Java-Broker-Security-ACLs-Syntax_javacomponents"></a><p 
class="title"><strong>Table&#160;8.5.&#160;List of ACL JMX 
Components</strong></p><div class="table-contents"><table border="1" 
summary="List of ACL JMX Components"><colgroup><col /><col 
/></colgroup><tbody><tr><td> <span 
class="command"><strong>UserManagement</strong></span> </td><td> <p>User 
maintenance; create/delete/view users, change passwords etc</p> 
</td></tr><tr><td> <span 
class="command"><strong>ConfigurationManagement</strong></span> </td><td> 
<p>Dynamically reload configuration from disk.</p> </td></tr><tr><td> <span 
class="command"><strong>LoggingManagement</strong></span> </td><td> 
<p>Dynamically control Qpid logging level</p> </td></tr><tr><td> <span 
class="command"><strong>ServerInformation</strong></span> </td><td> 
<p>Read-only information regarding the Qpid: version number etc</p> 
</td></tr><tr><td> <span c
 lass="command"><strong>VirtualHost.Queue</strong></span> </td><td> <p>Queue 
maintenance; copy/move/purge/view etc</p> </td></tr><tr><td> <span 
class="command"><strong>VirtualHost.Exchange</strong></span> </td><td> 
<p>Exchange maintenance; bind/unbind queues to exchanges</p> </td></tr><tr><td> 
<span class="command"><strong>VirtualHost.VirtualHost</strong></span> </td><td> 
<p>Virtual host maintenace; create/delete exchanges, queues etc</p> 
</td></tr></tbody></table></div></div><br class="table-break" /><div 
class="section"><div class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-ACLs-WorkedExamples"></a>8.3.3.&#160;
+          </td></tr></tbody></table></div></div><br class="table-break" /><div 
class="table"><a 
id="table-Java-Broker-Security-ACLs-Queue-Exchnage-Operations"></a><p 
class="title"><strong>Table&#160;8.5.&#160;ACL for Queue management operations 
invoked via REST interfaces</strong></p><div class="table-contents"><table 
border="1" summary="ACL for Queue management operations invoked via REST 
interfaces"><colgroup><col /><col /><col /><col /></colgroup><tbody><tr><td> 
<span class="command"><strong>Operation</strong></span> </td><td> 
<p>Component</p> </td><td> <p>Method</p> </td><td> <p>Description</p> 
</td></tr><tr><td> <span class="command"><strong>UPDATE</strong></span> 
</td><td> <p>VirtualHost.Queue</p> </td><td> <p>copyMessages</p> </td><td> 
<p>Copy messages</p> </td></tr><tr><td> <span 
class="command"><strong>UPDATE</strong></span> </td><td> 
<p>VirtualHost.Queue</p> </td><td> <p>moveMessages</p> </td><td> <p>Move 
messages</p> </td></tr><tr><td> <span class="command"><strong>UPDATE
 </strong></span> </td><td> <p>VirtualHost.Queue</p> </td><td> 
<p>deleteMessages</p> </td><td> <p>Delete messages</p> 
</td></tr></tbody></table></div></div><br class="table-break" /><div 
class="section"><div class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-ACLs-WorkedExamples"></a>8.3.3.&#160;
       Worked Examples
     </h3></div></div></div><p>
       Here are some example ACLs illustrating common use cases.
@@ -270,12 +270,9 @@ ACL DENY-LOG ALL ALL
         <a class="link" href="Java-Broker-Security-Group-Providers.html" 
title="8.2.&#160;Group Providers">group</a> 'usermaint'.  No other user
         is allowed to perform user maintenance  This example illustrates the 
permissioning of an individual component.
       </p><pre class="programlisting">
-# Give usermaint access to management and permission to execute all JMX 
Methods on the
-# UserManagement MBean and perform all actions for USER objects
-ACL ALLOW usermaint ACCESS MANAGEMENT
-ACL ALLOW usermaint ALL METHOD component="UserManagement"
+# Give usermaint access to management and permission to create
+# and delete users through management
 ACL ALLOW usermaint ALL USER
-ACL DENY ALL ALL METHOD component="UserManagement"
 ACL DENY ALL ALL USER
 ...
 ... rules for other users
@@ -391,7 +388,7 @@ ACL ALLOW-LOG webadmins UPDATE METHOD
 #ACL ALLOW-LOG webadmins UPDATE METHOD component="VirtualHost.Queue" 
name="clearQueue"
 
 ACL DENY-LOG all all
-      </pre></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" 
href="Java-Broker-Security-Group-Providers.html">Prev</a>&#160;</td><td 
align="center" width="20%"><a accesskey="u" 
href="Java-Broker-Security.html">Up</a></td><td align="right" 
width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Security-Configuration-Encryption.html">Next</a></td></tr><tr><td
 align="left" valign="top" width="40%">8.2.&#160;Group Providers&#160;</td><td 
align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td 
align="right" valign="top" width="40%">&#160;8.4.&#160;Configuration 
Encryption</td></tr></table></div></div>
+      </pre></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" 
href="Java-Broker-Security-Group-Providers.html">Prev</a>&#160;</td><td 
align="center" width="20%"><a accesskey="u" 
href="Java-Broker-Security.html">Up</a></td><td align="right" 
width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Security-Configuration-Encryption.html">Next</a></td></tr><tr><td
 align="left" valign="top" width="40%">8.2.&#160;Group Providers&#160;</td><td 
align="center" width="20%"><a accesskey="h" 
href="AMQP-Messaging-Broker-Java-Book.html">Home</a></td><td align="right" 
valign="top" width="40%">&#160;8.4.&#160;Configuration 
Encryption</td></tr></table></div></div>
 
           <hr/>
 

Modified: 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Configuration-Encryption.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Configuration-Encryption.html?rev=1722689&r1=1722688&r2=1722689&view=diff
==============================================================================
--- 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Configuration-Encryption.html
 (original)
+++ 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Configuration-Encryption.html
 Sat Jan  2 23:59:48 2016
@@ -114,11 +114,11 @@ https://github.com/apache/qpid-proton/bl
         <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-java-trunk/index.html">Qpid Java Trunk</a></li><li><a 
href="/releases/qpid-java-trunk/java-broker/book/index.html">AMQP Messaging 
Broker (Java)</a></li><li>8.4.&#160;Configuration Encryption</li></ul>
 
         <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.4.&#160;Configuration Encryption</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security-ACLs.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Runtime.html">Next</a></td></tr></table><hr /></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title"><a 
id="Java-Broker-Security-Configuration-Encryption"></a>8.4.&#160;Configuration 
Encryption</h2></div></div></div><p> The Broker is capable of encrypting 
passwords and other security items stored in the
+          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.4.&#160;Configuration Encryption</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security-ACLs.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Runtime.html">Next</a></td></tr></table><hr /></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title" 
style="clear: both"><a 
id="Java-Broker-Security-Configuration-Encryption"></a>8.4.&#160;Configuration 
Encryption</h2></div></div></div><p> The Broker is capable of encrypting 
passwords and other security items stored in the
     Broker's configuration. This is means that items such as 
keystore/truststore passwords, JDBC
     passwords, and LDAP passwords can be stored in the configure in a form 
that is difficult to
     read.</p><p>The Broker ships with an encryptor implementation called <code 
class="literal">AESKeyFile</code>. This
-    uses a securely generated random key of 256bit<a class="footnote" 
href="#ftn.idm140601089198944" id="idm140601089198944"><sup 
class="footnote">[11]</sup></a> to encrypt the secrets stored within a key
+    uses a securely generated random key of 256bit<a class="footnote" 
href="#ftn.d0e4993" id="d0e4993"><sup class="footnote">[12]</sup></a> to 
encrypt the secrets stored within a key
     file. Of course, the key itself must be guarded carefully, otherwise the 
passwords encrypted
     with it may be compromised. For this reason, the Broker ensures that the 
file's permissions
     allow the file to be read exclusively by the user account used for running 
the Broker.</p><div class="important" style="margin-left: 0.5in; margin-right: 
0.5in;"><h3 class="title">Important</h3><p>If the keyfile is lost or corrupted, 
the secrets will be irrecoverable.</p></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-Configuration-Encryption-Configuration"></a>8.4.1.&#160;Configuration</h3></div></div></div><p>The
 <code class="literal">AESKeyFile</code> encyptor provider is enabled/disabled 
via the <a class="link" href="Java-Broker-Management-Managing-Broker.html" 
title="7.3.&#160;Broker">Broker attributes</a> within the
@@ -132,8 +132,8 @@ https://github.com/apache/qpid-proton/bl
         <code class="literal">ConfigurationSecretEncrypter</code> interface is 
designed as an extension point.
       Users may implement their own implementation of 
ConfigurationSecretEncrypter perhaps to employ
       stronger encryption or delegating the storage of the key to an 
Enterprise Password
-      Safe.</p></div><div class="footnotes"><br /><hr align="left" width="100" 
/><div class="footnote" id="ftn.idm140601089198944"><p><a class="para" 
href="#idm140601089198944"><sup class="para">[11] </sup></a>Java Cryptography 
Extension (JCE)
-        Unlimited Strength required</p></div></div></div><div 
class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td 
align="left" width="40%"><a accesskey="p" 
href="Java-Broker-Security-ACLs.html">Prev</a>&#160;</td><td align="center" 
width="20%"><a accesskey="u" href="Java-Broker-Security.html">Up</a></td><td 
align="right" width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Runtime.html">Next</a></td></tr><tr><td align="left" 
valign="top" width="40%">8.3.&#160;Access Control Lists&#160;</td><td 
align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td 
align="right" valign="top" 
width="40%">&#160;Chapter&#160;9.&#160;Runtime</td></tr></table></div></div>
+      Safe.</p></div><div class="footnotes"><br /><hr style="width:100; 
text-align:left;margin-left: 0" /><div class="footnote" id="ftn.d0e4993"><p><a 
class="para" href="#d0e4993"><sup class="para">[12] </sup></a>Java Cryptography 
Extension (JCE)
+        Unlimited Strength required</p></div></div></div><div 
class="navfooter"><hr /><table summary="Navigation footer" width="100%"><tr><td 
align="left" width="40%"><a accesskey="p" 
href="Java-Broker-Security-ACLs.html">Prev</a>&#160;</td><td align="center" 
width="20%"><a accesskey="u" href="Java-Broker-Security.html">Up</a></td><td 
align="right" width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Runtime.html">Next</a></td></tr><tr><td align="left" 
valign="top" width="40%">8.3.&#160;Access Control Lists&#160;</td><td 
align="center" width="20%"><a accesskey="h" 
href="AMQP-Messaging-Broker-Java-Book.html">Home</a></td><td align="right" 
valign="top" 
width="40%">&#160;Chapter&#160;9.&#160;Runtime</td></tr></table></div></div>
 
           <hr/>
 

Modified: 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Group-Providers.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Group-Providers.html?rev=1722689&r1=1722688&r2=1722689&view=diff
==============================================================================
--- 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Group-Providers.html
 (original)
+++ 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security-Group-Providers.html
 Sat Jan  2 23:59:48 2016
@@ -114,7 +114,7 @@ https://github.com/apache/qpid-proton/bl
         <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-java-trunk/index.html">Qpid Java Trunk</a></li><li><a 
href="/releases/qpid-java-trunk/java-broker/book/index.html">AMQP Messaging 
Broker (Java)</a></li><li>8.2.&#160;Group Providers</li></ul>
 
         <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.2.&#160;Group Providers</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Security-ACLs.html">Next</a></td></tr></table><hr 
/></div><div class="section"><div class="titlepage"><div><div><h2 
class="title"><a id="Java-Broker-Security-Group-Providers"></a>8.2.&#160;Group 
Providers</h2></div></div></div><p>
+          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">8.2.&#160;Group Providers</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Security.html">Prev</a>&#160;</td><th align="center" 
width="60%">Chapter&#160;8.&#160;Security</th><td align="right" 
width="20%">&#160;<a accesskey="n" 
href="Java-Broker-Security-ACLs.html">Next</a></td></tr></table><hr 
/></div><div class="section"><div class="titlepage"><div><div><h2 class="title" 
style="clear: both"><a 
id="Java-Broker-Security-Group-Providers"></a>8.2.&#160;Group 
Providers</h2></div></div></div><p>
     The Java broker utilises GroupProviders to allow assigning users to groups 
for use in <a class="link" href="Java-Broker-Security-ACLs.html" 
title="8.3.&#160;Access Control Lists">ACLs</a>.
     Following authentication by a given <a class="link" 
href="Java-Broker-Security.html#Java-Broker-Security-Authentication-Providers" 
title="8.1.&#160;Authentication Providers">Authentication Provider</a>,
     the configured Group Providers are consulted allowing the assignment of 
GroupPrincipals for a given authenticated user. Any number of
@@ -137,7 +137,10 @@ https://github.com/apache/qpid-proton/bl
             Only users can be added to a group currently, not other groups. 
Usernames can't contain commas.
           </p><p>
             Lines starting with a '#' are treated as comments when opening the 
file, but these are not preserved when the broker updates the file due to 
changes made through the management interface.
-          </p></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" href="Java-Broker-Security.html">Prev</a>&#160;</td><td 
align="center" width="20%"><a accesskey="u" 
href="Java-Broker-Security.html">Up</a></td><td align="right" 
width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Security-ACLs.html">Next</a></td></tr><tr><td align="left" 
valign="top" width="40%">Chapter&#160;8.&#160;Security&#160;</td><td 
align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td 
align="right" valign="top" width="40%">&#160;8.3.&#160;Access Control 
Lists</td></tr></table></div></div>
+          </p></div></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-Group-Providers-ManagedGroupProvider"></a>8.2.2.&#160;ManagedGroupProvider</h3></div></div></div><p>
+            The <span class="emphasis"><em>ManagedGroupProvider</em></span> 
allows specifying group membership as part of broker configuration.
+            In future version of Brokers GroupFile Provider will be replaced 
by this one.
+        </p></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" href="Java-Broker-Security.html">Prev</a>&#160;</td><td 
align="center" width="20%"><a accesskey="u" 
href="Java-Broker-Security.html">Up</a></td><td align="right" 
width="40%">&#160;<a accesskey="n" 
href="Java-Broker-Security-ACLs.html">Next</a></td></tr><tr><td align="left" 
valign="top" width="40%">Chapter&#160;8.&#160;Security&#160;</td><td 
align="center" width="20%"><a accesskey="h" 
href="AMQP-Messaging-Broker-Java-Book.html">Home</a></td><td align="right" 
valign="top" width="40%">&#160;8.3.&#160;Access Control 
Lists</td></tr></table></div></div>
 
           <hr/>
 

Modified: 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security.html?rev=1722689&r1=1722688&r2=1722689&view=diff
==============================================================================
--- 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security.html
 (original)
+++ 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/Java-Broker-Security.html
 Sat Jan  2 23:59:48 2016
@@ -114,13 +114,13 @@ https://github.com/apache/qpid-proton/bl
         <ul id="-path-navigation"><li><a 
href="/index.html">Home</a></li><li><a 
href="/releases/index.html">Releases</a></li><li><a 
href="/releases/qpid-java-trunk/index.html">Qpid Java Trunk</a></li><li><a 
href="/releases/qpid-java-trunk/java-broker/book/index.html">AMQP Messaging 
Broker (Java)</a></li><li>Chapter&#160;8.&#160;Security</li></ul>
 
         <div id="-middle-content">
-          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">Chapter&#160;8.&#160;Security</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Management-Managing-Plugins-JMX.html">Prev</a>&#160;</td><th 
align="center" width="60%">&#160;</th><td align="right" width="20%">&#160;<a 
accesskey="n" 
href="Java-Broker-Security-Group-Providers.html">Next</a></td></tr></table><hr 
/></div><div class="chapter"><div class="titlepage"><div><div><h1 
class="title"><a 
id="Java-Broker-Security"></a>Chapter&#160;8.&#160;Security</h1></div></div></div><div
 class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span 
class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Authentication-Providers">8.1.
 Authentication Providers</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-LDAP-Provider">8.1.1. 
Simple LDAP</a></s
 pan></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Kerberos-Provider">8.1.2. 
Kerberos</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-External-Provider">8.1.3. 
External (SSL Client Certificates)</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Anonymous-Provider">8.1.4. 
Anonymous</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-ScramSha-Providers">8.1.5. 
SCRAM SHA</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Plain-Provider">8.1.6. 
Plain</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-PlainPasswordFile-Provider">8.1.7.
 Plain Password File <span 
class="emphasis"><em>(Deprecated)</em></span></a></span></dt><dt><span 
class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-MD5-Provider">8.1.
 8. MD5 Provider</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Base64MD5PasswordFile-Provider">8.1.9.
 Base64MD5 Password File <span 
class="emphasis"><em>(Deprecated)</em></span></a></span></dt></dl></dd><dt><span
 class="section"><a href="Java-Broker-Security-Group-Providers.html">8.2. Group 
Providers</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-Group-Providers.html#File-Group-Manager">8.2.1. 
GroupFile Provider</a></span></dt></dl></dd><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html">8.3. Access Control 
Lists</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html#Java-Broker-Security-ACLs-WriteACL">8.3.1. 
+          <div class="docbook"><div class="navheader"><table 
summary="Navigation header" width="100%"><tr><th align="center" 
colspan="3">Chapter&#160;8.&#160;Security</th></tr><tr><td align="left" 
width="20%"><a accesskey="p" 
href="Java-Broker-Management-Managing-Plugin-HTTP.html">Prev</a>&#160;</td><th 
align="center" width="60%">&#160;</th><td align="right" width="20%">&#160;<a 
accesskey="n" 
href="Java-Broker-Security-Group-Providers.html">Next</a></td></tr></table><hr 
/></div><div class="chapter"><div class="titlepage"><div><div><h1 
class="title"><a 
id="Java-Broker-Security"></a>Chapter&#160;8.&#160;Security</h1></div></div></div><div
 class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span 
class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Authentication-Providers">8.1.
 Authentication Providers</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-LDAP-Provider">8.1.1. 
Simple LDAP</a></s
 pan></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Kerberos-Provider">8.1.2. 
Kerberos</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-External-Provider">8.1.3. 
External (SSL Client Certificates)</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Anonymous-Provider">8.1.4. 
Anonymous</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-ScramSha-Providers">8.1.5. 
SCRAM SHA</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Plain-Provider">8.1.6. 
Plain</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-PlainPasswordFile-Provider">8.1.7.
 Plain Password File <span 
class="emphasis"><em>(Deprecated)</em></span></a></span></dt><dt><span 
class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-MD5-Provider">8.1.
 8. MD5 Provider</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security.html#Java-Broker-Security-Base64MD5PasswordFile-Provider">8.1.9.
 Base64MD5 Password File <span 
class="emphasis"><em>(Deprecated)</em></span></a></span></dt></dl></dd><dt><span
 class="section"><a href="Java-Broker-Security-Group-Providers.html">8.2. Group 
Providers</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-Group-Providers.html#File-Group-Manager">8.2.1. 
GroupFile Provider</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security-Group-Providers.html#Java-Broker-Security-Group-Providers-ManagedGroupProvider">8.2.2.
 ManagedGroupProvider</a></span></dt></dl></dd><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html">8.3. Access Control 
Lists</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html#Java-Broker-Security-ACLs-WriteACL">8.3.1. 
        Writing .acl files
     </a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html#Java-Broker-Security-ACLs-Syntax">8.3.2. 
        Syntax
     </a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security-ACLs.html#Java-Broker-Security-ACLs-WorkedExamples">8.3.3.
 
       Worked Examples
-    </a></span></dt></dl></dd><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html">8.4. Configuration 
Encryption</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html#Java-Broker-Security-Configuration-Encryption-Configuration">8.4.1.
 Configuration</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html#Java-Broker-Security-Configuration-Encryption-Alternate-Implementations">8.4.2.
 Alternate Implementations</a></span></dt></dl></dd></dl></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title"><a 
id="Java-Broker-Security-Authentication-Providers"></a>8.1.&#160;Authentication 
Providers</h2></div></div></div><p> In order to successfully establish a 
connection to the Java Broker, the connection must be
+    </a></span></dt></dl></dd><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html">8.4. Configuration 
Encryption</a></span></dt><dd><dl><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html#Java-Broker-Security-Configuration-Encryption-Configuration">8.4.1.
 Configuration</a></span></dt><dt><span class="section"><a 
href="Java-Broker-Security-Configuration-Encryption.html#Java-Broker-Security-Configuration-Encryption-Alternate-Implementations">8.4.2.
 Alternate Implementations</a></span></dt></dl></dd></dl></div><div 
class="section"><div class="titlepage"><div><div><h2 class="title" 
style="clear: both"><a 
id="Java-Broker-Security-Authentication-Providers"></a>8.1.&#160;Authentication 
Providers</h2></div></div></div><p> In order to successfully establish a 
connection to the Java Broker, the connection must be
     authenticated. The Java Broker supports a number of different 
authentication schemes, each with
     its own "authentication provider". Any number of Authentication Providers 
can be configured on
     the Broker at the same time. </p><div class="important" 
style="margin-left: 0.5in; margin-right: 0.5in;"><h3 
class="title">Important</h3><p> Only unused Authentication Provider can be 
deleted. For delete requests attempting to
@@ -138,21 +138,21 @@ https://github.com/apache/qpid-proton/bl
           Changing the secureOnlyMechanism is a breach of security and might 
cause passwords to be
           transfered in the clear. Use at your own risk!
         </p></div><p>
-    </p></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="Java-Broker-Security-LDAP-Provider"></a>8.1.1.&#160;Simple 
LDAP</h3></div></div></div><p> The Simple LDAP authenticates connections 
against a Directory (LDAP). </p><p> To create a 
SimpleLDAPAuthenticationProvider the following mandatory fields are required: 
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li 
class="listitem"><p><span class="emphasis"><em>LDAP server URL</em></span> is 
the URL of the server, for example,
+    </p></div><div class="section"><div class="titlepage"><div><div><h3 
class="title"><a id="Java-Broker-Security-LDAP-Provider"></a>8.1.1.&#160;Simple 
LDAP</h3></div></div></div><p> The Simple LDAP authenticates connections 
against a Directory (LDAP). </p><p> To create a 
SimpleLDAPAuthenticationProvider the following mandatory fields are required: 
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: 
disc; "><li class="listitem"><p><span class="emphasis"><em>LDAP server 
URL</em></span> is the URL of the server, for example,
                 <code 
class="literal">ldaps://example.com:636</code></p></li><li 
class="listitem"><p><span class="emphasis"><em>Search context</em></span> is 
the distinguished name of the search base
                 object. It defines the location from which the search for 
users begins, for example,
                 <code 
class="literal">dc=users,dc=example,dc=com</code></p></li><li 
class="listitem"><p><span class="emphasis"><em>Search filter</em></span> is a 
DN template to find an LDAP user entry by
-                provided user name, for example, <code 
class="literal">(uid={0})</code></p></li></ul></div><p> Additionally, the 
following optional fields can be specified: </p><div class="itemizedlist"><ul 
class="itemizedlist" type="disc"><li class="listitem"><p><span 
class="emphasis"><em>LDAP context factory</em></span> is a fully qualified 
class name for the
-                JNDI LDAP context factory. This class must implement the <a 
class="ulink" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/spi/InitialContextFactory.html";
 target="_top">InitialContextFactory</a> interface and produce instances of <a 
class="ulink" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/directory/DirContext.html";
 target="_top">DirContext</a>. If
+                provided user name, for example, <code 
class="literal">(uid={0})</code></p></li></ul></div><p> Additionally, the 
following optional fields can be specified: </p><div class="itemizedlist"><ul 
class="itemizedlist" style="list-style-type: disc; "><li 
class="listitem"><p><span class="emphasis"><em>LDAP context factory</em></span> 
is a fully qualified class name for the
+                JNDI LDAP context factory. This class must implement the <a 
class="link" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/spi/InitialContextFactory.html";
 target="_top">InitialContextFactory</a> interface and produce instances of <a 
class="link" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/directory/DirContext.html";
 target="_top">DirContext</a>. If
                 not specified a default value of <code 
class="literal">com.sun.jndi.ldap.LdapCtxFactory</code> is
                 used.</p></li><li class="listitem"><p><span 
class="emphasis"><em>LDAP authentication URL</em></span> is the URL of LDAP 
server for
                 performing "ldap bind". If not specified, the <span 
class="emphasis"><em>LDAP server URL</em></span> will
-                be used for both searches and authentications.</p></li><li 
class="listitem"><p><span class="emphasis"><em>Truststore name</em></span> is a 
name of <a class="link" 
href="Java-Broker-Management-Managing-Truststores.html#Java-Broker-Management-Managing-Truststores-Attributes"
 title="7.13.1.&#160;Attributes">configured
+                be used for both searches and authentications.</p></li><li 
class="listitem"><p><span class="emphasis"><em>Truststore name</em></span> is a 
name of <a class="link" 
href="Java-Broker-Management-Managing-Truststores.html#Java-Broker-Management-Managing-Truststores-Attributes"
 title="7.13.2.&#160;Attributes">configured
                 truststore</a>. Use this if connecting to a Directory over SSL 
(i.e. ldaps://)
                 which is protected by a certificate signed by a private CA (or 
utilising a self-signed
                 certificate).</p></li></ul></div><p>
     </p><div class="important" style="margin-left: 0.5in; margin-right: 
0.5in;"><h3 class="title">Important</h3><p>In order to protect the security of 
the user's password, when using LDAP authentication,
-            you must: </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>Use SSL on the broker's AMQP, HTTP and JMX 
ports to protect the password during
+            you must: </p><div class="itemizedlist"><ul class="itemizedlist" 
style="list-style-type: disc; "><li class="listitem"><p>Use SSL on the broker's 
AMQP and HTTP ports to protect the password during
                     transmission to the Broker. The Broker enforces this 
restriction automatically on AMQP
                     and HTTP ports.</p></li><li 
class="listitem"><p>Authenticate to the Directory using SSL (i.e. ldaps://) to 
protect the password
                     during transmission from the Broker to the 
Directory.</p></li></ul></div></div><p> The LDAP Authentication Provider works 
in the following manner. If not in <code class="literal">bind
@@ -162,7 +162,7 @@ https://github.com/apache/qpid-proton/bl
         scope is sub-tree meaning the search will include the base object and 
the subtree extending
         beneath it. </p><p> If the search returns a match, or is configured in 
<code class="literal">bind without search</code>
         mode, the Authentication Provider then attempts to bind to the LDAP 
server with the given name
-        and the password. Note that <a class="ulink" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/Context.html#SECURITY_AUTHENTICATION";
 target="_top">simple security
+        and the password. Note that <a class="link" 
href="http://docs.oracle.com/javase/7/docs/api/javax/naming/Context.html#SECURITY_AUTHENTICATION";
 target="_top">simple security
             authentication</a> is used so the Directory receives the password 
in the clear. </p></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-Kerberos-Provider"></a>8.1.2.&#160;Kerberos</h3></div></div></div><p>
 Kereberos Authentication Provider uses java GSS-API SASL mechanism to 
authenticate the
         connections. </p><p> Configuration of kerberos is done through system 
properties (there doesn't seem to be a
         way around this unfortunately). </p><pre class="programlisting">
@@ -182,19 +182,16 @@ com.sun.security.jgss.accept {
 };</pre><p> Where realm, kdc, keyTab and principal should obviously be set 
correctly for the
         environment where you are running (see the existing documentation for 
the C++ broker about
         creating a keytab file). </p><p> Note: You may need to install the 
"Java Cryptography Extension (JCE) Unlimited Strength
-        Jurisdiction Policy Files" appropriate for your JDK in order to get 
Kerberos support working. </p><p> Since Kerberos support only works where SASL 
authentication is available (e.g. not for
-        JMX authentication) you may wish to also include an alternative 
Authentication Provider
-        configuration, and use this for JMX and HTTP ports. </p></div><div 
class="section"><div class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-External-Provider"></a>8.1.3.&#160;External (SSL 
Client Certificates)</h3></div></div></div><p> When <a class="link" 
href="Java-Broker-Management-Managing-Truststores.html" 
title="7.13.&#160;Truststores"> requiring SSL Client
+        Jurisdiction Policy Files" appropriate for your JDK in order to get 
Kerberos support working. </p></div><div class="section"><div 
class="titlepage"><div><div><h3 class="title"><a 
id="Java-Broker-Security-External-Provider"></a>8.1.3.&#160;External (SSL 
Client Certificates)</h3></div></div></div><p> When <a class="link" 
href="Java-Broker-Management-Managing-Truststores.html" 
title="7.13.&#160;Truststores"> requiring SSL Client
         Certificates</a> be presented the External Authentication Provider can 
be used, such that
         the user is authenticated based on trust of their certificate alone, 
and the X500Principal
         from the SSL session is then used as the username for the connection, 
instead of also
         requiring the user to present a valid username and password. </p><p>
         <span class="bold"><strong>Note:</strong></span> The External 
Authentication Provider should typically
         only be used on the AMQP/HTTP ports, in conjunction with <a 
class="link" href="Java-Broker-Management-Managing-Ports.html" 
title="7.10.&#160;Ports">SSL client certificate
-            authentication</a>. It is not intended for other uses such as the 
JMX management port and
+            authentication</a>. It is not intended for other uses and
         will treat any non-sasl authentication processes on these ports as 
successful with the given
-        username. As such you should configure another Authentication Provider 
for use on JMX
-        ports.</p><p>On creation of External Provider the use of full DN or 
username CN as a principal name can
+        username.</p><p>On creation of External Provider the use of full DN or 
username CN as a principal name can
         be configured. If attribute "Use the full DN as the Username" is set 
to "true" the full DN is
         used as an authenticated principal name. If attribute "Use the full DN 
as the Username" is set
         to "false" the user name CN part is used as the authenticated 
principal name. Setting the
@@ -217,7 +214,7 @@ com.sun.security.jgss.accept {
         creating an authentication provider the path to the file needs to be 
specified. If specified
         file does not exist an empty file is created automatically on 
Authentication Provider
         creation. On Provider deletion the password file is deleted as 
well.</p><p>For this provider user credentials can be added, removed or changed 
using
-        Management.</p><div class="section"><div 
class="titlepage"><div><div><h4 class="title"><a 
id="idm140601093863232"></a>8.1.7.1.&#160;Plain Password File 
Format</h4></div></div></div><p> The user credentials are stored on the single 
file line as user name and user
+        Management.</p><div class="section"><div 
class="titlepage"><div><div><h4 class="title"><a 
id="d0e4066"></a>8.1.7.1.&#160;Plain Password File 
Format</h4></div></div></div><p> The user credentials are stored on the single 
file line as user name and user
             password pairs separated by colon character. This file must not be 
modified externally
             whilst the Broker is running.</p><pre class="programlisting">
 # password file format
@@ -236,9 +233,9 @@ guest:guest
         to the file needs to be specified. If specified file does not exist an 
empty file is created
         automatically on Authentication Provider creation. On 
Base64MD5PasswordFile Provider deletion
         the password file is deleted as well.</p><p>For this provider user 
credentials can be added, removed or changed using
-        Management.</p><div class="section"><div 
class="titlepage"><div><div><h4 class="title"><a 
id="idm140601088948240"></a>8.1.9.1.&#160;Base64MD5 File 
Format</h4></div></div></div><p> The user credentials are stored on the single 
file line as user name and user password
+        Management.</p><div class="section"><div 
class="titlepage"><div><div><h4 class="title"><a 
id="d0e4102"></a>8.1.9.1.&#160;Base64MD5 File Format</h4></div></div></div><p> 
The user credentials are stored on the single file line as user name and user 
password
             pairs separated by colon character. The password is stored MD5 
digest/Base64 encoded. This
-            file must not be modified externally whilst the Broker is 
running.</p></div></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" 
href="Java-Broker-Management-Managing-Plugins-JMX.html">Prev</a>&#160;</td><td 
align="center" width="20%">&#160;</td><td align="right" width="40%">&#160;<a 
accesskey="n" 
href="Java-Broker-Security-Group-Providers.html">Next</a></td></tr><tr><td 
align="left" valign="top" width="40%">7.17.&#160;JMX Plugin&#160;</td><td 
align="center" width="20%"><a accesskey="h" href="index.html">Home</a></td><td 
align="right" valign="top" width="40%">&#160;8.2.&#160;Group 
Providers</td></tr></table></div></div>
+            file must not be modified externally whilst the Broker is 
running.</p></div></div></div></div><div class="navfooter"><hr /><table 
summary="Navigation footer" width="100%"><tr><td align="left" width="40%"><a 
accesskey="p" 
href="Java-Broker-Management-Managing-Plugin-HTTP.html">Prev</a>&#160;</td><td 
align="center" width="20%">&#160;</td><td align="right" width="40%">&#160;<a 
accesskey="n" 
href="Java-Broker-Security-Group-Providers.html">Next</a></td></tr><tr><td 
align="left" valign="top" width="40%">7.16.&#160;HTTP Plugin&#160;</td><td 
align="center" width="20%"><a accesskey="h" 
href="AMQP-Messaging-Broker-Java-Book.html">Home</a></td><td align="right" 
valign="top" width="40%">&#160;8.2.&#160;Group 
Providers</td></tr></table></div></div>
 
           <hr/>
 

Modified: 
qpid/site/docs/releases/qpid-java-trunk/java-broker/book/images/Broker-Model.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/releases/qpid-java-trunk/java-broker/book/images/Broker-Model.png?rev=1722689&r1=1722688&r2=1722689&view=diff
==============================================================================
Binary files - no diff available.



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to