WLS5.1 SP8: Using RDBMS Realm

Hi All,
I've hacked the rdbmsrealm example from the standard WLS5.1 install to use
the schema in my Oracle 8.1.6 database instread of the cloudscape db, and
everything is fine. However...
I'm a little in the dark about how much interaction my EJBs should have with
the realm? I initially had a bean which controlled user creation by
populating the same database table that is now mapped to by my
realm.properties. Should I now delegate the user creation to the realm
classes instead of my bean?
I've looked through what I think is all the documentation, but still cannot
really find the "how is it used" information I require.
byeeeeeeeeeeeeeeee
Thanks in advance.

The 'nice' way to do what you want is to have your realm implement
the ManageableRealm interface and call those methods instead of
changing the database directly from the Bean.
Also make sure your realm has a way to refresh it's cache (if you
use one) when Users/Groups/ACLs are added/changed in your underlying
data store.
-Don
"Andy Marks" <[email protected]> wrote:
Hi All,
I've hacked the rdbmsrealm example from the standard WLS5.1
install to use
the schema in my Oracle 8.1.6 database instread of the
cloudscape db, and
everything is fine. However...
I'm a little in the dark about how much interaction my
EJBs should have with
the realm? I initially had a bean which controlled user
creation by
populating the same database table that is now mapped
to by my
realm.properties. Should I now delegate the user creation
to the realm
classes instead of my bean?
I've looked through what I think is all the documentation,
but still cannot
really find the "how is it used" information I require.
byeeeeeeeeeeeeeeee
Thanks in advance.

