Re: Security and the ODBC
Posted in 1997
In article <3417B72A.7EEB3094@ana.med.uni-muenchen.de>, richard.spitz@ana.med.uni-muenchen.de wrote: > > Irwin Goldstein wrote: > > I have frequently encountered the problem where a client wants to grant > > users access to an application database through MS-Access (or other Windows > > based query/report tool). Of course the way to do this is with ODBC. > > However, the users normal Unix log in which they use to access the > > application allows complete read/write access to the database. Normally > > this is OK because the application handles security and proper maintenance > > of referential integrity, etc. However, this level of access within > > MS-Access is quite dangerous since the user could alter and even delete > > data at will without regard to the controls normally enforced by the > > application. > > > > The best solution I have found to this dilemna to date is to use the > > OpenLink Multi-Tier ODBC driver instead of Informix-CLI or other "single > > tier" driver. > > Is this really a solution? We have several UNIX servers running > Online/STAR 5.07. We cannot disable I-STAR since we need it for > distributed database access with Informix frontend tools (like > 4GL, ESQL/C). Any user could install any single-tier ODBC driver like > CLI or Intersolv on his own PC and connect to the server with his > UNIX login and password. This has been causing me considerable head- > ache, but I haven't found a good solution for it. > > Installing OPENLINK or similar multi-tier ODBC solutions would only > help if I could throw out I-STAR altogether. But I have to keep it > since I need it for Informix's own networking. Replacing that with > ODBC or similar solutions would require rewriting dozens of programs. > > Has anybody found a solution for this? The only solution to this problem is to give only read access to the users and give the maintenance application it's own userid, e.g. "program". The application begins by connecting to the database with this userid and password (which users are unaware of). Other odbc connections, whether direct or via Openlink, would be with normal userids and only read access. If you think about it, you have all your business rules in the application but these rules should be in the realm of the database because it is being opened to access from other clients. Either you move those rules into the database via constraints, triggers, stored procedures etc, which is very impractical, or you effectively move your application into the database realm by giving it a secret userid and password. ---------------------------------------------------------------------- John H. Frantz Power-4gl: Extending Informix-4gl frantz@centrum.is http://www.rl.is/~john/pow4gl.html -------------------==== Posted via Deja News ====----------------------- http://www.dejanews.com/ Search, Read, Post to Usenet