DBMS_PIPE

Published on by LakshmiSaahul,Dhana Royal

The DBMS_PIPE package provides a non-secure mechanism for inter-session messaging. It is considered non-secure because messages can be lost from the pipe if the instance crashes or is shutdown before they are processed. Advanced Queues are arguably a better mechanism when secure messaging and greater flexibility are required.

There are two types of pipes:

  • Implicit Pipes - These are created automatically when a message is sent with an unknown pipename using the SEND_MESSAGEfunction. Implicit pipes disappear when they are empty.
  • Explicit Pipes - These are created using the CREATE_PIPE function. Explicitly created pipes must be removed using theREMOVE_PIPE function.

There are two levels of security for pipes:

  • Public Pipes - These are accessible by any user with EXECUTE permission on the DBMS_PIPE package. Implicit pipes are always public, but they can also be created explicitly by calling the CREATE_PIPE function with the private parameter set to FALSE.
  • Private Pipes - These are only accessible by sessions with the same ownerid as the pipe creator, stored programs owned by the pipe creator or by users connected as SYSDBA
Advertising
To be informed of the latest articles, subscribe:
Comment on this post