Similar Messages

  • Disscuss of using RDBMS Realm

    Hi,
    Now maybe eveyone knows that the RDBMS Realm provided by weblogic 6.0 isn't production
    ready, and miss some functions, for examples, change password, or add group no.
    It is suprised for me that weblogic didn't support these basic functions of RDBMSRealm
    and didn't provide suitable documentation for implementing this RDBMS Realm.
    So I ask for help that if everyone know how to implement one function: changeCredential.
    I know the weblogic.management.configuration.Uer object has this method (User.changeCredential(oldPass,
    newPass)). I know I have to provide one additional database schema for updating
    user password. I know I should add a method in the RDBMSDelegate and RDBMSRealm
    classes. But I don't the suitable method signature, and couldn't find internal
    method call when the user click the "change" button changing password in the Console.
    Thank you very much for any idea or help. Also I'd like to deeply discuss other
    security issues.
    Is any project use the RDBMS realm?
    By the way, if anyone try to directly update the database tables as a means to
    implement this issues. I have tried this approach, and it seems work fine except
    for some catching delay. Can anyone tell me if this is an effective method?
    Thx

    This RDBMS Realm issue is really bother me too. I was wondering if anyone use the
    RDBMS Realm for production. it is difficult to find what the architecture the
    RealmMBean object and RealmManager is. Any idea let me know. Good luck.
    "andy Zhong" <[email protected]> wrote:
    >
    Hi,
    Now maybe eveyone knows that the RDBMS Realm provided by weblogic 6.0
    isn't production
    ready, and miss some functions, for examples, change password, or add
    group no.
    It is suprised for me that weblogic didn't support these basic functions
    of RDBMSRealm
    and didn't provide suitable documentation for implementing this RDBMS
    Realm.
    So I ask for help that if everyone know how to implement one function:
    changeCredential.
    I know the weblogic.management.configuration.Uer object has this method
    (User.changeCredential(oldPass,
    newPass)). I know I have to provide one additional database schema for
    updating
    user password. I know I should add a method in the RDBMSDelegate and
    RDBMSRealm
    classes. But I don't the suitable method signature, and couldn't find
    internal
    method call when the user click the "change" button changing password
    in the Console.
    Thank you very much for any idea or help. Also I'd like to deeply discuss
    other
    security issues.
    Is any project use the RDBMS realm?
    By the way, if anyone try to directly update the database tables as a
    means to
    implement this issues. I have tried this approach, and it seems work
    fine except
    for some catching delay. Can anyone tell me if this is an effective method?
    Thx

  • WLS5.1 SP_9 RDBMS Realm problem

    Hi all,
    I am trying to configure the RDBMS realm examples that come with weblogic.
    I am getting an error saying the Table Users was not found.
    I created my own simple java class to check if the parameters from
    rdbmsrealm.properties are working fine, they are. Then why is weblogic not
    able to find the USERS table, where is it looking for this table.
    Any Help is highly appreciated.
    Ramesh
    Stack Trace :
    Unable to initialize server: examples.security.rdbmsrealm.RDBMSException:
    realm
    initialization failed, Connection.prepareStatement() failed on statement
    "SELECT
    U_NAME, U_PASSWORD FROM users WHERE U_NAME = ?", - with nested exception:
    [SQL Exception: Table 'USERS' does not exist.]
    fatal initialization exception
    Properties File :
    # - - - - - - ORACLE - - - - - - -
    driver=weblogic.jdbc.oci.Driver
    dbURL=jdbc:weblogic:oracle:bizpivot.india
    dbUser=ramesh
    dbPassword=******
    #getGroupNewStatement=false

    Hi all,
    Never Mind, I got it working. A couple of lines down the property lines,
    the Cloudscape URL was uncommented and hence the webloigc server was looking
    the USERS table in cloudscape instead of Oracle where I created them.
    I figured this out by modifying the LoadDDL,java and asking it to print the
    URL and other details that it read from the rdbmsldaprealm.properties file.
    Thank you all.
    Ramesh
    "ramesh" <[email protected]> wrote in message
    news:[email protected]..
    Hi all,
    I am trying to configure the RDBMS realm examples that come with weblogic.
    I am getting an error saying the Table Users was not found.
    I created my own simple java class to check if the parameters from
    rdbmsrealm.properties are working fine, they are. Then why is weblogicnot
    able to find the USERS table, where is it looking for this table.
    Any Help is highly appreciated.
    Ramesh
    Stack Trace :
    Unable to initialize server: examples.security.rdbmsrealm.RDBMSException:
    realm
    initialization failed, Connection.prepareStatement() failed on statement
    "SELECT
    U_NAME, U_PASSWORD FROM users WHERE U_NAME = ?", - with nestedexception:
    [SQL Exception: Table 'USERS' does not exist.]
    fatal initialization exception
    Properties File :
    # - - - - - - ORACLE - - - - - - -
    driver=weblogic.jdbc.oci.Driver
    dbURL=jdbc:weblogic:oracle:bizpivot.india
    dbUser=ramesh
    dbPassword=******
    #getGroupNewStatement=false

  • Using RDBMS Realm with JSP, again

    I submitted this post using the web interface after I "asked Bea" and now it
    seems like I'm a total newbie :) So I repost to make it more readable..
    Hi,
    I am fairly new to J2EE and I am trying to figure out how I can apply the
    RDMSRealm to restrict access to jsp files
    Do I use ACL's in the database to restrict access to jsp's or,
    Do I use the web.xml deployment descriptor in the a similar fashion as the
    Gold_customer in the petstore,
    What is the difference?
    Does anyone know about a nice example?
    Sincerely,
    ilya

    We have used the <security-constraint> tags in web.xml. This tag specifies which
    'security roles' has access to specific resource collection (e.g. one or more
    servlets or JSPs). The 'security roles' are then mapped in weblogic.xml to one
    ore more groups and/or users as defined in the group and user tables in the RDBMS.
    regards,
    Simen R.
    "ilya" <[email protected]> wrote:
    I submitted this post using the web interface after I "asked Bea" and
    now it
    seems like I'm a total newbie :) So I repost to make it more readable..
    Hi,
    I am fairly new to J2EE and I am trying to figure out how I can apply
    the
    RDMSRealm to restrict access to jsp files
    Do I use ACL's in the database to restrict access to jsp's or,
    Do I use the web.xml deployment descriptor in the a similar fashion as
    the
    Gold_customer in the petstore,
    What is the difference?
    Does anyone know about a nice example?
    Sincerely,
    ilya

  • How to use RDBMS Realm in Weblogic Commerce Server?

    Hi All,
    Same as the subject.
    Thx
    Ray

    You should read the security information in the Servlet 2.2 specification
    that WL 5.1 implements:
    http://java.sun.com/products/servlet/download.html
    Chapter 11 deals with declarative and programmatic security, and includes a
    section on roles:
    11.4 Roles
    A role is an abstract logical grouping of users that is defined by the
    Application Developer or
    Assembler. When the application is deployed, these roles are mapped by a
    Deployer to security
    identities, such as principals or groups, in the runtime environment.
    A servlet container enforces declarative or programmatic security for the
    principal associated with
    an incoming request based on the security attributes of that calling
    principal. For example,
    1. When a deployer has mapped a security role to a user group in the
    operational environment. The
    user group to which the calling principal belongs is retrieved from its
    security attributes. If the
    principal's user group matches the user group in the operational environment
    that the security
    role has been mapped to, the principal is in the security role.
    2. When a deployer has mapped a security role to a principal name in a
    security policy domain, the
    principal name of the calling principal is retrieved from its security
    attributes. If the principal is
    the same as the principal to which the security role was mapped, the calling
    principal is in the
    security role.
    Cameron Purdy
    http://www.tangosol.com
    "Hari" <[email protected]> wrote in message
    news:[email protected]..
    Hello Gurus,
    I am new to Weblogic server and I am trying to investigate how to make
    use of security roles in weblogic server (5.1.0). Can anyone point me
    to some documentation. Specifically, I am looking for instance level,
    and method level security and how to use it.
    Thanks for taking your time to read this e-mail.
    Thank You all in advance,
    Hari.

  • Is RDBMS Realm industrial-strength?

    I can see that several people are using RDBMS Realm, which started out as an
    example. Is the version shipped with WLS 6.0 reliable and robust? Is it
    suitable for a commercial application?

    The RDBMS Realm shipped with WLS is a sample.
    It is not industrial strength. For example,
    the schema is string based and pretty slow.
    Also, it doesn't support adding new groups or
    acls via the console.
    -Tom
    "Al Fontes" <[email protected]> wrote:
    I can see that several people are using RDBMS Realm, which started out
    as an
    example. Is the version shipped with WLS 6.0 reliable and robust? Is
    it
    suitable for a commercial application?

  • Problem creating user in RDBMS realm Using com.bea.wlpi.rdbmsrealm.RDBMSRealm

    Hi,
    I am currently using WLI 2.0 SP2 installation. Here is a very unusual thing I
    noticed. Can somebody tell me what is going on ???
    1 : I have set up the security realm as indicated in the config.xml file. As far
    as I understand, the caching realm entry has attribute pointing to the wlpiRDBMSRealm,
    which is a RDBMS implementation from the WLI 2.0 SP2 distribution.
    2: I start the server, open the WLS console, and create a new user through the
    console. I get no error message and it seems to work fine. ( I also click on the
    save it to database link, and it returns with msg that cache is refreshed ).
    3: I see an entry in the fileRealm.properties file, but no record is inserted
    in the WLSUSER table in the database.
    Since the RDBMS realm (from WLI distribution) is defined as basic
    realm implementation, should it not insert entry into the database, instead of
    the file realm.
    Is this a general problem ( any RDBMS realm ) or is it specific to the WLI ?
    Is there anything that I have not configured here that is causing this behavior
    Is it just refreshing the cache instead of inserting record in DB ?
    Why should it insert entry into fileRealm.properties ?
    Thanks,
    Girish
    [noaa1.zip]

    Hi,
    I turned on the caching realm through the WLS Console, (Security).
    After this I get a very unusual error, which seems to be comming
    from the RDBMS implementation class (from WLI 2.0 SP2 distribution).
    Here is the msg that I get while WLS server boots (the WLS server boots ok, but
    WLPI does not initialize) ....
    Unable to initialize WebLogic Process Integrator:
    SQL Exception: ResultSet not open, operation 'next' not permitted. Verify that
    autocommit is OFF.
    at c8e.k.j.l_(Unknown Source)
    at c8e.k.j.l_(Unknown Source)
    at c8e.k.j.j_(Unknown Source)
    at c8e.k.n.checkIfClosed(Unknown Source)
    at c8e.k.n.movePosition(Unknown Source)
    at c8e.k.n.movePosition(Unknown Source)
    at c8e.k.n.next(Unknown Source)
    at com.bea.wlpi.rdbmsrealm.RDBMSDelegate.getGroup(RDBMSDelegate.java:425)
    at com.bea.wlpi.rdbmsrealm.RDBMSRealm.getGroup(RDBMSRealm.java:235)
    at weblogic.security.acl.CachingRealm.getGroup(CachingRealm.java:1120)
    at weblogic.ejb20.deployer.SecurityRoleMapping.lookupPrincipal(SecurityRoleMapping.java:243)
    at weblogic.ejb20.deployer.SecurityRoleMapping.getSecurityRolePrincipals(SecurityRoleMapping.java:96)
    at weblogic.ejb20.deployer.SecurityRoleMapping.getSecurityRolePrincipals(SecurityRoleMapping.java:128)
    at weblogic.ejb20.deployer.SecurityRoleMapping.isPrincipalInAnyRole(SecurityRoleMapping.java:174)
    at weblogic.ejb20.deployer.MethodInfoImpl.checkAccess(MethodInfoImpl.java:214)
    at weblogic.ejb20.internal.MethodDescriptor.checkAccess(MethodDescriptor.java:285)
    at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:90)
    at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:55)
    at com.bea.wlpi.server.plugin.PluginManagerCfgBeanEOImpl.init(PluginManagerCfgBeanEOImpl.java:1301)
    at com.bea.wlpi.server.initlistener.InitListenerBean.onMessage(InitListenerBean.java:151)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:221)
    at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:175)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:1933)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:1892)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.Kernel.execute(Kernel.java:250)
    at weblogic.jms.client.JMSSession.pushEnvelope(JMSSession.java:1779)
    at weblogic.jms.client.JMSCallback.pushEnvelope(JMSCallback.java:69)
    at weblogic.jms.frontend.FESession.execute(FESession.java:1972)
    <Aug 22, 2001 11:56:01 AM MDT> <Notice> <WebLogicServer> <WebLogic Server started>
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    --------------- nested within: ------------------
    com.bea.wlpi.rdbmsrealm.RDBMSException: caught SQL exception - with nested exception:
    [SQL Exception: ResultSet not open, operation 'next' not permitted. Verify that
    autocommit is OFF.]
    at com.bea.wlpi.rdbmsrealm.RDBMSRealm.getGroup(RDBMSRealm.java:242)
    <Aug 22, 2001 11:56:01 AM MDT> <Notice> <WebLogicServer> <ListenThread listening
    on port 7101>
    at weblogic.security.acl.CachingRealm.getGroup(CachingRealm.java:1120)
    at weblogic.ejb20.deployer.SecurityRoleMapping.lookupPrincipal(SecurityRoleMapping.java:243)
    at weblogic.ejb20.deployer.SecurityRoleMapping.getSecurityRolePrincipals(SecurityRoleMapping.java:96)
    at weblogic.ejb20.deployer.SecurityRoleMapping.getSecurityRolePrincipals(SecurityRoleMapping.java:128)
    at weblogic.ejb20.deployer.SecurityRoleMapping.isPrincipalInAnyRole(SecurityRoleMapping.java:174)
    at weblogic.ejb20.deployer.MethodInfoImpl.checkAccess(MethodInfoImpl.java:214)
    at weblogic.ejb20.internal.MethodDescriptor.checkAccess(MethodDescriptor.java:285)
    at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:90)
    at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:55)
    at com.bea.wlpi.server.plugin.PluginManagerCfgBeanEOImpl.init(PluginManagerCfgBeanEOImpl.java:1301)
    at com.bea.wlpi.server.initlistener.InitListenerBean.onMessage(InitListenerBean.java:151)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:221)
    at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:175)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:1933)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:1892)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.Kernel.execute(Kernel.java:250)
    at weblogic.jms.client.JMSSession.pushEnvelope(JMSSession.java:1779)
    at weblogic.jms.client.JMSCallback.pushEnvelope(JMSCallback.java:69)
    at weblogic.jms.frontend.FESession.execute(FESession.java:1972)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    "Girish Gupte" <[email protected]> wrote:
    >
    >
    >
    Hi,
    I am currently using WLI 2.0 SP2 installation. Here is a very unusual
    thing I
    noticed. Can somebody tell me what is going on ???
    1 : I have set up the security realm as indicated in the config.xml file.
    As far
    as I understand, the caching realm entry has attribute pointing to the
    wlpiRDBMSRealm,
    which is a RDBMS implementation from the WLI 2.0 SP2 distribution.
    2: I start the server, open the WLS console, and create a new user through
    the
    console. I get no error message and it seems to work fine. ( I also click
    on the
    save it to database link, and it returns with msg that cache is refreshed
    3: I see an entry in the fileRealm.properties file, but no record is
    inserted
    in the WLSUSER table in the database.
    Since the RDBMS realm (from WLI distribution) is defined as basic
    realm implementation, should it not insert entry into the database, instead
    of
    the file realm.
    Is this a general problem ( any RDBMS realm ) or is it specific to the
    WLI ?
    Is there anything that I have not configured here that is causing this
    behavior
    Is it just refreshing the cache instead of inserting record in DB ?
    Why should it insert entry into fileRealm.properties ?
    Thanks,
    Girish

  • Creating New Users for RDBMS realm

    I am currently creating new users in the RDBMS realm
    by an EJB that will insert into the "Users" table. Is this
    the correct way to create users or should I be calling
    methods on classes in examples.security.RDBMSRealm?
    Thanks
    Bill.

    Thanks a lot for the guideline.
    I can able to create multiple users using Import option of the user administration but i have one more question regarding the same.
    What about the password setting of these newly created users. Or can the set the password field in test file?? Because when we export the user, it is not showing any Password field.
    Thanks & Regards,
    Prashant

  • [Fwd: Re: rdbms realm and connection pool]

    Hi,
    One reason why I would like to use the connection pool for the RDBMS
    realm is because there is the retry machanism built into the connection
    pool. With this retry, I don't need to re-start WebLogic if the DB
    server is somehow re-started. With the current implementation, all the
    connections maintained by the realm will become invalid if the DB server
    has been restarted independently.
    -------- Original Message --------
    Subject: Re: rdbms realm and connection pool
    Date: Wed, 27 Sep 2000 09:32:47 +0100
    From: "Terry" <[email protected]>
    Reply-To: "Terry" <[email protected]>
    Organization: BEA SYSTEMS Inc
    Newsgroups: weblogic.developer.interest.security
    References: <[email protected]>
    I believe not- the realm restricts access to connection pools to those
    who
    are allowed it, so if the realm needs the connection pool to start up,
    and
    you can't open the connection pool without the realm then you have a bit
    of
    a no-chicken and no-egg situation, which is I believe one of the reasons
    why
    there is no use of connection pools, ejbs, jndi, servlets etc. in the
    realm
    (along with other reasons, like why would it be provided with a servlet)
    The delegate pool acts somewhat similarly to a connection pool, and can
    even
    use the same database, so I'm not sure what the advantage would be
    Terry
    Nirmala devi <[email protected]> wrote in message
    news:[email protected]..
    >
    I think the rdbms realm uses different connection as it need to be setbefore
    the connection pool for Database.Is there any that i can point my rdbmsrealm to use
    the connection pool for Database instead
    Thanks in advance
    Nirmala

    I believe not- the realm restricts access to connection pools to those who
    are allowed it, so if the realm needs the connection pool to start up, and
    you can't open the connection pool without the realm then you have a bit of
    a no-chicken and no-egg situation, which is I believe one of the reasons why
    there is no use of connection pools, ejbs, jndi, servlets etc. in the realm
    (along with other reasons, like why would it be provided with a servlet)
    The delegate pool acts somewhat similarly to a connection pool, and can even
    use the same database, so I'm not sure what the advantage would be
    Terry
    Nirmala devi <[email protected]> wrote in message
    news:[email protected]..
    >
    I think the rdbms realm uses different connection as it need to be setbefore
    the connection pool for Database.Is there any that i can point my rdbmsrealm to use
    the connection pool for Database instead
    Thanks in advance
    Nirmala

  • How to setup RDBMS Realm.

    Hi
    Can some one tell me the basic steps to setup RDBMS Realm for resouces like
    pool, Servlets and EJB. I am trying to use the weblogic example code.
    Thanks in advance!!!
    jtaneja

    Please look into the previous posting of yours.
    -utpal
    "Amit" <[email protected]> wrote in message
    news:[email protected]..
    >
    Hi,
    I want to store user id, password, roles in the DB tables and providewebbased
    forms to create/modify user.
    How do I implement security relam for users stored in the DB table?
    Thanks and Regards,
    Amit

  • RDBMS Realm - Locking users

    I am using the Rdbms Realm to control the access to my servlets.
    Does anyone know how can I lock a user when he reach the maximum numbers of
    retries ?
    Thanks in advance
    Alejandro

    a> Does anyone know how can I lock a user when he reach the maximum
    a> numbers of retries ?
    You'll need to customise the RDBMS realm so that it keeps track of
    this information for you.
         <b

  • Example of RDBMS Realm

    Hi,
    I have just started out with EJB & weblogic security. I want to make a RDBMS realm in weblogic that connects to oracle dBase. Since I am new to security, I was wondering if anyone out there knew what fields would be added to a table that manages user?. Also how does a table manage ACLs? And last but not least, I noticed that when I was creating a RDBMS realm in weblogic console there is a tab that mentions that I have to write schema properties...what is this and what do I place in it. I have read all of the weblogic docs and there is nothing that addresses theses questions. I would really appreciate any help I can get.
    Thank you,
    Jay.
    P.S I am using weblogic 6.0 with sp1

    Is this a continuation of http://forum.java.sun.com/thread.jsp?forum=60&thread=159878
    It sure looks like it.
    Have you read this weblogic doc http://e-docs.bea.com/wls/docs61/adminguide/cnfgsec.html#1052867

  • Refreshing the RDBMS Realm

    I am using the RDBMS Realm that comes with Weblogic 6.0.
    We have created ejbs to create and insert our users and group members into
    the
    tables that the RDBMS Realm reads from .
    The problem is occasiounly the caching realm gets out of date. When a user
    tries
    to access a secured resource the attempts fails. After a few more attempts
    the
    cache will refresh itself and the access works fine.
    When I make changes to my user data how can I programmatically tell the
    caching
    realm to refresh itself. (The refresh through the console will not help me
    here).
    ...Or should I re-think the way I am creating and updating user data, i.e.
    should I
    only be doing this through the Realm class?
    Thanks

    s> 1. I get an Nullpointer exception on the flatgroups.java on some of the
    s> api's.
    s> like getAcls() ..etc.
    More details would be useful. Stack backtraces with line numbers.
    s> 4. Can i use weblogic.security.acl api's along with the RDBMS example.
    s> Logically speaking i could ... but why exceptions are raised.
    Insufficient information to be able to tell.
         <b
    Let us pray:
    What a Great System.
    Please Do Not Crash.
    ^G^IP@P6

  • WL51: Custom RDBMS realm interctions with CachingRealm

    I think I partially understand the interactions between a CachingRealm and a
    custom RDBMS realm (extending from ManageableRealm->AbstractListableRealm).
    One thing that confuses me is how to deal with FlatGroups that contain other
    groups.
    Suppose I use the first constructor of FlatGroup which defers the loading of
    members until a method is invoked. When my root group, "everyone" (of which
    all other groups ultimately belong to), is called to test membership of a
    user, each level in the group tree will be successively loaded since the
    members weren't pre-loaded. This sounds like it could be terribly slow,
    depending on the depth and width of the group tree.
    One optimization being considered is to pre-load each group with its
    immediate members. As each child group is added to its parent, it would
    recursively be adding its children. Thus, "everyone" would have a full tree
    of groups inside of it. However, havign been ecplitily loaded by the custom
    realm, they weren't pulled through the cache. The entire tree is present,
    but not accessible except through the "everyone" group.
    Is there a way to load these groups into the cache pro-actively so that the
    loading of a group and its children can be optimized (perhaps even using a
    connect by, if not using at least a single database call)?
    Regards,
    Brian.

    Hi.
    Try posting this in the security newsgroup.
    Regards,
    Michael
    "Brian J. Sayatovic" wrote:
    I think I partially understand the interactions between a CachingRealm and a
    custom RDBMS realm (extending from ManageableRealm->AbstractListableRealm).
    One thing that confuses me is how to deal with FlatGroups that contain other
    groups.
    Suppose I use the first constructor of FlatGroup which defers the loading of
    members until a method is invoked. When my root group, "everyone" (of which
    all other groups ultimately belong to), is called to test membership of a
    user, each level in the group tree will be successively loaded since the
    members weren't pre-loaded. This sounds like it could be terribly slow,
    depending on the depth and width of the group tree.
    One optimization being considered is to pre-load each group with its
    immediate members. As each child group is added to its parent, it would
    recursively be adding its children. Thus, "everyone" would have a full tree
    of groups inside of it. However, havign been ecplitily loaded by the custom
    realm, they weren't pulled through the cache. The entire tree is present,
    but not accessible except through the "everyone" group.
    Is there a way to load these groups into the cache pro-actively so that the
    loading of a group and its children can be optimized (perhaps even using a
    connect by, if not using at least a single database call)?
    Regards,
    Brian.--
    Michael Young
    Developer Relations Engineer
    BEA Support

  • Rdbms realm

    Hi,
    I tried creating rdbms realm in mydomain.
    I am able to see the rdbms realm users in the console when I click on users.
    I am not able to see the new groups or new members in old groups when I click
    groups. I can only see the old groups' entries.
    When I click on ACL I get the following
    weblogic.management.configuration.RealmException: RealmManager.listAcls - with
    nested exception: [security.rdbmsrealm.RDBMSException: RDBMSEnumeration.nextElement
    failed - with nested exception: [java.sql.SQLException: ResultSet has already
    been closed]] at weblogic.management.configuration.RealmManager.listAcls(RealmManager.java:203)
    at weblogic.management.console.pages._panels._mbean._acltable._jspService(_acltable.java:213)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27) at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:213)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:1265)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1622)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    Any idea whats wrong? I am using the default dbschema
    I have the entries as listed below in my config.xml.
    <CachingRealm BasicRealm="defaultRDBMSRealmForOracle" Name="defaultCachingRealm"/>
    <Realm CachingRealm="defaultCachingRealm"
    FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
    <RDBMSRealm DatabaseDriver="weblogic.jdbc.oci.Driver"
    DatabasePassword="tiger"
    DatabaseURL="jdbc:weblogic:oracle:vogue"
    DatabaseUserName="scott" Name="defaultRDBMSRealmForOracle"
    Notes="I have changed the package to security.rdbmsrealm from examples.security.rdbmsrealm
    example. I am using the same schema(in the ddl) in oracle"
    RealmClassName="security.rdbmsrealm.RDBMSRealm" SchemaProperties="getGroupMembers=SELECT
    GM_GROUP, GM_MEMBER from groupmembers WHERE GM_GROUP = ?;deleteGroup2=DELETE FROM
    aclentries WHERE A_PRINCIPAL = ?;deleteGroup1=DELETE FROM groupmembers WHERE GM_GROUP
    = ?;addGroupMember=INSERT INTO groupmembers VALUES ( ? , ? );getUser=SELECT U_NAME,
    U_PASSWORD FROM users WHERE U_NAME = ?;getPermission=SELECT DISTINCT A_PERMISSION
    FROM aclentries WHERE A_PERMISSION = ?;deleteUser3=DELETE FROM aclentries WHERE
    A_PRINCIPAL = ?;getGroupNewStatement=false;deleteUser2=DELETE FROM groupmembers
    WHERE GM_MEMBER = ?;deleteUser1=DELETE FROM users WHERE U_NAME = ?;getAcls=SELECT
    A_NAME, A_PRINCIPAL, A_PERMISSION FROM aclentries ORDER BY A_NAME, A_PRINCIPAL;getUsers=SELECT
    U_NAME, U_PASSWORD FROM users;getPermissions=SELECT DISTINCT A_PERMISSION FROM
    aclentries;getGroups=SELECT GM_GROUP, GM_MEMBER FROM groupmembers;getAclEntries=SELECT
    A_NAME, A_PRINCIPAL, A_PERMISSION FROM aclentries WHERE A_NAME = ? ORDER BY A_PRINCIPAL;newUser=INSERT
    INTO users VALUES ( ? , ? );removeGroupMember=DELETE FROM groupmembers WHERE GM_GROUP
    = ? AND GM_MEMBER = ?"/>
    ananya

    Hi Narin,
    I seem to have forgotten to mention that the problem got fixed when I set getGroupNewStatement
    to true.
    Anu
    "Narinder Gaheer" <[email protected]> wrote:
    Have you taken the RDBMSRealm example that comes with weblogic? If thats
    the case, that example doesn't implement Group related functionality
    as
    pointed out by many posts earlier on this newsgroup. You need to provide
    that implementation on your own.
    "ananya" <[email protected]> wrote in message
    news:[email protected]...
    Hi,
    I tried creating rdbms realm in mydomain.
    I am able to see the rdbms realm users in the console when I clickon
    users.
    I am not able to see the new groups or new members in old groups whenI
    click
    groups. I can only see the old groups' entries.
    When I click on ACL I get the following
    weblogic.management.configuration.RealmException: RealmManager.listAcls-
    with
    nested exception: [security.rdbmsrealm.RDBMSException:RDBMSEnumeration.nextElement
    failed - with nested exception: [java.sql.SQLException: ResultSet has
    already>> been closed] atweblogic.management.configuration.RealmManager.listAcls(RealmManager.java:20
    3)
    atweblogic.management.console.pages._panels._mbean._acltable._jspService(_aclt
    able.java:213)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27) atweblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :213)
    atweblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
    ntext.java:1265)
    atweblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
    :1622)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137) atweblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    Any idea whats wrong? I am using the default dbschema
    I have the entries as listed below in my config.xml.
    <CachingRealm BasicRealm="defaultRDBMSRealmForOracle"Name="defaultCachingRealm"/>
    <Realm CachingRealm="defaultCachingRealm"
    FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
    <RDBMSRealm DatabaseDriver="weblogic.jdbc.oci.Driver"
    DatabasePassword="tiger"
    DatabaseURL="jdbc:weblogic:oracle:vogue"
    DatabaseUserName="scott" Name="defaultRDBMSRealmForOracle"
    Notes="I have changed the package to security.rdbmsrealm fromexamples.security.rdbmsrealm
    example. I am using the same schema(in the ddl) in oracle"
    RealmClassName="security.rdbmsrealm.RDBMSRealm"SchemaProperties="getGroupMembers=SELECT
    GM_GROUP, GM_MEMBER from groupmembers WHERE GM_GROUP =?;deleteGroup2=DELETE FROM
    aclentries WHERE A_PRINCIPAL = ?;deleteGroup1=DELETE FROM groupmembersWHERE GM_GROUP
    = ?;addGroupMember=INSERT INTO groupmembers VALUES ( ? ,? );getUser=SELECT U_NAME,
    U_PASSWORD FROM users WHERE U_NAME = ?;getPermission=SELECT DISTINCTA_PERMISSION
    FROM aclentries WHERE A_PERMISSION = ?;deleteUser3=DELETE FROM aclentriesWHERE
    A_PRINCIPAL = ?;getGroupNewStatement=false;deleteUser2=DELETE FROMgroupmembers
    WHERE GM_MEMBER = ?;deleteUser1=DELETE FROM users WHERE U_NAME =?;getAcls=SELECT
    A_NAME, A_PRINCIPAL, A_PERMISSION FROM aclentries ORDER BY A_NAME,A_PRINCIPAL;getUsers=SELECT
    U_NAME, U_PASSWORD FROM users;getPermissions=SELECT DISTINCT A_PERMISSIONFROM
    aclentries;getGroups=SELECT GM_GROUP, GM_MEMBER FROMgroupmembers;getAclEntries=SELECT
    A_NAME, A_PRINCIPAL, A_PERMISSION FROM aclentries WHERE A_NAME = ?ORDER
    BY A_PRINCIPAL;newUser=INSERT
    INTO users VALUES ( ? , ? );removeGroupMember=DELETE FROM groupmembersWHERE GM_GROUP
    = ? AND GM_MEMBER = ?"/>
    ananya

Maybe you are looking for

  • Is it possible to lock the volume buttons on my iPod Touch?

    Something is forcing the volume down button on my iPod down all the time. Because the volume is constantly being turned down the volume square is always up in the middle of my iPod. Rather than having to replace the whole volume down button or the wh

  • Data pump + inserting new values in a table

    Hello Everybody!! My question is : is it possible to insert new row into a table which is included in running DataPump process (export data) ? Best regards Marcin Migdal

  • B2B 11g - B2B-51507 - A data element contains characters not listed in the

    How can we change the character set used in b2b ? We are getting the following error when some non english characters are present in the payload. We see the issue also when CRLF characters are present in the payload. Error : Element NTE02 (Descriptio

  • Mantain G/L Balance

    hi all, is there any way in sap through which we can mantain the G/L A/c Balance? i.e if an a/c balance goes below the particular balance the system should not allow the user to make any outgoing payment. I am an abap consultant.......so plz tell me

  • REP -1219 :'R_Header has no size ,length or width is zero

    Hi, I am getting REP-1219 while trying to run the report as a concurrent program thru Oracle Applications. The format mentioned in the concurrent program is text and style is portrait. In the system parameter mode of the report,the property 'initial