Creating security similar to Oracle Apps

We have an application that has security similar to Oracle Apps. i.e. maintaining the users and roles (responsibilities) within our application. Discoverer has a special login mechanism for Oracle Apps users. Is there a way to configure Discoverer to work with other application which has similar secuirity mechanism?

Hi Maruthi
I'm afraid I have no documentation to point you at because this was done for a specific client and I have just not had the time to put together some generic documents. I can't use the client's documents because that would be unethical and has pictures of their data.
Nevertheless, here is an overview.
1. Look at all of the Oracle base tables and determine which ones have one of the following: ORG_ID, Set of Books ID (SOB_ID) or Chart of Accounts ID (COA_ID).
2. Look at the same tables and run some scripts such as this: SELECT COUNT(*) FROM TABLE
3. For all such tables that have more than say 200,000 rows add one partition for each ORG_ID, SOB_ID or COD_ID
4. As you know, when a user logs in using an Apps account, the system sets a SYS_CONTEXT variable identifying the ORG_ID that user has access to. This is fine for tables that have an ORG_ID, but for those which only have a SOB_ID or COA_ID you can't use the ORG_ID. Therefore, what you do is create a new table, let's call it ORG_ORGANIZATIONS, that links an ORG_ID with its associated SOB_ID and COA_ID. The table is indexed on the ORG_ID.
5. Create one function per type, thus one for ORG_ID, SOB_ID and COA_ID.
For ORG_ID - function named 'DP_ORG_SECFUNC, the heart of the function is:
select substr(userenv('CLIENT_INFO'),1,5) into x_org_id from dual;
v_statement := 'ORG_ID = '||x_org_id;
return (v_statement);
For SOB_ID - function named 'DP_SOB_SECFUNC, the heart of the function is:
select substr(userenv('CLIENT_INFO'),1,5) into x_org_id from dual;
SELECT SET_OF_BOOKS_ID INTO v_set_of_books_id
FROM ORG_ORGANIZATIONS WHERE ORG_ID = x_org_id;
v_statement := 'SET_OF_BOOKS_ID = '||v_set_of_books_id;
return (v_statement);
For COA_ID - function named 'DP_COA_SECFUNC, the heart of the function is:
select substr(userenv('CLIENT_INFO'),1,5) into x_org_id from dual;
SELECT SET_OF_BOOKS_ID INTO v_chart_of_accounts_id
FROM ORG_ORGANIZATIONS WHERE ORG_ID = x_org_id;
v_statement :='CHART_OF_ACCOUNTS_ID = '||v_chart_of_accounts_id;
return (v_statement);
6. Create a view for each table you want to protect. For example, here is the code that creates a view for AP_INVOICES_ALL
CREATE OR REPLACE VIEW DV_AP_INVOICES_ALL
AS SELECT * FROM AP_INVOICES_ALL ;
SHOW ERRORS
EXEC DBMS_RLS.ADD_POLICY('APPS', 'DV_AP_INVOICES_ALL', 'SecByOrg', 'APPS', 'DP_ORG_SECFUNC', 'SELECT');
Notice how this view is being protected by a policy that when anyone runs a SELECT against this view a VPD policy kicks in and calls the ORG security function.
7. Change all of your code that Discoverer is pointing at to use new views similar to the above.
I hope this helps
Best wishes
Michael Armstrong-Smith
URL: http://learndiscoverer.com
Blog: http://learndiscoverer.blogspot.com

