DB Oracle 11 g r2 Configuration process and the session

I recently installed DB Oracle 11g R2 and 50,000 users connect to this database suggest me what would be the basic configurations.
Sessions settings and database processes are 5000 and 5505 but it is lagging bit now so if its possible I want to make maximum processes and sessions or automatic.

And the platform would be?
Windows is not suitable for this number of users.
And even on Unix, I would if I were you configure shared server or connection pooling.
See http://docs.oracle.com/cd/E11882_01/network.112/e10836/dispatcher.htm#i453786

----------
Sybrand Bakker
Senior Oracle DBA

Tags: Database

Similar Questions

  • How to display the user id and the session on the form?

    Hi all can someone guide me how to display the user id and the session on the form? Please guide me

    Sarah

    Hi Sarah,.

    You can use GET_APPLICATION_PROPERTY (CONNECT_STRING) for this.

    BTW, have you tried search in forms online help? It has good examples explaining all the built-ins.

    Arun-

  • Error: Could not find or load class main oracle.apps.ad.tools.configuration.JaznCredentialManager over the automatic configuration

    Hi all

    We're performing an upgrade to 11i, R12, and the same durinf find the error during the configuration of the applications below.

    AutoConfig Services Phase

    Running process of Service 6 of 8 for AD_TOP

    The execution of script in InstantiateFile:

    /oracle_uat/XX/R12/apps/tech_st/10.1.3/Perl/bin/perl-je /oracle_uat/xx/R12/apps/tech_st/10.1.3/perl/lib/5.8.3-je /oracle_uat/xx/R12/apps/tech_st/10.1.3/perl/lib/site_perl/5.8.3-je /oracle_uat/xx/R12/apps/apps_st/appl/au/12.0.0/perl-je /oracle_uat/xx/R12/apps/tech_st/10.1.3/Apache/Apache/mod_perl/lib/site_perl/5.8.3/i686-linux-thread-multi /oracle_uat/xx/R12/inst/apps/xx_xx/admin/install/txkExecSetJaznCredentials.pl

    script gave:

    ****************************************************

    ERRORCODE = 1 ERRORCODE_END

    .end std out.

    Error: Could not find or load the class main oracle.apps.ad.tools.configuration.JaznCredentialManager

    .end err out.

    ****************************************************

    Found the fix when $CLASSPATH has been disabled, but the strength to help here.

    You guys could give me an overview on likely areas that I could check.

    Thank you

    Hello

    Have you checked that the file JaznCredentialManager.class is well under

    Directory JAVA_TOP/oracle/apps/ad/tools/configuration of $?

    This class file is delivered by 12.1.3 (fix 9239090), R12. ATG_PF. B.Delta.3 (patch 8919491)

    and R12. T2K. B.Delta.3 (patch 8919489).

    Kind regards

    Phil.

  • Problems with configuration properties and the java plugin

    Hello

    I have test the java plugin from the hyperic documents. Autodiscover works very well. Now, I had the problem if I want to change all "configuration properties" I get following error message:
    ' The configuration has not been set for this resource due to: invalid configuration: error reported by Agent @ 141.73.130.146:2144: java.lang.NullPointerException.
    Wait I use properties by default, then I don't get any errors.

    What is the problem?

    MyAutoDiscoveryServerDetector.java
    ---------------------------------------------------------------------------------------------------------------------------
    SerializableAttribute public class MyAutoDiscoveryServerDetector extends ServerDetector implements

    {AutoServerDetector}

    public list getServerResources (ConfigResponse platformConfig)

    get {PluginException}

    Server list = new ArrayList();

    Server ServerResource = createServerResource ("My Auto-Discovery Server->" + (x + 1));

    ConfigResponse productConfig = new ConfigResponse();

    productConfig.setValue ("myTimeout", String.valueOf ((x+1) * 1000));
    productConfig.setValue ("myUrl", "http://127.0.0." + (x + 1));
    productConfig.setValue ('Description', 'Description - my Auto Discovery Description->' + (x + 1));
    productConfig.setValue ("myValue", 10);

    server.setProductConfig (productConfig);

    Servers.Add (Server);

    return of the servers;

    }
    ---------------------------------------------------------------------------------------------------------------------------

    HQ - plugin.xml
    ---------------------------------------------------------------------------------------------------------------------------
    <? XML version = "1.0"? >
    < package = "com.citytechinc.articles.hyperic.plugin plugin" >

    < name of the filter = "domain" value = "My Auto Discovery" / >

    < name of the server = "MyAutoDiscoverServer" version = "0.1 c" platforms = "Unix, Win32" >

    < plugin type = "autoinventory" class = "MyAutoDiscoveryServerDetector" / >
    < plugin type = 'measure' class = "MyAutoDiscoveryServerMeasurementPlugin" / >

    < config >

    < name of option = 'myUrl '.

    Description = "Enter the URL for this resource"

    " default = ' http://127.0.0.1 "/>

    < name of option = "Description".

    Description = "enter a description of this plugin"

    default = "default my Auto Discovery Description" / >

    < name of option = "myTimeout."

    Description = "time-out for something in my plug-in.

    default = "0" / >

    < name of option = "myValue"

    Description = "a metric value.

    default = "10" / >


    < / config >


    < name metric = "availability".
    alias = 'availability '.
    Template = "System.avail:type = Platform:Availability"
    category = "AVAILABILITY".
    indicator = 'true '.
    collectionType = "dynamic".
    units = "percentage" / >

    < name metric = 'value '.
    alias = 'value '.
    model = "" MyPlugin:Type = value: value ' "
    category = 'USE '.
    indicator = 'true '.
    collectionType = "dynamic".
    units = "none" / >

    < / Server >

    < / plugin >
    ---------------------------------------------------------------------------------------------------------------------------

    UM,.

    This must be due to an incompatibility between the definitions of plugin in the server (and/or of the database) and the agent.

    First of all, always check the server log, errors that appear it should lead to the cause.

    The plugin xml initialized ok on the server, or any error appear?

    You go to Administration-> default trace and see your plugin (Server Type: MyAutoDiscoverServer) and everything is there?
    If this isn't the case, errors occurred when starting the server, check the log.

    Did you start to shave - created the plugin, added to both server and agent, autodiscovery, the platform/server added in Hyperic - or you already had the server/platform added in Hyperic and who has made some changes in the xml plugin that may be in conflict with what is already in the Hyperic database?

    Generally the pitfalls that come from these errors.

    Been there, done that.

  • threads, processes and the dual core processors

    Hello

    We use the CVI and we want to use multithreading. The application is running on a dual core processor, so the question is if it is possible to define the basis on which the thread is running? Does anyone know if it is possible to start a program, process, or a thread on a predefined kernel?

    If this is not possible with the CVI, is it possible directly with the Windows API?

    Thank you

    Oliver

    AWESOME, thanks I'll try.

    Greetings

    Oliver

  • The new synchronization process and the master password do not mix

    Article why I can't sync my passwords? linkified ~ J99 says that the password inhibits synchronization, which explains why the "password sync" option is grayed out, if the password is used. Then to syncv passwords that must disable the master password, i.e. by train to "empty".

    What speaks against the following:

    1. disable the password and let synchronization collect existing passwords
    2. activate the password
    3. do this on all the devices of interest

    Finally, all devices should have 'more or less' synchronized passwords, while benefiting from the security provided by their main password. "Roughly", because the above procedure consecutively for devices A, B, C ends with B having a synchronized set passwords of A and B and C the game, containing people with disabilities of A synchronization, B and C (which is all of the passwords in the cloud). Given the fact we do not change passwords too often, so this shouldn't be a big problem. We can, for instance recovery procedure above for A at the end of the round.

    Does make sense?

    TiA

    SMO

    https://Bugzilla.Mozilla.org/show_bug.cgi?id=995268#C58

    "The problem of this bug is on the fact that we are no longer synchronized passwords if you have master-password enabled. We realize this is a significant limitation and we are working on a solution to bring things back to parity with the synchronization of the former. We do not take this issue seriously, and certainly, the challenge will be to store the credentials FxA in connection manager, so protected by the master-password as are other passwords. »

  • When I close Firefox, the window closes, but the Firefox.exe process and the plugin container continue to run in the background and should stop using Windows Task Manager.

    This happens frequently. Something in Firefox continues to operate even when the program is closed. The process must be stopped before I can open Firefox again.

    https://support.Mozilla.com/en-us/KB/Firefox%20hangs
    See hang-to-output

  • Is there a problem with APEX Application processes and the CAE?

    I have a table that has a political function. When I select in the table directly from the page, it seems to be only return lines appropriate for the user.

    But, when I select from the same table using an application process (On Demand), PL/SQL block.

    BEGIN
    OWA_UTIL.mime_header ("text/xml", FALSE);
    HTP.p ('Cache-Control: non-cache');
    HTP.p ('Pragma: non-cache');
    OWA_UTIL.http_header_close;
    HTP.prn ("< select >");
    FOR c IN (SELECT '1' o)
    name | ' (' | school |) ')' d,
    pk_id r
    OF sch_base
    WHERE pk_id = nvl(:REFRESH_LOV_PK_ID,'null')
    UNION
    SELECT '2' o,
    '%' d,
    r 'null %.
    OF the double
    UNION
    SELECT '3' o,.
    name | ' (' | school |) ')' d,
    pk_id r
    OF sch_base
    WHERE pk_id <>nvl(:REFRESH_LOV_PK_ID,'null')
    ORDER BY 1, 2)
    LOOP
    HTP.prn ("< option value ="' | c.r |) '">' ||
    c.d | ("< / option >");
    END LOOP;
    HTP.prn ("< / select >");
    END;

    It returns all rows in the table.

    Try something like

    var get = new htmldb_Get(null,$x('pFlowId').value,'APPLICATION_PROCESS=' + pApp,$v('pFlowStepId') )
    

    CITY

  • Can not open the site of Oracle, get but message "Unable to authenticate the session."

    It is the only site that I have trouble opening. Could someone walk me through how to fix this?

    This problem may be caused by corrupted cookies or cookies that are blocked.

    Clear the cache and delete cookies only from Web sites that cause problems.

    "Clear the Cache":

    • Firefox > Preferences > advanced > network > content caching Web: 'clear now '.

    'Delete Cookies' sites causing problems:

    • Firefox > Preferences > privacy > "Use the custom settings for history" > Cookies: "show the Cookies".

    See also:

  • How to plan the propagation process and/or application

    Hi all

    Is it possible to predict the spread and application during the Oracle Streams configuration?, I mean, I don't want to run replication online because I have other object outside the Oracle who need to reproduce within the db to get my aplication (red only) in sync.

    So, when I can do? Here is an example of process apply and spread:

    BEGIN
    DBMS_STREAMS_ADM. () ADD_SCHEMA_RULES
    schema_name = > 'shm '.
    streams_type = > 'apply ',.
    streams_name = > 'apply_from_db1 ',.
    queue_name = > "strmadmin.from_db1"
    include_dml = > true,
    include_ddl = > true,
    source_database = > "db1.world"
    inclusion_rule = > true);
    END;
    /

    .....

    BEGIN
    DBMS_STREAMS_ADM. () ADD_SCHEMA_PROPAGATION_RULES
    schema_name = > 'shm '.
    streams_name = > 'db1_to_db2 ',.
    source_queue_name = > 'strmadmin.captured_db1 ',.
    destination_queue_name = > '[email protected] ',.
    include_dml = > true,
    include_ddl = > true,
    source_database = > "db1.world"
    inclusion_rule = > true,
    queue_to_queue = > true);
    END;
    /

    Perhaps, am I is not clear to my question, or maybe I do everything in the bad sense on propagation processes and the workflow application.

    So, I looked in all the documents available and I can't find how to plan the process... What is the part that I am missundertanding?

    As long I have it other non Oracle objects (system files objects, we say that some objects in ECM file system related with data) to replicate with the data schema, I can't replicate any changes to the schema of the source table to the schema database of fate (automatically). So, I'm replicated ECM file systems objects in other external tool (with build-in Windows Calendar integration)... but how I can program spread and/or application treats in the middle of stream 2-way?

    Please, I need a hint of someone as soon as possible.

    Thanks in advance.

    Your question is not very clear, so here's what you need to know abot schedules DBMS_STREAMS_ADM and spread:

    The schedule is done automatically when you add the spread with DBMS_STREAMS_ADM.
    This API DBMS_STREAMS_ADM encompass several other APIs:

    -DBMS_CAPTURE_ADM,
    -DBMS_RULE_ADM
    -DBMS_APPLY_ADM
    -DBMS_PROPAGATION_ADM.
    -DBMS_AQ_ADM

    This DBMS_STREAMS_ADM is supposed to make things easier, but it takes an important definition default values, so that you see all the actions that are performed as they are done quietly behind the scenes.
    The establishment of the regular spread is on of these silent setting and the time that occurs with a never ending cycle to wake up/run/sleep.
    The duration of sleep between 2 execution is defined by DBA_QUEUE_SCHEDULES. LATENCY

    From the spread itself, it's a job. When the next execution is set to null, he reschedule itself, like an endless loop.
    Here's how the job will appear:

    set embedded on
    set heading on
    set feedback off
    set linesize 162 pagesize 0
    col fail format 999  heading 'Errs'
    col broken   format a3   heading 'Bro|ken'
    
    col sess format 9999   heading 'Ses'
    col jid  format 999999  heading 'Job|Id'
    col subu format a10  heading 'Submitter'     trunc
    col secd format a10  heading 'Security'      trunc
    col proc format a30  heading 'Job'           word_wrapped
    col lsd  format a10  heading 'Last|Ok|Date'
    col lst  format a5   heading 'Last|Ok|Time'
    col nrd  format a10  heading 'This|Run|Date'
    col nrt  format a5   heading 'This|Run|Time'
    col fail format 99 heading 'Err'
    
    col proc format a50  heading 'Job'           word_wrapped
    col secd format a10  heading 'Security'      trunc
    
    select job jid, log_user  subu,   priv_user                  secd,    what proc,
                  to_char(last_date,'DD/MM/YYYY') lsd,
                  substr(last_sec,1,5)            lst,
                  to_char(next_date,'DD/MM/YYYY') nrd,
                  substr(next_sec,1,5)            nrt,
                  failures                        fail,
                  decode(broken,'Y','Y','N')      Broken
    from sys.dba_jobs;
    prompt
    
                                                                                     Last       Last  This       This
        Job                                                                          Ok         Ok    Run        Run       Bro
         Id Submitter  Security   Job                                                Date       Time  Date       Time  Err ken
    ------- ---------- ---------- -------------------------------------------------- ---------- ----- ---------- ----- --- ---
         55 SYS        SYS        next_date := sys.dbms_aqadm.aq$_propaq(job);                        27/11/2009 16:19     N
    

    Now, this work is performed in a session, always the same, which performs the actual transfer of waiting by using the global name DB link to target the area. You can check which session with the following queries:

    set linesize 125
    prompt
    set linesize 150
    col queue_name HEADING 'Source|Queue Name'
    col queue_schema HEADING 'Source|Queue Owner'
    col dblink format a34 head 'Destination|Database Link'
    COLUMN SCHEDULE_STATUS HEADING 'Schedule Status' FORMAT A23
    COLUMN PROPAGATION_NAME Heading 'Propagation|Name' format a25 wrap
    COLUMN START_DATE HEADING 'Expected |Start Date'
    COLUMN PROPAGATION_WINDOW HEADING 'Duration|in Seconds' FORMAT 9999999999999999
    COLUMN NEXT_TIME HEADING 'Next|Time' FORMAT A8
    COLUMN LATENCY HEADING 'Latency|in Seconds' FORMAT 9999999999
    COLUMN SCHEDULE_DISABLED HEADING 'Status' FORMAT A8
    COLUMN PROCESS_NAME HEADING 'Schedule|Process|Name' FORMAT A8
    COLUMN FAILURES HEADING 'Number of|Failures' FORMAT 99
    COLUMN LAST_ERROR_MSG HEADING 'Error Message' FORMAT A55
    COLUMN TOTAL_BYTES HEADING 'Total Bytes|Propagated' FORMAT 9999999999999999
    COLUMN CURRENT_START_DATE HEADING 'Current|Start' FORMAT A17
    COLUMN LAST_RUN_DATE HEADING 'Last|Run' FORMAT A17
    COLUMN NEXT_RUN_DATE HEADING 'Next|Run' FORMAT A17
    COLUMN LAST_ERROR_DATE HEADING 'Last|Error Date' FORMAT A17
    COLUMN LAST_ERROR_TIME HEADING 'Last|Error time' FORMAT A12
    column message_delivery_mode HEADING 'Message|Delivery|Mode'
    column queue_to_queue HEADING 'Q-2-Q'
    col destination format a50
    col sid for a4
    col tot_k for 999999999999 head 'Total |Sent (Kb)' justify L
    
    prompt
    prompt When the duration is NULL, the propagation is active
    prompt When the next time is NULL, the propagation job is currently running
    prompt
    
    SELECT substr(session_id, 0, instr(session_id,',')-1) sid ,
           p.propagation_name,TO_CHAR(s.START_DATE, 'HH24:MI:SS MM/DD/YY') START_DATE,
           s.PROPAGATION_WINDOW, s.NEXT_TIME, s.LATENCY,
           DECODE(s.SCHEDULE_DISABLED, 'Y', 'Disabled', 'N', 'Enabled') SCHEDULE_DISABLED,
           (select value/1024  from v$sesstat x, v$statname y
                    where  x.STATISTIC# = y.STATISTIC# and y.name = 'bytes sent via SQL*Net to dblink'
                       and x.sid=substr(session_id, 0, instr(session_id,',')-1) ) tot_k
      FROM
          DBA_QUEUE_SCHEDULES s,
          DBA_PROPAGATION p
      WHERE  p.DESTINATION_DBLINK = NVL(REGEXP_SUBSTR(s.destination, '[^@]+', 1, 2), s.destination)
             AND s.SCHEMA = p.SOURCE_QUEUE_OWNER
             AND s.QNAME = p.SOURCE_QUEUE_NAME
             and s.message_delivery_mode='BUFFERED'  and session_id is not null
      order by  propagation_name ;
    
    select p.propagation_name, s.message_delivery_mode,
           s.FAILURES,
           p.queue_to_queue,
           s.LAST_ERROR_MSG
      FROM
            DBA_QUEUE_SCHEDULES s,
            DBA_PROPAGATION p
      WHERE
             p.DESTINATION_DBLINK = NVL(REGEXP_SUBSTR(s.destination, '[^@]+', 1, 2), s.destination)
         AND s.SCHEMA = p.SOURCE_QUEUE_OWNER
         AND s.QNAME  = p.SOURCE_QUEUE_NAME
      order by propagation_name,s.message_delivery_mode ;
    
    SELECT p.propagation_name,  TO_CHAR(s.LAST_RUN_DATE, 'HH24:MI:SS MM/DD/YY') LAST_RUN_DATE,
       TO_CHAR(s.CURRENT_START_DATE, 'HH24:MI:SS MM/DD/YY') CURRENT_START_DATE,
       TO_CHAR(s.NEXT_RUN_DATE, 'HH24:MI:SS MM/DD/YY') NEXT_RUN_DATE,
       TO_CHAR(s.LAST_ERROR_DATE, 'HH24:MI:SS MM/DD/YY') LAST_ERROR_DATE,
       LAST_ERROR_TIME
      FROM DBA_QUEUE_SCHEDULES s, DBA_PROPAGATION p
        WHERE   p.DESTINATION_DBLINK =
            NVL(REGEXP_SUBSTR(s.destination, '[^@]+', 1, 2), s.destination)
      AND s.SCHEMA = p.SOURCE_QUEUE_OWNER
      AND s.QNAME = p.SOURCE_QUEUE_NAME order by  propagation_name;
    

    If you want to change the lag time, you can use this:

    -- adapt following your needs, defineds $prop (propagation name)  and $latency (value in secs, usually 1 or 3 or 5) :
    
    col DESTINATION_QUEUE_NAME new_value DESTINATION_QUEUE_NAME noprint
    col DESTINATION_DBLINK new_value DESTINATION_DBLINK noprint
    col source_queue_name new_value source_queue_name noprint
    
     select SOURCE_QUEUE_NAME, DESTINATION_QUEUE_NAME, DESTINATION_DBLINK from SYS.DBA_PROPAGATION  where propagation_name = upper('$fprop');
     set serveroutput on size 9999
      col cmd new_value cmd noprint
      execute DBMS_AQADM.ALTER_PROPAGATION_SCHEDULE( queue_name => 'STRMADMIN.&source_queue_name',  destination =>'&DESTINATION_DBLINK',  destination_queue=>'&DESTINATION_QUEUE_NAME',  latency=>$latency, duration=>null, next_time=>null) ;
    
  • 53 updates to Windows Vista and now screen keeps saying that it configures updates, then it restarts and the wont do anything else

    After using no not my laptop for some time, I turned on and 53 updates to Windows Vista. Went through the whole process, then got to the updates configuration screen and the laptop keeps restarting and it won't do anything else.

    Hello

    1st thing to try is a restoration of the system in safe mode

    http://www.windowsvistauserguide.com/system_restore.htm

    Windows Vista

    Using the F8 method:

    1. Restart your computer.
    2. When the computer starts, you will see your computer hardware are listed. When you see this information begins to tap theF8 key repeatedly until you are presented with theBoot Options Advanced Windows Vista.
    3. Select the Safe Mode option with the arrow keys.
    4. Then press enter on your keyboard to start mode without failure of Vista.
    5. To start Windows, you'll be a typical logon screen. Connect to your computer and Vista goes into safe mode.
    6. Do whatever tasks you need and when you are done, reboot to return to normal mode.

    If that does not read this information

    the link below is how to download and get a vista disk startup repair, which you can start from the

    http://NeoSmart.net/blog/2008/Windows-Vista-recovery-disc-download/

    Here's how to use startup repair system restore command prompt, etc. to bleepingcomputers link below

    http://www.bleepingcomputer.com/tutorials/tutorial148.html

    to boot from the dvd drive to be able to you will see a way to get into the bios Setup at the bottom of the screen or command menu start

    It would be F2 or delete etc to enter the BIOS or F12 etc. for the start menu

    Change boot order it do dvd drive 1st in the boot order

    http://helpdeskgeek.com/how-to/change-boot-order-XP-Vista/

    ___________________________________________________________________

    or please repost your question in the correct windows update forum

    http://answers.Microsoft.com/en-us/Windows/Forum/windows_vista-windows_update?page=1&tab=all

  • Question about the configuration of virtual computer file and the working VM location

    I noticed one of my virtual machines had two data warehouses listed under "Items" in the vSphere Client.

    After some research autour, I found the virtual machine files are in the correct data store, but the 'VM-configuration file' and 'Place of work VM' are in another data store.

    Can I combine all in the same database?   I'd rather have the config and the workplace on ma who has a lot of main storage.  For some reason, the configuration file and the location of work were created on a local storage on my host.

    Any suggestions?

    Thank you

    David Moore

    You can use Storage vMotion to migrate only the virtual machine configuration file to the desired location, just start the wizard of vMotion and storage step 'Select the data store', click Advanced, and you will see the option to select a new destination for the configuration file data store.

  • Moving the virtual computer configuration file and work on the clone of the model

    Using the VirtualMachineRelocateSpecDiskLocator to move disks from different NFS data warehouses when cloning a model looks very good work.  However, the Virtual Machine configuration file and the location of work remain on their original NFS data storage, not moving with the root of the drive.

    If this move not all together, or am I missing a step here?

    Thank you

    Scott

    Specifying the "data store" in VirtualMachineRelocateSpecDiskLocator specifies the location of the VM virtual disks only. To move the virtual machine, it might also be necessary to specify "datastore" property of "VirtualMachineRelocateSpec. If this is not specified, the current data store is used to store the files of the virtual computer.

  • Differences between process and procedures

    Hi all
    can someone tell me what are the differences between the processes and procedures? Is there a difference between a process with only automatic spots and a procedure?

    If your process dynamically invokes a procedure and your process and procedure called dynamically are in the same project, it will work when it is deployed to the Studio and business.

    However, if your process tries to dynamically call a procedure from another project, you're going to collide in a bug (the null pointer you get). Support may disagree, but on the company dynamically invoke a procedure of a process in a single project via an interface procedure must initiate a procedure in another project successfully if both are deployed on the same engine of the company.

    Suggest that you report it to the Support. If you need a simple project that duplicates the problem, here is a zip file which has two projects. A project is a process that dynamically calls a procedure through an interface. The invoked procedure is in the other project in the zip file.

    http://www.4shared.com/file/182416607/9e9763a4/InvokeProcedureInDifferentProj.html

    This is a project that works and that invokes a procedure successfully when the process and the invoked procedure are both in the same project.

    http://www.4shared.com/file/182420920/5b52f6b4/ProcedureBeingInvokedinSamePro.html

    Dan

  • Integration of OAM (11.1.2.0.0) with the OIF (11.1.1.2.0) and the Protection of resources

    Hi Oracle community!  It's my first post here on the forums, so please bear with me.

    I have a question about the integration between the IOF, acting as an IdP and OAM as the authentication engine.  I'll start with our Setup and the way we protect resources and then finally to deliver my ultimate question.

    First things first:

    We use the OIF 11.1.1.2.0 and OAM 11.1.2.0.0 (looking at upgrading OAM/OIF soon to 11.1.2 patch set 2, so we get full OIF blown in OAM packet and not only the part of MS).

    I essentially was self-taught in the integration of the products and did the best that I can.  We have that in the production running the full blown federations now, so that we know that we are doing something good.  I won't say that we have done is the perfect solution, but it is the way in which we understand how products interact and worked at the time.

    We have OIF, acting as an IdP (without SP yet), configured to use our OAM authentication search engine.  According to the documentation, we read through, when this configuration occurs, when the IOF receives a request to start the process of Federation (/ fed/PDI/initiatesso? providerid = XXXXXX), she sees the user is not authenticated and will forward to the authentication engine.  In our case, this means that we forwards the request to an internal flow in the OIF (/ fed/user/authnoam11g) which crosses the webgate, then check with OAM, if it is a resource that is protected or not.  In OAM, we defined a resource to protect/fed/user/authnoam11g so she who collects and authenticates the user via the policy regime, etc.  Once that ends, she goes back to the OIF to finish the assertion.

    Keep in mind, I'm aware of a lot more of what's going on in the process, but it's the main room that will be the basis of my question.

    So than stated above, we have a single policy protected for all federations from the OIF since "out of the box" OIF doesn't have several URL structures that it will send to OAM based on service provider being accessible.  For me, this is a small problem because I want to perform specific authorization controls in OAM based on the providerid who had been requested to the OIF.  OIF, as far as I know, completely removes the URL of origin that was requested and query parameters (for example providerid) which means that I have little or no information of the initial request to any robust condition checks in the policies of the OAM.

    My question to the community would be:

    Is it possible for the headers of the OIF or query string parameters to be going to OAM via header variables/session variables/etc. and then accessible through licensing of OAM requirements to do solid state audits in order to allow/deny access based on rules?

    A small example:

    I am a customer who asks the following Federation on OIF:

    1. https://oifhost/fed/IDP/initiatesso?ProviderID=partnerAlias GOLD https://oifhost/FED/IDP/samlv20 <-the samlv20 would include a request for authentication with the good provider
    2. IOF receives the request and begins creating processes and the SAML assertion.  It is determined that the user is not authenticated, so OIF will forward to the authentication engine.
    3. OIF transmits to the https://oifhost/fed/user/authnoam11g
    4. OAM protects the url "/ fed/user/authnoam11g" to make the authentication/authorization.
    5. The point of authorization, I want to build conditions that are basically looking for the "providerid" in initial demand to run specific rules to allow/deny cons.  Currently, it is not possible that I know, and that's what I want to know.
    6. Once the authentication/authorization, OAM refers the request to the OIF where he finished the SAML flow and sends the statement to MS.

    In step 5, I would need a mechanism to find the providerid (value of the header, cookie, session, etc.)

    I posted this same question on another blog of Oracle and received a reply that I want to do with the current configuration is not supported.  In order for me to get the desired result, I need to upgrade to patch set 2 of OAM with the fully integrated OIF.

    See response to blog here:

    https://blogs.Oracle.com/dcarru/entry/authorization_in_oif_idp#comments

Maybe you are looking for