Limiting ODI users to physical schemas

We have multiple Oracle users with different privileges and have created data servers for each. We want to restrict the ODI users to access the database using only a specific Oracle user id. i.e. restrict access of a ODI user to a physical schema. How can i do this in ODI?

1> Create different data servers, logical schemas for application users e.g. Finance, HR
2> Create ODI users for each of your users
3> Ideally create different projects for each application like Finance & HR, if not then separate Folders for each of them. Then grant the ODI users object instance level authorization on Projects/Folders & Models.
4> Try to give Logical Schema object instance authorization to different ODI users. If doesn't work, then create separate Models for Fin & HR yourself and grant authorization on them to ODI users.
Let me know if its helpful.
Cheers
Suds

Similar Messages

  • How to list all physical schemas in ODI procedure

    Dear Experts,
    I am trying a requirement which is to execute a set of sqls in all the schemas configured in ODI.
    for example
    1) I have four data servers/physical schemas configured in Physical Architecture under Oracle techonlogy.
    2) Created corresponding 4 logical schemas for Oracle.
    3) Mapped using two different contexts.
    4) one context mapped two schemas and another mapped two other schemas.
    now, I need to exeture the following sql for all the Oracle schemas mapped in context selected.
    just for testing: select dummy from dual
    I would like to execute this sql in ODI procedure for every schema mapped in the selected context in single execution.
    Can any expert help me on this solution?
    - Raja

    Raja,
    I was actually talking about multiple ODI Step command rather than multiple procedure. What you are trying to achieve is difficult unless you specify the logical schema in ODI Procedure , becuase getInfo will throw Null pointer if we dont specify the logical schema ,
    the getSchema needs Logical schema . The other way i can think query in work rep tables and get the schema name and pass it .
    Any way in case your figure out without passing Logical schema . Please share with us , i would be interested in learning the trick .

  • Physical schema vs logical schema in odi

    hi, i am new to odi.I have successfully loaded data metadata to essbase and planning . But still i am not clear why odi uses physical schema when we just uses logical schema while reversing, execution of interfaces etc in designer

    Hi,
    Logical schema will always point to a Physical Schema .
    The aim of the logical schema is to ensure the portability of the procedures and models on the different physical schemas. In this way, all developments in Designer are carried out exclusively on logical schemas.
    A logical schema can have one or more physical implementations on separate physical schemas, but they must be based on data servers of the same technology. A logical schema is always directly linked to a technology.
    To be usable, a logical schema must be declared in a context. Declaring a logical schema in a context consists of indicating which physical schema corresponds to the alias - logical schema - for this context.
    Thanks,
    Sutirtha

  • Context,Physical schema and Logical schema

    Hi,
    How the context,physical schema,logical schema and agent are interrelated.
    Please explain
    Thanks
    Jack

    Hi Jack,
    Context:
    A context is a set of resources allowing the operation or simulation of one or more data processing applications. Contexts allow the same jobs (Reverse, Data Quality Control, Package, etc) to be executed on different databases and/or schemas.
    Its used to run the object(process) in different database.
    Physical Schema:
    The physical schema is a decomposition of the data server, allowing the Datastores (tables, files, etc) to be classified. Objects stored in data servers with this mode of classification can be accessed by specifying the name of the schema attached to the object name.
    Ex
    Oracle classifies its tables by "schema" (or User). Each table is linked to a schema, thus SCOTT.EMP represents the table EMP in the schema SCOTT.
    Logical schema:
    A logical schema is an alias that allows a unique name to be given to all the physical schemas containing the same datastore structures.
    ->The aim of the logical schema is to ensure the portability of the procedures and models on the different physical schemas. In this way, all developments in ODI Designer are carried out exclusively on logical schemas.
    Thanks
    Madha

  • A separate work schema for a physical schema ?

    Hi,
    The ODI best practices white paper tells us (p.47/48) to create a separate schema and designate that as the work schema for a physical schema. This, however means that the user with which we connect to the database needs to have powerful system privileges like CREATE ANY TABLE, DROP ANY TABLE depending on what you want to do. Many DBA's will object to this. A simpler solution seems to be to set the work schema to be identical to the physical schema.
    Has anybody done this and experienced drawbacks/issues with it ?
    Can anybody give any good arguments in favor of the best practice advising a separate work schema ?
    thanks, Arjan

    Arjan ,
    I would like to suggest my opinion. The main reason for allocating the work Schema separate to the main schema is to have all the $ tables created separated so that while debugging we can choose to have them and drop them later and also mostly when the CKM is enabled the E$ tables are created and they are not dropped. there are also situation where dynamic $ tables are created so each time you run they $ tables are created and in case of failure or de bugging they remain . On the second attempt we have a new dynamic $ table. Think of a scenario where we have both of them in one place and the amount of unnecessary $ tables we have with our DW tables . Also if such a scenario have to happen in production box. Nobody would like to have such a scenario and then you need to either drop them manually or through another pl/sql codes . Thats the main reason its good to have a separate Work Schema.
    Also we use the Work schema for creating stagging table at run time while ODI processing.
    Secondly regarding permission and using the schema i have seen both the kind of environment where user used in topology is either the Work Schema or the Data Schema. Yes you would need to give certain permission or priviledges like Drop , create as $ tables have to have them but some dont give permission like Delete , truncate target tables .
    Now if you make your DBA understand the architecture , he would surely provide the required permission for the Work schema tables to be created and dropped and i dont see any thing to worry, since $ tables gets created and dropped but yes the permission have to be in such a way the user used in ODI data server dont have the permission to drop the Data schema table , if you want have more restricited permission for truncate and delete too, but in development we would surely need truncate and delete too since we tend to load wrong data and logic . Think about it in a different scenarios and requirement.
    Look at this link Cezar has spoken on this topic. -http://odiexperts.com/?p=672
    hope this helps.

  • Problem when creating a new physical schema

    Hello,
    I'm a new user of ODI. I installed on windows 7 -64 bits. I used java of 32 bits.
    The error is that when I right-click on physical architectures to create a new physical schema, nothing happens.
    I have already reinstalled ODI twice. I have seen previous posts in this forum about this topic, but they haven't found the solution.
    Thank you very much for your help,
    david

    Hi David,
    If you do following one to resolve your issue.
    First of all, please un-install Java 32 bit and install Java (JDK 1.6.0_20 updated or higher version) 64-bit later install ODi 11g 64 bit in your windows 7
    Regards,
    Phani

  • Physical Schema and logical schema

    Hi,
    When creating the data server in the topology corresponding to the appropriate technology we are creating a physical schema. But then why do we need to create logical schema. Is it created for execution of the interface? And can multiple physical schemas be mapped to same logical schema?

    Hi
    Physical schema represents the actual connection to the data source or data target. Logical schema represents the logical name associated to that source or target.
    One logical schema can be associated with multiple physical schema along with context, i.e. one logical schema is associated with different physical schema using different context.
    It can be understood with following example:
    You have 3 environments: Dev, QA, Prod, each having different database servers as DB1, DB2, DB3, respectively. Similarly we have 3 context corresponding to Dev, QA and Prod. You create logical schema with name DB_source
    Now you associate physical DB servers to logical schema (DB_source) for each context:
    DEV: DB1
    QA: DB2
    PROD: DB3
    Now when u develop ODI interfaces, you use one context DEV which associates DB_source to DB1. While mentioning context for execution, keep it as "Execution". This means, whatever context you choose during execution, corresponding physical DBs will be used.
    Thus if you change the execution context, corresponding physical schema will be used during execution.
    Let me know if you have further questions !!

  • Oracle Physical schema password management

    Hi:
    After setting up an Oracle physical schema and attaching a data store, I did a lot of work reversing tables, views etc and using them in my integrations, procedures etc. I never had to look back at the physical schema until we went into production, and the IT have informed me that there is a password ageing restriction for production systems. I made provisions for other system passwords (Planning, Essbase etc) using variables. But I couldn't get my head around to doing it at the Phsyical schema level.
    Given that this is a classic problem, has anyone run into this sort of issue before, and if yes, what's the best practice to deal with it?
    Any help would be greatly appreciated
    Thanks

    Rajesh,
    I see that you are using variables in Planning, essbase. On the same lines you can uses the variable as a password in the physical schema for database servers as well.
    Not that this is the best practice.
    But if your IT has a password ageing restriction - how tough is it for you to change it in the Topology Manager. That is the same as changing it in a database table and refreshing a variable from it but with less overhead.
    Or you can change your system to use service accounts. Usage of service accounts is the best practice for things like these. Ask them - How do they run automated jobs on Unix ? Do they change the passwords for those accounts every now and then. I think the answer that you will get is "We use service accounts for that"
    Are the database passwords stored in LDAP somewhere. Perhaps you can use JNDI to authenticate your database user/password from LDAP.
    In the Dataserver connection properties, you will see the "JNDI Connection" checkbox. If you select it, it will change the next tab to let you add LDAP details.
    Hope that helps

  • Can we create logical/ physical schema by running any script (unix/window)?

    I wish to create logical/ physical schema in oracle data integrator
    by running any windows or preferably unix script.
    is there any method or scripts provided in ODI?

    I think you could insert info into Matser Respository tables:
    Connect info: snp_connect
    Logical Schemas : snp_lschema
    Physical Schemas: snp_pschema
    Or you may write some sql to do this.

  • New ODI User having trouble creating an XML Data Source...

    How's everyone doing? I'm new to the Oracle Data Integrator software. My goal is to take an XML message, do a bunch of mappings/constraints/etc. and integrate the appropriate data into an Oracle database. Seems like ODI is good for the job, but I'm running into some issues setting up the actual XML source file.
    I followed this guide: [ODI XML to Database Transformation|http://www.oracle.com/technology/obe/fusion_middleware/ODI/ODIXML_to_DB_Transform/ODIXML_to_DB_Transform.htm], which was helpful, but since it used example XML files it did not go into how to use your own custom XML file.
    Let me start off by sharing the XML file I'm attempting to import:
    <?xml version="1.0" encoding="UTF-8"?>
    <Money xmlns="http://xxxxx.oracle.com/schema/Money"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xxxxx.oracle.com/schema/Money file:/C:/OraHome_1/oracledi/demo/xml/Money.xsd">
        <MoneyID>MoneyID0</MoneyID>
        <ContractID>ContractID0</ContractID>
        <EffectiveDate>2006-05-04T18:13:51.0Z</EffectiveDate>
        <MessageDate>2006-05-04T18:13:51.0Z</MessageDate>
        <ReversalIndicator>false</ReversalIndicator>
        <PriorMoneyID>PriorMoneyID0</PriorMoneyID>
        <Amount>0</Amount>
        <MoneyType>0</MoneyType>
        <ExchangeDetails>
            <CostBasis>0</CostBasis>
            <ExchangeType>0</ExchangeType>
            <MEC>false</MEC>
            <LoanAmount>0</LoanAmount>
        </ExchangeDetails>
    </Money>Pretty straightforward I'd say. Note that the XSD file it references DOES exist in that directory, so everything should be fine. So I go into Topology, select the "Physical Architecture" tab, right click "XML", click "Insert Data Server". I name my file "XML_MONEY", select the JDBC tab, and fill in the following fields:
    JDBC Driver: com.sunopsis.jdbc.driver.xml.SnpsXmlDriver
    JDBC Url: jdbc:snps:xml?f=../demo/xml/Money1.xml
    When I hit "Test", it gives me this annoying message:
    java.sql.SQLException: Could not generate the DTD because the file could not be created. Verify that you have write permission in the directory.
    I have no idea why. I definitely have permissions to write to that directory.
    I played around some more, and removed the junk at the top of the XML file, leaving the file with JUST XML tags. Now I get this error:
    java.lang.ArrayIndexOutOfBoundsException: 1
    What does this mean? I'm confused why this would be happening, because I a couple of days ago when I was playing around with a dummy XML file (with just tags) it connected just fine.
    If anyone can lend a hand I'd greatly appreciate it. I'm probably missing something stupid, so feel free to yell at me.
    Thanks!!
    Edited by: user9958203 on Nov 19, 2009 12:48 PM
    Edited by: user9958203 on Nov 19, 2009 12:48 PM

    hi , i will try to help u out....lets take a simple example
    create your own xml for example
    <pre>
    <?xml version="1.0" encoding="UTF-8"?>
    <ROWSET>
    <ROW>
    <ENAME>SCOTT</ENAME>
    <SAL>15000</SAL>
    <LOC>INDIA</LOC>
    </ROW>
    <ROW>
    <ENAME>ROCK</ENAME>
    <SAL>25000</SAL>
    <LOC>USA</LOC>
    </ROW>
    </ROWSET>
    After that go to Topology manager create a data server in xml technology for example "EMPLOYEE"
    JDBC DRIVER : com.sunopsis.jdbc.driver.xml.SnpsXmlDriver
    JDBC URL : jdbc:snps:xml?f=C:/EMP.xml&s=EMP01
    Test it you will get Successful connection message.
    After getting this message apply the settings.Physical Schema window will pop up there give Schema as EMP01,Work Schema as EMP01 then in the context tab
    create a context and give the logical schema name it can be any name..here i am giving the my logical schema name as EMP01.Apply the changes.
    Create a model
    1.In Definition tab give the model name
    select Technology as XML
    Logical Schema as EMP01
    2.In the Reverse tab select the context which u have created in the topology manager
    3.In the Selective Reverse tab reverse all the tables.
    in the model you will be getting 2 datastores ROWSET,ROW
    Create an Interface
    Drag the ROW datastore into source
    I have crated EMP_TEST table in my oracle database Ename,Sal,Loc as columns and reversed it so that i can use EMP_TEST table as my target table
    Drag the EMP_TEST table in the Target datastore map the columns
    select IKM as SQL toSQL Append execute the interface the data in the xml will be loaded in to EMP_TEST table.
    </pre>
    Hope this helps u
    Thanks,
    praneeth.

  • Physical schema conflict

    Hello,
    I have one requirement where I need to join one table from one schema say schema1 and another table say schema2 and map to 3 rd table of shcema2 only.
    I have reversed the tables with 2 different Physical shcemas, also have Logical schema for each one and when trying to join them in interface getting physical schema conflict error(while validating in interface).
    I created one Logical schema pointing 2 physical shcemas with differnt contexts, still getting the error saying
    java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
    I would appreciate your help
    Preet.

    make sure you have mapped right context with physical schema and you are using the right context to trigger and view data and also the user used in topology have the necessary permission to view edit etc.

  • Procedure not selecting SQL Server database specified in Physical Schema

    Hi all,
    I'm still green with ODI and couldn't find an answer to this after searching through the forum. I have 10.1.3.6.2 installed right now.
    I have my Physical Architecture setup with Microsoft SQL Server, Essbase, and some others. The SQL Server connection is JDBC, using integrated security (I don't think integrated security is supported but I got it to work, although I had to hack up the 10.1.3.6 upgrade script to get the patch to work...)
    Under the Physical Architecture I have several data servers. Right now the only field I specify is the Database (Catalog) and a context -- everything else is standard (even Owner (Schema) is just <Undefined> right now but changing it doesn't seem to make a difference right now)
    So, I have my job all designed up in Designed and can run it, and everything works just fine, except one little snag. The database in SQL Server doesn't seem to get selected automatically (by virtue of being specified in the Physical schema). However, if I put a step in to the job so that it exectures "USE database_name", then everything works.
    Normally, I could live with this, but the databases are named differently on different servers, so I'd prefer to just get it to work from the physical schema instead of jumping through some hoops with variables.
    Also, while I thought about specifying the database on the JDBC URL (databaseName=X), this won't work (it's probably poor form anyway) either.
    So... shouldn't specifying the database/catalog in the physical schema make it so that it gets selected as default and then SQL queries are running against that?
    Thanks for any help/insight, as always,
    Jason

    Jason
    Using the database option in the URL is the right way to do it, the URL I use is:
    jdbc:sqlserver://myserver:1433;database=ODIM;selectMethod=cursor
    Craig

  • Logical schema can have one or more physical schemas

    Hi Experts,
    Can a logical schema in ODI will have one or more physical schema, if possible in what case do we have it.
    In the same way can one physical schema have multiple logical schema if possible in what case.
    Please give me your brief explanation on it.
    Thx,
    Sahadeva.

    Hi Sahadeva,
    1) Yes. You can map it through different contexts. The goal is to use the same logical schema to point to a different physical schemas for each environment (Dev, Test, PROD, ...).
    So let's say you have a have the schema SH_DEV on database 1 for Dev and schema SH on database 2 for Dev :
    - Create one SH Logical schema
    - Create two data server : one for database1 and one for database2
    - Create the physical schemas SH_DEV under dataserver1 and SH under dataserver2
    - Create two context : Dev and Prod
    - Map logical SH to dataserver1.SH_DEV through context Dev
    - Map logical SH to dataserver2.SH through context Prod
    2) Technically yes, through different contexts. Though I don't see any use case for this.
    Hope it helps.
    Regards,
    JeromeFr

  • Grants for physical schema and data-servers

    Hi,
    I'd like to know
    What are the Grants needed for the Owners of each physical schema?
    For example: Grants DDL (drop table n) and DML (select / update / delete / insert).
    Grants needed for the users' connection data-servers?
    Bovolini

    It depends on what technology you plan to use.
    If you plan to use Oracle - Is the data server connection user different from the owner of the physical schemas ?
    In addition to the connect, resource to each of these users, you will also need to give data server connection user privileges on the objects of the owner of the physical schemas.

  • Physical schema conflict exception

    Hi,
    I try to join 2 Customer_ID from different technologies - FILE (file is located on C:\) and ORACLE. Both field are numeric (ODI definition -numeric, Oracle - number), but theI have got message
    Physical schema conflict exception. Should I something to do with KMs or what?
    Thanks a lot
    Gejza

    Yes. it is at staging area and it appears, when I click in property inspector the button "check the expression in DBMS" But perhaps it is normally, because one source is a flat file? I have imported 2 LKMs file to Oracle (SQLLoader) and Fileto SQL..
    Edited by: 841404 on 11.3.2011 2:12