Similar Messages

  • Multi security groups in Oracle apps hrms

    Hi All,
    Could you please let us know how to enable or disable multi security groups in Oracle Apps hrms?
    Thnaks,
    Anil

    If you have access to Oracle Help-on-line check it there
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Amit Das ([email protected]):
    Can you please tell me of any document/book etc which describes the security features in Oracle Apps specially on Oracle financials. <HR></BLOCKQUOTE>
    null

  • Security features in Oracle Apps (Oracle Financuals)

    Can you please tell me of any document/book etc which describes the security features in Oracle Apps specially on Oracle financials.

    If you have access to Oracle Help-on-line check it there
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Amit Das ([email protected]):
    Can you please tell me of any document/book etc which describes the security features in Oracle Apps specially on Oracle financials. <HR></BLOCKQUOTE>
    null

  • How to add invoices while creating Batch Payment in Oracle Apps R12

    Hi all,
    how to add invoices while creating Batch Payment in Oracle Apps R12
    Thanks

    Can you elaborate your problem in detail ?

  • Steps to create Connection pool for Oracle apps Adapter.

    Hi All,
    Could please tel me the steps to create connection pool for Oracle Apps Adapter.
    Thanks,
    Parker

    Steps are given in section "Configuring Connection Information" in Apps Adapter User guide at below link -
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10537/T430238T430340.htm#T464886
    Regards,
    Anuj

  • Benefits of creating form functions in oracle apps

    hi all
    i want to register a new form in oracle apps,
    why i need to create form function to every form i register?
    thanks

    Same form can be use in multiple functions but on form should have one form function to System Administrator administers function security by creating
    responsibilities that include or exclude particular functions.
    The function can be a form, process, servlet, SSWA plsql function or more. So customized form needs a function to define in security by responsibility.
    Regards,

  • How to create a view with Oracle apps Org initialization ?

    Hi,
    How to create a view which needs Oracle apps org initialization to provide the correct data .
    The purpose of the view is to be accessed in Primavera DB via a DB link for reporting purpose.
    So how should the org be initialized so that the view returns the correct data when accessed from the remote data base using the DB link?
    EX: step1 run fnd_client_info.set_org_context for the org
    step2 query the veiw returns correct data in Oracle.
    How can this be achieved if the view needs to be accessed via DB link?
    sample view sql :
    select po_header_id
    from po_distributions_all pod
    where (apps.po_intg_document_funds_grp.get_active_encumbrance_func
    ('PO',
    pod.po_distribution_id
    ) <> 0
    Thanks in advance!
    Darshini

    Hi,
    This is not possible in Oracle. What u can do is create the view without the where clasue and supply the where clause at runtime.
    Hope this helps...
    Regards,
    Ganesh R

  • Steps for Creating a Report in Oracle Apps

    I need the steps for creating a Report 2.5 in Oracle Apps.
    Please let me know the steps involved in detail
    Regards
    Choudary

    First you create the report using reports 2.5. (You need to refer Application Developer's User Guide to understand Apps standards for customization)
    Then register the report in Apps:
    1) Define the executable
    2) Place the executable in the appropriate directory (You need to refer Apps installation guide to find the directory structure for placing reports)
    3) Define the concurrent program (Pay attention when you define program parameters and value sets associated)
    4) Attach your report to the request group attached to your responsibility
    5) Run the concurrent program using SRS (you will not see the report when you open Submit Requests Form, if you do have permission)
    The above procedure is applicable if you are defining the report directly in your instance. If you are using chain link, then you may have to migrate the objects appropriately.
    Some of the above activities are usually done by System Administrator and users are not given permissions.

  • Unable create Connection pool for Oracle apps Adapter.

    Hi All,
    We are trying to create a connection pool for Oracle Apps adapter in 11G SOA suite.
    However during the process getting the following error:
    An error occurred during activation of changes, please see the log for details.
    A <jndi-name> is specified for the resource adapter bean in weblogic-ra.xml, however no <resourceadapter-class> element is specified in ra.xml
    Can any one help us on this.
    Thanks
    Parker.

    Please refer section "Configuring Connection Information" at below link -
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10537/T430238T430340.htm#T464886
    Regards,
    Anuj

  • Creating Secondary Node for Oracle Apps

    I've got an interesting issue.
    Background -- We're running Oracle Apps 11.5.9 in an n-tier environment.
    Servers -- Running HP-UX 11i (for both DB tier, Application tier).
    Goad -- Implement MWA server. (mobile supply chain).
    We started an implementation before and it had problems. The MWA devices (wireless barcode scanners) kept on freezing and we could never find the processes to kill. The only way to fix was to restart the application tier (uncool). More testing went and we found lots of patches to apply and did so. Things seem to be working fine, but I'd like to create a secondary node JUST for the MWA devices.
    What it boils down to is creating a secondary node for Oracle Apps that ONLY the mobile devices will use. All other users will use the primary node. Once I've found that the MWA devices are working fine, then I'll load balance, but not for now.
    I'm fairly new to Oracle Apps (1 year exp -- boss just left ACK!) and I'm not certian on how to create the secondary node and make it unavailable to all other users.
    Any help is GREATLY APPRECIATED!
    Thanks in Advance!

    Hi Jeremy,
    Did you manage to solve your MWA devices (wireless barcode scanners) freezing by adding an extra node? there is a client that is experiencing the same problem, I have trive to increase the number of ports from 10200, adding 10202 & 10204 when I start the Mobile application and increasing memory from mx1024 - ms512 to mx2048 - ms1024 & all is fruitless, we rebbot our MWA everyday at night as the time goes on during the day approx 13h00 all hell break loose, slow response, freezing of barcode scanners, everything stops.
    Regards
    Sihle

  • How to pass Username from OWSM Security policy in Oracle Apps Adapter .jca file

    My BPEL process uses Oracle Applications Adapter. The following is the .jca file for the Adapter.  The Username is initialized statically to "sysadmin" when I created the Adapter.Is it possible to pass in the username from the OWSM Security policy for the username value below? If so how to do? I appreciate your response.
    <adapter-config name="EBSAdapter" adapter="Apps" wsdlLocation="../WSDLs/EBSAdapter.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <connection-factory UIConnectionName="EBS1" location="eis/Apps/EBS1" UIConcurrentPgmName="" UIOracleAppType="DBOBJECT"/>
      <endpoint-interaction portType="EBSAdapter_ptt" operation="EBSAdapter">
        <interaction-spec className="oracle.tip.adapter.apps.AppsStoredProcedureInteractionSpec">
          <property name="SchemaName" value="APPS"/>
          <property name="PackageName" value="INTG"/>
          <property name="ProcedureName" value="GET_USER_PROFILE1"/>
          <property name="IRepInternalName" value="PLSQL:INTG:WEBCENTER_GET_USER_PROFILE1"/>
          <property name="Username" value="sysadmin"/>
          <property name="Responsibility" value="System Administrator"/>
        </interaction-spec>
      </endpoint-interaction>
    </adapter-config>

    1. Go to Invoke activity
    2. Click on Properties tab.
    3. click Add
    4. Add this property "jca.apps.Username" and map it with either variable or expression.
    5. Populate variable defined at previous step with some valid username value at runtime.
    hope this helps.
    Regards,
    Karan
    Oracle Fusion Middleware Blog

  • How to create an EIT in Oracle apps with custom table?

    Hi,
    I have a custom table in APPS schema where training information is loaded everyday by running a control file.
    I've to pick the training end date and status of 5 particular trainings and create an EIT.
    When I try to create an EIT which is basically a DFF, in value set I'm not able to find my table.
    Please guide me through this as I'm doing this for the first time.

    Hi Rajesh,
    You can do the below steps to achieve your requirement (Code may vary to suit your needs, these are just a hint to approach your solution) :
    1. Extract the zip file payload from the incoming module data
             Object obj = inputModuleData.getPrincipalData();
             Message msg = (Message)obj;
             Payload attachment = msg.getMainPayload();
    2. Construct a new outgoing payload using DOM resembling the structure that you defined in your design.
           XMLPayload xmlpayload = msg.getDocument();
           DocumentBuilderFactory factory;
           factory = DocumentBuilderFactory.newInstance();
           DocumentBuilder builder = factory.newDocumentBuilder();
           Document document = builder.newDocument();
    <Create your xml structure using DOM APIs>
    // Transforming the DOM object to Stream object.
           TransformerFactory tfactory = TransformerFactory.newInstance();
           Transformer transformer = tfactory.newTransformer();
           Source src = new DOMSource(document);
           ByteArrayOutputStream out = new ByteArrayOutputStream();
           Result dest = new StreamResult(out);
           transformer.transform(src, dest);
           byte[] docContent = out.toByteArray();
    3. Set the newly created xml structure as the new main payload
            xmlpayload.setContent(docContent);
            msg.setMainPayload(xmlpayload);
    4. Add the original document (zip file) as an attachment to the main payload.
            msg.addAttachment(attachment);
    5. Set the modified message to the inputModuleData and return it to the messaging system
             inputModuleData.setPrincipalData(msg);
             return inputModuleData;
    Regards
    Bikash

  • How to Create Buyer in the Oracle apps

    Hi
    How can we create a buyer because i want to give a particular buyer for Purchase order which has to be created so that i have to find the list of values of buyer in purchase order creation form...
    Please can any one help to create a buyer.It will be very helpful if you do me this favor.
    Thanks in advance..

    hi,
    this is an example of Buyer Setup:----
    1) In HRMS ‘People > Enter and maintain’,Create New Employee whose Last name must be same as User name Which we are logged in. Go to Assignment, Enter Org,Position and Job.Save the record.
    2) In Sysadmin ‘Security > User > Define’,Query for the user & enter ‘person’ field with employee name created in HRMS.Save the record.
    3) In PO ’ Setup >Personal > Buyers ‘, Create new buyer for our user. Now we can create a PO
    4) In PO ’ Setup >Approvals > Approval groups ’, Create an approval group.
    5) Go to ‘Setup >Approvals > Approval Assignments’ , Select the position ( as given in HRMS) and assign approval group for different document types. Now we can approve Documents
    thanks.

  • Oracle.apps.fnd.framework.OAException: Could not create Java class: (xxaai.oracle.apps.fnd.upload.webui.XxaaiBUDemandMassLoadPGCO)

    I have recently created a custom OAF app in JDev for R12.2.2.  In JDev this is working fine, so I have deployed this to the environment.  I created the function to access the page, but I am receiving this error.  I validated that the class and xml files match the name used in JDev and are in the correct location under $JAVA_TOP in the RUN environment.  As a test I created the same page in Jdev for 11.5.10 and the page deployed and worked fine.
    What could be the difference in R12.2.2? The only things that we have deployed so far are converted 11.5.10 apps that needed changes to the VO definitions for R12.2.2

    Just bringing this up to the top of the list to see if anyone else has had this same issue.

  • Issue with the report oracle.apps.xdo.XDOException:Error creating lock file

    I am getting an error while submitting the XML publisher report in Betsy N0 instance.
    Issue
    Log :- Beginning post-processing of request 145458120 on node BETSYN0DB1 at 22-DEC-2011 05:28:26.
    Post-processing of request 145458120 failed at 22-DEC-2011 05:28:28 with the error message: One or more post-processing actions failed. Consult the OPP service log for details
    Output :- Blank Report
    XML file :- XML file generated without any error
    Output process:-
    [12/23/11 4:28:10 AM] [1213640:RT145480622] Completed post-processing actions for request 145480622.
    [12/23/11 5:16:01 AM] [OPPServiceThread1] Post-processing request 145481427.
    [12/23/11 5:49:30 AM] [OPPServiceThread1] Post-processing request 145481923.
    [12/23/11 5:49:30 AM] [1213640:RT145481923] Executing post-processing actions for request 145481923.
    [12/23/11 5:49:30 AM] [1213640:RT145481923] Starting XML Publisher post-processing action.
    [12/23/11 5:49:30 AM] [1213640:RT145481923]
    Template code: XXWIP_WO_VLVS
    Template app: XXWIP
    Language: en
    Territory: US
    Output type: PDF
    oracle.apps.xdo.XDOException: Error creating lock file
         at oracle.apps.xdo.oa.util.FontCacheManager.getFontFromDB(FontCacheManager.java:320)
         at oracle.apps.xdo.oa.util.FontCacheManager.getFontFilePath(FontCacheManager.java:198)
         at oracle.apps.xdo.oa.util.FontHelper.createFontProperties(FontHelper.java:432)
         at oracle.apps.xdo.oa.util.ConfigHelper.getFontProperties(ConfigHelper.java:166)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:5824)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3459)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3548)
         at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:247)
         at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:157)
    [12/23/11 5:49:31 AM] [UNEXPECTED] [1213640:RT145481923] oracle.apps.xdo.XDOException: Error creating lock file
         at oracle.apps.xdo.oa.util.FontCacheManager.getFontFromDB(FontCacheManager.java:320)
         at oracle.apps.xdo.oa.util.FontCacheManager.getFontFilePath(FontCacheManager.java:198)
         at oracle.apps.xdo.oa.util.FontHelper.createFontProperties(FontHelper.java:432)
         at oracle.apps.xdo.oa.util.ConfigHelper.getFontProperties(ConfigHelper.java:166)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:5824)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3459)
         at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:3548)
         at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:247)
         at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:157)
    [12/23/11 5:49:31 AM] [1213640:RT145481923] Completed post-processing actions for request 145481923.

    The issue is fixed.
    Our XML Publisher TMP is not defined, so it uses the APPLTMP used by concurrent manager. There is a folder xdofonts/<SID> in $APPLTMP. It contains the fonts used by XML publisher and on the of font file (.ttf) was 0 byte. We copied the ttf file from QA. And it started working.
    Best practice is to define diffent TMP for concurrent managers and XML Publisher.
    Cherrish Vaidiyan

