Category: SQL*Net, Protocol Server

June 15

If you have seen Anjo’s Kolk’s cool “Oracle Interface for Google Visualization API (external data source interface)” blog post, which partly based on the Oracle XMLDB Protocol Adapter functionality, then be aware that direct access off this functionality via the internet is at your own risk. Of course this also counts for the OTN article given here: Creating Oracle Database-backed iGoogle Gadgets.

To make life a little bit easier, Google also created the Google Secure Data Connector (Google SDC) to make your connection with the database more secure. If applicable you should add this extra security feature, at least if you have the means to do this. You need, among others, a Google App Premier account and are the owner for the domain were the database resides.

If you enable HTTP access via, for example, the XDB Protocol Server via the following DBMS_XDB call:

SQL> call dbms_xdb.setHttpPort(8080);

this enables, besides the HTTP functionality, also the WebDAV protocol server functionality. To get this functionality secured on the internet, you could use Apache as a reverse proxy solution that rewrites on the fly all URL’s that should be protected. As the XMLDB Dev. team go’s, this is the only acceptable secure solution to provide, on the internet, this protocol server functionality based on Oracle XMLDB.

The following is a snippet from a Apache httpd.conf configuration file that could be used for this (ssl is enabled in this example, based on using OpenSSL):

December 22

This is hopefully one of the first posts about how to secure, setup, a proper APEX environment seen from a DBA perspective. Because this website is mainly about XMLDB, it is also about the XDB protocol server and currently not about using Apache or the (apparently another way of doing things) new upcoming APEX Listener.

The behavior of the XDB Protocol Server is controlled by its xdbconfig.xml file. This xdbconfig.xml file is restricted to an XML Schema called xdbconfig.xsd. Both can be found in the XMLDB folders. The xdbconfig.xml can be found in the root folder. The xdbconfig.xsd file is part of Oracle XML Schemata and can be found in the /sys/schemas/PUBLIC/xmlns.oracle.com/xdb/ folder.

The xdbconfig.xml and xdbconfig.xsd files are, as all files and folders in XMLDB, secured/controlled via Access Control Lists, ACL files. The xdbconfig.xml file is controlled via the /sys/acls/all_owner_acl.xml ACL file. The xdbconfig.xsd file is controlled via the /sys/acls/bootstrap_acl.xml ACL file.

The security ACL settings for those files (resources as files and folders are called in XMLDB):

all_owner_acl.xml:

December 4

My presentation of 2nd of December during the UKOUG Conference… So what was in it? Mainly appetizers of how some useful things work and a little bit high level concepts. I demonstrated, I hope, new ways, with (some) foundations coming from XML DB functionality. How to interface with the outside world, for example, by directly saving and selecting from multiple XML files, on disk, from your database or getting or pushing data from/to the internet, like RSS data, getting data for your Google Maps API or easily setting up a SOAP web service.

So among others:

  • How to enable, disable the Protocol Server and to see its Status
  • Overview of the Protocol Server configuration file xdbconfig.xml, Its contents and meaning
  • Memory structures that effect the shared server and therefore also the Protocol Server
  • Protocol HTTP API’s like the PL/SQL Gateway, DBURI (oradb) and Native Database Web Services (orawsv)
  • An overview how the Native Database Web Services works + DEMO
  • An overview how the DBURI servlet works + DEMO
  • An overview of URITypes of  HTTPUriType and XDBUriType’s + DEMO’s
  • The possibilties of combining BFILENAME and XML, like selecting and save files directly from disk
  • An overview of Repository Event’s, how it works demonstrated via a simple DEMO