Maybe you are looking for

  • My proxy service (messaging) with sftp protocol is not picking up the file

    Hi , I have proxy service , which polls for a file in a regular interval , this has stopped working suddenly . The bad part is i am not able to find any log related to the service in either the domain logs or the server logs. I tried to disable the s

  • When i try to download itunes at the end of the sync it says its downloaded but its not on my computer why?

    when i try to download itunes it loads up the same but when its finshed installing it dont go on my computer i carnt find it anywere ive checked on my programs i dont download on my computer can anyone help?

  • Input level too low

    I'm trying to record audio from my guitar via an M-Audio Fasttrack guitar / mic recording interface. All levels are at 100%, but the recording is far too silent. (Instead, the metronome is recorded-) Any idea what I could do? Thanks a lot!

  • Urgent Flash Remoting Help

    Can anybody tell me how can I call my .net dll in flash using flash remoting. http://livedocs.macromedia.com/flashremoting/mx/Using_Flash_Remoting_MX/usingFRNET6.htm Here is example by macromedia liveDocs but whenever I used this code and run my flas

  • Optical drive won't burn: Macbook Pro after Mavericks update

    I have just updated my OSX to Mavericks on my Macbook Pro, late I know but I was trying to avoid any software conflicts.  My Optical Drive can't burn either CD or DVD.  It plays them and recognises them but won't burn. Error message: The disc can't b