1. Get rid of all advertisements and get unlimited access to documents by upgrading to Premium Membership. Upgrade to Premium Now and also get a Premium Badge!

prepare Oracle database for three-tier application

Discussion in 'Server Administration and Options' started by Al_Alter, Nov 15, 2010.

  1. Al_Alter

    Al_Alter Active Member

    Messages:
    12
    Likes Received:
    0
    Trophy Points:
    80
    I am now on the duty to prepare Oracle database for three-tier application (WEB DataSnap app) in which medium and client levels are to be made by Embarcadero tools. The App takes responsibility for Authentication users and getting their logins and passwords. It connects to the database.
    The task is to ensure by means of Oracle that connection could be accepted if is initiated by that and only by that App. Where to go in the world of Oracle and what to do to have that task accomplished?
    Excuse me for ambiguity but I am new to Oracle and cannot put it in a more clear way.
    With best regards, Alex.
     
  2. zargon

    zargon Community Moderator Forum Guru

    Messages:
    2,347
    Likes Received:
    348
    Trophy Points:
    1,430
    Location:
    Aurora, CO
    Unfortunately you will need to do just that -- put this in a 'more clear' way. Not knowing what these Embarcadero tools are, much less how they function and what architecture they use it's difficult to provide an answer. Single-sign-on, Oracle app server authentication methods ... the list is long.

    Please provide more information as any further attempts to answer this will be guesswork.
     
  3. Al_Alter

    Al_Alter Active Member

    Messages:
    12
    Likes Received:
    0
    Trophy Points:
    80
    Thank you for replay.
    The application is made by Delphi XE – one of the Embarcadero’s RAD Studio XE tools. It is a DataSnap WebBroker application. Type of ISAPI dll project. The application uses TSQLConnection component of
    dbExpress library. Property “driver” of this component is set to “oracle”. Inside of which there are properties
    “libraryname = dbxora.dll” and “vendorlib = oci.dll”.
    There are no problems with connection. The issue is security.
    I’ve already learned that I should create a trigger firing on connection attempt and check application credentials. But what credentials and how to get them inside of trigger I don’t know.
     
  4. zargon

    zargon Community Moderator Forum Guru

    Messages:
    2,347
    Likes Received:
    348
    Trophy Points:
    1,430
    Location:
    Aurora, CO
    Using the SYS_CONTEXT() function can assist you with that task; look at the following blog post to see this function in 'action':

    http://oratips-ddf.blogspot.com/2006/05/audit-this.html

    The audit connection triggers are the code you need to understand, and they are located at the top of the post. Since you are configuring an app server of some sort the IP address should be fixed thus a call to sys_context('USERENV','IP_ADDRESS') should return the value for that server if the connection is to be considered valid. Any other IP addresses should be listed as suspect and the connections refused.
     
  5. Al_Alter

    Al_Alter Active Member

    Messages:
    12
    Likes Received:
    0
    Trophy Points:
    80
    Thank you for detailed answer