Maybe you are looking for

  • Application Error: "The memory could not be 'read'."

    I am programming an application in C#. I am using an Acrobat Reader control on my form to display PDFs within my program. I have tried a couple of different configurations with the form control. I have drag-and-dropped the control prior to runtime. I

  • How do I resize to 800x600 pixels and save in new folder or with new name

    I have tried and tried and read help but can't do this.  I like to crop my photos individually then save to about 800 wide or 600 high, obviously each photo after cropping will be and individual size and 800 wide may not be 600 high it might only be

  • Forward button grayed out in TB v31

    Customized the toolbars in TB v31 to add a few buttons, including Forward on the toolbar on the screen that's open when reading a specific message. Forward is grayed out and doesn't work, but the other buttons I added to this toolbar all work. I've r

  • How to use base64decode

    i have search the net for possible ways how to decode a base64encoded value being passed from the URI http://www.domain.com/test.jsp?string=SDaerowld234Uolwo i wanted to base64decode the value of $_GET['string']. There are a little hindrances that I

  • Error in JCo while connecting BAPI SALES ORDER.

    package com.sap; import com.sap.mw.jco.JCO; import com.sap.mw.jco.JCO.Exception; import com.sapportals.portal.prt.component.AbstractPortalComponent; import com.sapportals.portal.prt.component.IPortalComponentRequest; import com.sapportals.portal.prt.