geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache Geronimo v3.0 > Replacing default Realm in Geronimo
Date Thu, 08 Nov 2012 21:02:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/2042/9/4/_/styles/combined.css?spaceKey=GMOxDOC30&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://cwiki.apache.org/confluence/display/GMOxDOC30/Replacing+default+Realm+in+Geronimo">Replacing
default Realm in Geronimo</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~gawor">Jarek
Gawor</a>
    </h4>
        <br/>
                         <h4>Changes (16)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >{excerpt}This article is about how
to replace default .properties realm {{geronimo-admin}} with SQL or LDAP realms.{excerpt}
<br> <br></td></tr>
            <tr><td class="diff-changed-lines" >By default, Geronimo is using
a .properties file realm for authentication named {{geronimo-admin}}, which is used by JMX
server, Administration Console, Online-deploy and MEJB applications. However, you may not
want to use it for production use. Alternatively, you can use <span class="diff-changed-words">database<span
class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">(SQL)</span></span>
or LDAP realms in a production environment. To demonstrate how to replace the default realm,
we will use 2 samples as followed: <br></td></tr>
            <tr><td class="diff-unchanged" >{toc} <br> <br></td></tr>
            <tr><td class="diff-changed-lines" >h1. With a <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">database(SQL)</span>
<span class="diff-added-words"style="background-color: #dfd;">database-based</span>
realm <br></td></tr>
            <tr><td class="diff-unchanged" >In this example, we will use an embedded
Derby database as the security provider. <br></td></tr>
            <tr><td class="diff-changed-lines" ># Create a database named {{SecurityDatabase}}
using *DB manager* <span class="diff-changed-words"><span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">o</span><span
class="diff-added-chars"style="background-color: #dfd;">i</span>n</span> the
administration <span class="diff-changed-words">console<span class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">;</span><span
class="diff-added-chars"style="background-color: #dfd;">.</span></span> <br></td></tr>
            <tr><td class="diff-changed-lines" ># Create two tables {{Users}}
and {{Groups}} to store user credential and group <span class="diff-changed-words">information<span
class="diff-deleted-chars"style="color:#999;background-color:#fdd;text-decoration:line-through;">;</span><span
class="diff-added-chars"style="background-color: #dfd;">.</span></span> <br></td></tr>
            <tr><td class="diff-unchanged" >{code:SQL} <br>create table
