General Information
Library Note
Morgan's Library Page Header
Which has the higher priority in your organization: Deploying a new database or securing the ones you already have?
Looking for a website, and resources, dedicated solely to securing Oracle databases? Check out DBSecWorx .
Purpose
Utilities for modifying URLs
AUTHID
CURRENT_USER
Dependencies
DBMS_ASSERT
FTPURITYPE
URITYPE
DBMS_CLOBUTIL
HTTPURITYPE
UTL_HTTP
DBMS_XMLGEN
PLITBLM
UTL_URL
DBMS_XMLSCHEMA
URIFACELEM
XDBURITYPE
DBURITYPE
URIFACLIST
Documented
No
First Available
Not Known
Pragmas
PRAGMA SUPPLEMENTAL_LOG_DATA(default, NONE);
Security Model
Owned by SYS with EXECUTE granted to PUBLIC
Source
{ORACLE_HOME}/rdbms/admin/dbmsuri.sql
Subprograms
ESCAPEURI
Returns the correct uritype
urifactory.escapeURI(unescapedurl IN VARCHAR2) RETURN VARCHAR2;
SELECT urifactory.escapeURI ('http://www.mlib.com/a url with space.html')
FROM dual;
URIFACTORY.ESCAPEURI('HTTP://WWW.MLIB.COM/AURLWITHSPACE.HTML')
---------------------------------------------------------------
http://www.mlib.com/a%20url%20with%20space.html
GETURI
Returns the correct uritype
urifactory.getURI(url IN VARCHAR2) RETURN UriType;
SELECT urifactory.getURI ('https://www.dbsecworx.com')
FROM dual;
URIFACTORY.GETURI('HTTPS://WWW.DBSECWORX.COM')(URL)
----------------------------------------------------
XDBURITYPE('https://www.dbsecworx.com', NULL)
REGISTERURLHANDLER
Registers a url handler
urifactory.registerURLHandler(
prefix IN VARCHAR2,
schemaname IN VARCHAR2,
typename IN VARCHAR2,
ignorePrefixCase IN BOOLEAN := TRUE,
stripprefix IN BOOLEAN := TRUE);
TBD
UNESCAPEURI
Returns the correct uritype
urifactory.unescapeURI(escapedurl IN VARCHAR2) RETURN VARCHAR2;
SELECT urifactory.unescapeURI ('https://%20www.dbsecworx.com')
FROM dual;
URIFACTORY.UNESCAPEURI('HTTPS://%20WWW.DBSECWORX.COM')
-------------------------------------------------------
https:// www.dbsecworx.com
UNREGISTERURLHANDLER
Unregisters a URL handler
urifactory.unregisterURLHandler(prefix IN VARCHAR2);
TBD