Oracle OWA_SEC
Version 26ai

General Information
Library Note Morgan's Library Page Header
The best Oracle News for FY2026

Oracle Database 26ai is now availble. If you haven't you downloaded already: Why?
Purpose Provides an interface for custom authentication for the Oracle Web Application server
AUTHID DEFINER
Constants
Name Data Type Value
CUSTOM INTEGER 4
GLOBAL INTEGER 2
NO_CHECK INTEGER 1
PER_PACKAGE INTEGER 3
Dependencies
OWA OWA_CX OWA_UTIL
OWA_CUSTOM    
Documented Yes
First Available 8.1.7
Security Model Owned by SYS with EXECUTE granted to PUBLIC
Source {ORACLE_HOME}/rdbms/admin/pubsec.sql
{ORACLE_HOME}/rdbms/admin/privtext.sql
Subprograms
 
GET_CLIENT_HOSTNAME
Obtains the Web client's Host Name owa_sec.get_client_hostname RETURN VARCHAR2;
Calls owa.hostname
 
GET_CLIENT_IP
Obtains the Web client's IP Address owa_sec.get_client_ip RETURN owa_util.ip_address;
Calls owa.ip_address

If address is 192.168.1.118 then
ip_address(1) = 192
ip_address(2) = 169
ip_address(3) =   1
ip_address(4) = 118

set serveroutput on

DECLARE
 iparray owa_util.ip_address;
BEGIN
  iparray := owa_sec.get_client_ip;
  dbms_output.put_line(iparray(1));
  dbms_output.put_line(iparray(2));
  dbms_output.put_line(iparray(3));
  dbms_output.put_line(iparray(4));
END;
/
 
GET_PASSWORD
Obtains the Web client's password owa_sec.get_password RETURN VARCHAR2;
Calls owa.password
 
GET_USER_ID
Obtain the Web client's authentication user identifier owa_sec.get_user_id RETURN owa.user_id;
Calls owa_user_id
 
SET_AUTHORIZATION
Specifies the PL/SQL agent's authorization scheme owa_sec.set_authorization(scheme IN INTEGER);
See OWA_CUSTOM package Initialization Section (link below)
 
SET_PROTECTION_REALM
Specifies the dynamic page protection realm owa_sec.set_protection_realm(realm IN VARCHAR2);
-- source code from privsec.sql formatted for clarity

/*******************************************************************/
-- Procedure to specify the dynamic page's protection realm */
/*******************************************************************/
PROCEDURE set_protection_realm(realm IN VARCHAR2) IS
 l_realm varchar2(32767);
BEGIN
  -- validate argument
  l_realm := owa_util.validate_arg(realm);
  owa.protection_realm := l_realm;
END;
/

Related Topics
Built-in Functions
Built-in Packages
OWA
OWA_COOKIE
OWA_CUSTOM
OWA_CX
OWA_IMAGE
OWA_MATCH
OWA_OPT_LOCK
OWA_PATTERN
OWA_TEXT
OWA_UTIL
What's New In 21c
What's New In 26ai

Morgan's Library Page Footer
This site is maintained by Daniel Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2026 Daniel A. Morgan All Rights Reserved