users(username varchar(15),password varchar(15)); <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >insert into groups values(&#39;userthree&#39;,&#39;user&#39;);
<br>{code} <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">#
Create an Derby XA database pool named {{SecurityDatabasePool}} using *Database Pools* on
the console; <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">In
the *DB manager* portlet copy and paste the above SQL into *SQL Commands* box and select the
{{SecurityDatabase}} database and press *Run SQL* button to create the tables. <br>
<br># Create an Derby embedded XA database pool named {{SecurityDatabasePool}} using
*Database Pools* portlet under *Datasources* in the console. Make sure to specify the *Database
Name* as {{SecurityDatabase}}. <br></td></tr>
            <tr><td class="diff-changed-lines" ># Stop the server and update module
<span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">{{org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car}}</span>
<span class="diff-added-words"style="background-color: #dfd;">{{org.apache.geronimo.framework/server-security-config/VERSION/car}}</span>
in the <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">{{&lt;Geronimo_Home&gt;/var/config/config.xml}}</span>
<span class="diff-added-words"style="background-color: #dfd;">{{$GERONIMO_HOME/var/config/config.xml}}</span>
file to enable the SQL realm. <span class="diff-added-words"style="background-color: #dfd;">Make
sure to substitute {{VERSION}} string with the appropriate Geronimo version.</span>
<br></td></tr>
            <tr><td class="diff-unchanged" >{code:xml} <br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;module <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car&quot;&gt;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car&quot;&gt;</span>
<br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;gbean <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car,j2eeType=LoginModule,name=security-realm&quot;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModule,name=security-realm&quot;</span>
gbeanInfo=&quot;org.apache.geronimo.security.jaas.LoginModuleGBean&quot;&gt; <br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;attribute name=&quot;loginModuleClass&quot;&gt;org.apache.geronimo.security.realm.providers.SQLLoginModule&lt;/attribute&gt;
<br>            &lt;attribute name=&quot;options&quot;&gt;dataSourceName=SecurityDatabasePool
<br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;/reference&gt;
<br>        &lt;/gbean&gt; <br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;gbean <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car,j2eeType=LoginModuleUse,name=realm-login-use&quot;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModuleUse,name=realm-login-use&quot;</span>
gbeanInfo=&quot;org.apache.geronimo.security.jaas.JaasLoginModuleUse&quot;&gt;
<br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;attribute name=&quot;controlFlag&quot;&gt;REQUIRED&lt;/attribute&gt;
<br>            &lt;reference name=&quot;LoginModule&quot;&gt; <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >Where  <br>#* _geronimo_admin_
is the same realm name as the original one. You might use another name instead, by doing so,
you have to replace the security realm name in all other applications that were using the
same security constraint as console. <br></td></tr>
            <tr><td class="diff-changed-lines" ># <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">Then,restart</span>
<span class="diff-added-words"style="background-color: #dfd;">Restart</span> the
server and try to login with user name _userone_ and password _p1_. You will see the newly
created SQL realm working. <br></td></tr>
            <tr><td class="diff-unchanged" > <br> <br></td></tr>
            <tr><td class="diff-changed-lines" >h1. With a <span class="diff-changed-words">LDAP<span
class="diff-added-chars"style="background-color: #dfd;">-based</span></span>
realm <br></td></tr>
            <tr><td class="diff-changed-lines" >To replace the default .properties
file realm using a LDAP realm, the configuration is nearly identical to the sample above.
The only difference is to use {{org.apache.geronimo.security.realm.providers.LDAPLogoinModule}}
as {{LoginModuleClass}}. Here is the code snippet you can use in <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">{{config.xml}}:</span>
<span class="diff-added-words"style="background-color: #dfd;">{{config.xml}}. Make sure
to substitute {{VERSION}} string with the appropriate Geronimo version.</span> <br></td></tr>
            <tr><td class="diff-unchanged" >{code:xml} <br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;module <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car&quot;&gt;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car&quot;&gt;</span>
<br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;gbean <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car,j2eeType=LoginModule,name=security-realm&quot;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModule,name=security-realm&quot;</span>
gbeanInfo=&quot;org.apache.geronimo.security.jaas.LoginModuleGBean&quot;&gt; <br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;attribute name=&quot;loginModuleClass&quot;&gt;org.apache.geronimo.security.realm.providers.LDAPLoginModule&lt;/attribute&gt;
<br>            &lt;attribute name=&quot;options&quot;&gt;roleSearchMatching=uniqueMember={0}
<br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;/reference&gt;
<br>        &lt;/gbean&gt; <br></td></tr>
            <tr><td class="diff-changed-lines" >&lt;gbean <span class="diff-deleted-words"style="color:#999;background-color:#fdd;text-decoration:line-through;">name=&quot;org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car,j2eeType=LoginModuleUse,name=realm-login-use&quot;</span>
<span class="diff-added-words"style="background-color: #dfd;">name=&quot;org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModuleUse,name=realm-login-use&quot;</span>
gbeanInfo=&quot;org.apache.geronimo.security.jaas.JaasLoginModuleUse&quot;&gt;
<br></td></tr>
            <tr><td class="diff-unchanged" >            &lt;attribute name=&quot;controlFlag&quot;&gt;REQUIRED&lt;/attribute&gt;
<br>            &lt;reference name=&quot;LoginModule&quot;&gt; <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <style type='text/css'>/*<![CDATA[*/
table.ScrollbarTable  {border: none;padding: 3px;width: 100%;padding: 3px;margin: 0px;background-color:
#f0f0f0}
table.ScrollbarTable td.ScrollbarPrevIcon {text-align: center;width: 16px;border: none;}
table.ScrollbarTable td.ScrollbarPrevName {text-align: left;border: none;}
table.ScrollbarTable td.ScrollbarParent {text-align: center;border: none;}
table.ScrollbarTable td.ScrollbarNextName {text-align: right;border: none;}
table.ScrollbarTable td.ScrollbarNextIcon {text-align: center;width: 16px;border: none;}

/*]]>*/</style><div class="Scrollbar"><table class='ScrollbarTable'><tr><td
class='ScrollbarPrevIcon'><a href="/confluence/display/GMOxDOC30/OpenID"><img
border='0' align='middle' src='/confluence/images/icons/back_16.gif' width='16' height='16'></a></td><td
width='33%' class='ScrollbarPrevName'><a href="/confluence/display/GMOxDOC30/OpenID">OpenID</a>&nbsp;</td><td
width='33%' class='ScrollbarParent'><sup><a href="/confluence/display/GMOxDOC30/Administering+Security"><img
border='0' align='middle' src='/confluence/images/icons/up_16.gif' width='8' height='8'></a></sup><a
href="/confluence/display/GMOxDOC30/Administering+Security">Administering Security</a></td><td
width='33%' class='ScrollbarNextName'>&nbsp;<a href="/confluence/display/GMOxDOC30/Securing+RMI+port+of+Geronimo">Securing
RMI port of Geronimo</a></td><td class='ScrollbarNextIcon'><a href="/confluence/display/GMOxDOC30/Securing+RMI+port+of+Geronimo"><img
border='0' align='middle' src='/confluence/images/icons/forwd_16.gif' width='16' height='16'></a></td></tr></table></div>

<p>This article is about how to replace default .properties realm <tt>geronimo-admin</tt>
with SQL or LDAP realms.</p>

<p>By default, Geronimo is using a .properties file realm for authentication named <tt>geronimo-admin</tt>,
which is used by JMX server, Administration Console, Online-deploy and MEJB applications.
However, you may not want to use it for production use. Alternatively, you can use database
or LDAP realms in a production environment. To demonstrate how to replace the default realm,
we will use 2 samples as followed:</p>
<div>
<ul>
    <li><a href='#ReplacingdefaultRealminGeronimo-Withadatabasebasedrealm'>With
a database-based realm</a></li>
    <li><a href='#ReplacingdefaultRealminGeronimo-WithaLDAPbasedrealm'>With a
LDAP-based realm</a></li>
</ul></div>

<h1><a name="ReplacingdefaultRealminGeronimo-Withadatabasebasedrealm"></a>With
a database-based realm</h1>
<p>In this example, we will use an embedded Derby database as the security provider.</p>
<ol>
	<li>Create a database named <tt>SecurityDatabase</tt> using <b>DB
manager</b> in the administration console.</li>
	<li>Create two tables <tt>Users</tt> and <tt>Groups</tt> to
store user credential and group information.
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-sql">
create table users(username varchar(15),password varchar(15));
create table groups(username varchar(15),groupname varchar(15));
insert into users values('userone','p1');
insert into users values('usertwo','p2');
insert into users values('userthree','p3');
insert into groups values('userone','admin');
insert into groups values('usertwo','admin');
insert into groups values('userthree','user');
</pre>
</div></div>
<p>In the <b>DB manager</b> portlet copy and paste the above SQL into <b>SQL
Commands</b> box and select the <tt>SecurityDatabase</tt> database and press
<b>Run SQL</b> button to create the tables.</p></li>
</ol>


<ol>
	<li>Create an Derby embedded XA database pool named <tt>SecurityDatabasePool</tt>
using <b>Database Pools</b> portlet under <b>Datasources</b> in the
console. Make sure to specify the <b>Database Name</b> as <tt>SecurityDatabase</tt>.</li>
	<li>Stop the server and update module <tt>org.apache.geronimo.framework/server-security-config/VERSION/car</tt>
in the <tt>$GERONIMO_HOME/var/config/config.xml</tt> file to enable the SQL realm.
Make sure to substitute <tt>VERSION</tt> string with the appropriate Geronimo
version.
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-xml">
<span class="code-tag">&lt;module name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car"</span>&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModule,name=security-realm"</span>
gbeanInfo=<span class="code-quote">"org.apache.geronimo.security.jaas.LoginModuleGBean"</span>&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"loginModuleClass"</span>&gt;</span>org.apache.geronimo.security.realm.providers.SQLLoginModule<span
class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"options"</span>&gt;</span>dataSourceName=SecurityDatabasePool
                                      databasesourceApplication=null
                                      groupSelect=select username, groupname from groups where
username=?
                                      userSelect=select username, password from users where
username=?<span class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"loginDomainName"</span>&gt;</span>geronimo-admin<span
class="code-tag">&lt;/attribute&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"geronimo-admin"</span>&gt;</span>
            <span class="code-tag">&lt;reference name=<span class="code-quote">"LoginModuleConfiguration"</span>&gt;</span>
                <span class="code-tag">&lt;pattern&gt;</span>
                    <span class="code-tag">&lt;name&gt;</span>realm-login-use<span
class="code-tag">&lt;/name&gt;</span>
                <span class="code-tag">&lt;/pattern&gt;</span>
            <span class="code-tag">&lt;/reference&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModuleUse,name=realm-login-use"</span>
gbeanInfo=<span class="code-quote">"org.apache.geronimo.security.jaas.JaasLoginModuleUse"</span>&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"controlFlag"</span>&gt;</span>REQUIRED<span
class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;reference name=<span class="code-quote">"LoginModule"</span>&gt;</span>
                <span class="code-tag">&lt;pattern&gt;</span>
                    <span class="code-tag">&lt;name&gt;</span>security-realm<span
class="code-tag">&lt;/name&gt;</span>
                <span class="code-tag">&lt;/pattern&gt;</span>
            <span class="code-tag">&lt;/reference&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
    <span class="code-tag">&lt;/module&gt;</span>
</pre>
</div></div>
<p>Where </p>
	<ul>
		<li><em>geronimo_admin</em> is the same realm name as the original one.
You might use another name instead, by doing so, you have to replace the security realm name
in all other applications that were using the same security constraint as console.</li>
	</ul>
	</li>
	<li>Restart the server and try to login with user name <em>userone</em>
and password <em>p1</em>. You will see the newly created SQL realm working.</li>
</ol>



<h1><a name="ReplacingdefaultRealminGeronimo-WithaLDAPbasedrealm"></a>With
a LDAP-based realm</h1>
<p>To replace the default .properties file realm using a LDAP realm, the configuration
is nearly identical to the sample above. The only difference is to use <tt>org.apache.geronimo.security.realm.providers.LDAPLogoinModule</tt>
as <tt>LoginModuleClass</tt>. Here is the code snippet you can use in <tt>config.xml</tt>.
Make sure to substitute <tt>VERSION</tt> string with the appropriate Geronimo
version.</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-xml">
<span class="code-tag">&lt;module name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car"</span>&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModule,name=security-realm"</span>
gbeanInfo=<span class="code-quote">"org.apache.geronimo.security.jaas.LoginModuleGBean"</span>&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"loginModuleClass"</span>&gt;</span>org.apache.geronimo.security.realm.providers.LDAPLoginModule<span
class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"options"</span>&gt;</span>roleSearchMatching=uniqueMember={0}
                                      userSearchMatching=uid={0}
                                      userBase=ou=users,ou=system
                                      connectionUsername=uid=admin,ou=system
                                      roleName=cn
                                      userSearchSubtree=true
                                      authentication=simple
                                      initialContextFactory=com.sun.jndi.ldap.LdapCtxFactory
                                      roleBase=ou=groups,ou=system
                                      connectionPassword=secret
                                      connectionURL=ldap://9.186.10.16:10389
                                      roleSearchSubtree=true<span class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"loginDomainName"</span>&gt;</span>geronimo-admin<span
class="code-tag">&lt;/attribute&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"geronimo-admin"</span>&gt;</span>
            <span class="code-tag">&lt;reference name=<span class="code-quote">"LoginModuleConfiguration"</span>&gt;</span>
                <span class="code-tag">&lt;pattern&gt;</span>
                    <span class="code-tag">&lt;name&gt;</span>realm-login-use<span
class="code-tag">&lt;/name&gt;</span>
                <span class="code-tag">&lt;/pattern&gt;</span>
            <span class="code-tag">&lt;/reference&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
        <span class="code-tag">&lt;gbean name=<span class="code-quote">"org.apache.geronimo.framework/server-security-config/VERSION/car?ServiceModule=org.apache.geronimo.framework/server-security-config/VERSION/car,j2eeType=LoginModuleUse,name=realm-login-use"</span>
gbeanInfo=<span class="code-quote">"org.apache.geronimo.security.jaas.JaasLoginModuleUse"</span>&gt;</span>
            <span class="code-tag">&lt;attribute name=<span class="code-quote">"controlFlag"</span>&gt;</span>REQUIRED<span
class="code-tag">&lt;/attribute&gt;</span>
            <span class="code-tag">&lt;reference name=<span class="code-quote">"LoginModule"</span>&gt;</span>
                <span class="code-tag">&lt;pattern&gt;</span>
                    <span class="code-tag">&lt;name&gt;</span>security-realm<span
class="code-tag">&lt;/name&gt;</span>
                <span class="code-tag">&lt;/pattern&gt;</span>
            <span class="code-tag">&lt;/reference&gt;</span>
        <span class="code-tag">&lt;/gbean&gt;</span>
    <span class="code-tag">&lt;/module&gt;</span>
</pre>
</div></div>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://cwiki.apache.org/confluence/display/GMOxDOC30/Replacing+default+Realm+in+Geronimo">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=20645470&revisedVersion=2&originalVersion=1">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/GMOxDOC30/Replacing+default+Realm+in+Geronimo?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message