<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>Oracle IRM, the official blog</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/" />
   <link rel="self" type="application/atom+xml" href="http://blogs.oracle.com/irm/xml/rss.xml" />
   <id>tag:blogs.oracle.com,2009:/irm//122</id>
   <updated>2009-06-22T14:58:40Z</updated>
   <subtitle>Insights into information rights management from leading expert Simon Thorpe</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type Enterprise 1.52-en-voltron-r47459-20070213</generator>

<entry>
   <title>Setting up an Oracle IRM server in a highly available environment</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/06/setting_up_an_oracle_irm_serve.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.12916</id>
   
   <published>2009-06-17T21:15:19Z</published>
   <updated>2009-06-22T14:58:40Z</updated>
   
   <summary>This article is way, way over due. I&apos;ve had a few requests to describe how the Oracle IRM server can be setup in a high availability environment as described in my blog article here. It is possible to have a...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Functionality" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="failover" label="fail over" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="failover" label="failover" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="highavailability" label="high availability" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>This article is way, way over due. I've had a few requests to describe how the Oracle IRM server can be setup in a high availability environment as described in my blog article <a href="http://blogs.oracle.com/irm/2008/07/high_availability_for_oracle_i.html" target="_blank">here</a>. It is possible to have a setup where more than one IRM server is in production and if one fails requests to the service are served from another IRM server, like the diagram below.<br />
<center><img alt="HighAvailability.gif" src="http://blogs.oracle.com/irm/images/HighAvailability.gif" width="600" height="565" /></center></p>

<p>Note that running the Oracle IRM server in fail over mode in this manner is supported but load balancing is not. The IRM server has not been designed nor tested in a load balanced mode simply because the performance of the system is so good you don't need to load balance systems together. Fail over to protect against network and operating system failure is however key for any highly available service.</p>

<p>I must also state the very obvious. Rehearse this setup on test systems <strong>BEFORE</strong> doing anything with a live production system and when you do install and configure the live server you <strong>MUST</strong> backup your IRM database.</p>

<p>This article requires you have the following;<ul><li>A fully working Oracle IRM server<br />
<li>Access to the Oracle IRM database server and schema<br />
<li>A second server with network access to the database server and a valid database ODBC client installed<br />
<li>A network device to monitor and direct the traffic between the two servers<br />
</ul></p>

<p>If these are in place you can now install the same version of the IRM server on the second server.</p>

<h2>Setting up a second or more Oracle IRM servers for failover</h2>
The Oracle IRM server installation process involves the following main activities. 
<ul>
<li>Deploy binaries to local file system, by default in;<ul><li><em>C:\Program Files\Oracle\Information Rights Management</em></ul><li>Write some registry keys
<li>Write out a configuration file called <strong>server.properties</strong> in the <em>properties</em> folder
<li>Build a schema in the database the installer has been pointed at
<li>Create a superuser account
</ul>
In a highly available fail over environment you configure the server to talk to a single database instance which represents a cluster of nodes. I have however seen customers setup two IRM servers, each with their own database and have a mechanism like log shipping ensure that the standby server database is up to date for when a fail over happens. However my own experiences with log shipping and other methods find that the effort, time and risks involved are such that you might as well configure both database servers in a clustered mode. So in this article i'm going to prepare my IRM server against a common clustered instance of the database.

<p>Before we get into the installation, it is worth understanding the server startup procedure.<ul><li>Read in the <strong>server.properties</strong> in the <em>properties</em> folder.<br />
<li>Connect to the database using the connection string <strong>sealedmedia.server.persistence.database.odbc.connectionstring.encrypted</strong> from the file. Note this is obviously encrypted because it contains the username and password to the database.<br />
<li>Load the plugins as specified in the setting <strong>sealedmedia.server.plugins</strong> in the properties file.<br />
<li>Read the configuration for the server in from the table [prefix]config where [prefix] is the string from the setting <strong>sealedmedia.server.persistence.namespace</strong> in the file.<br />
<li>Open and start logging to both the audit and log files as specified by the file stored settings;<ul><li><strong>sealedmedia.server.logging.destination</strong><br />
<li><strong>sealedmedia.server.logging.destination</strong></ul><br />
<li>Open and start logging to the web log file determined by the <em>database</em> stored config setting <strong>sealedmedia.server.web.logging.path</strong><br />
<li>Start listening on the ports and IP addresses as specified in the sealedmedia.server.internal.port and sealedmedia.server.internal.bind as well as the .external. equivalents<br />
</ul></p>

<h3>Forcing configuration settings to the local IRM server installation</h3>
The above highlights some configuration information comes from the local properties file and some is gained after the server connects to the database. This presents a problem because there are some settings that reside in the database that might be specific to the local installation, such as logging directories. No worries, because there is a mechanism to have the server get settings from the local properties file and ignore the database. Open the server.properties and look for the line;
<br><br><font face="monospace">
sealedmedia.server.persistence.localsettings=
</font>
<br><br>
This lists all the other properties which should be read from the local file and not from the database, by default these are;
<br><br>
<font face="monospace">
sealedmedia.server.logging.destination<br>
sealedmedia.server.audit.destination<br>
sealedmedia.server.plugins<br>
sealedmedia.server.component.config.encryption.activated<br>
sealedmedia.server.nt.servicename<br>
sealedmedia.server.external.port<br>
sealedmedia.server.external.bind<br>
sealedmedia.server.internal.port<br>
sealedmedia.server.internal.bind<br>
sealedmedia.server.plugins.port<br>
sealedmedia.server.plugins.bind<br>
</font>
<br>
There is a slight oddity here in that one more log setting resides in the database which should ideally be a localised one. If you install both IRM servers in exactly the same location, it doesn't matter, but if they change you'll need to add this setting to the <strong>sealedmedia.server.persistence.localsettings</strong> line;
<br><br>
<font face="Courier New">
sealedmedia.server.persistence.localsettings=sealedmedia.server.logging.destination,
sealedmedia.server.audit.destination,sealedmedia.server.plugins,sealedmedia.server.
component.config.encryption.activated,sealedmedia.server.nt.servicename,sealedmedia.
server.external.port,sealedmedia.server.external.bind,sealedmedia.server.internal.port,
sealedmedia.server.internal.bind,sealedmedia.server.plugins.port,sealedmedia.server.
plugins.bind,<strong>sealedmedia.server.web.logging.path</strong>
</font>
<br><br>
Then create a new line like the one below in the properties file. Note that in the properties file you need to escape all the backslashes so that the line below would have <strong>C:\\Program Files\\Oracle\\Infor...</strong> and so on.
<br><br>
<font face="monospace">
sealedmedia.web.logging.path=C:\Program Files\Oracle\Information Rights Management\IRMServer\bin\..\log
</font>
<br><br>
Another aspect we need to consider is that of caching. It is advisable that all the caches on all the servers are disabled. The modern servers typically used to deploy IRM mean that switching off the caches doesn't really impact performance and only increases slightly the emphasis on the importance of reliable and fast database connection. Switching off the caching means that as you fail from one server to the next you are assured that serviced requests hit data in the database and that stale information is not delivered from the cache or written lazily to the database. Because we want to disable this on both servers we don't need to localize the settings, we can make the change to the values in the database. It doesn't matter when you do it, pre or post install, but here's how to disable all the caching.
<h3>Disabling the Oracle IRM server cache</h3>
Changes to the settings that reside in the database is done using the <strong>smconfig.exe</strong> tool that resides in the <em>IRMServer\bin</em> directory. There are three environment variables that are worth setting so you can just run smconfig without passing in the connection details each time. So start a command prompt on your existing IRM server installation and run the following, obviously changing in your own URL, ACCOUNT and PASSWORD;
<br><br>
<font face="monospace">
T:\Oracle\IRMServer\bin>set ORACLE_IRM_SERVER_URL=seal://localhost:<strong>2001</strong>
T:\Oracle\IRMServer\bin>set ORACLE_IRM_SERVER_ACCOUNT=superuser
T:\Oracle\IRMServer\bin>set ORACLE_IRM_SERVER_PASSWORD=p455word
T:\Oracle\IRMServer\bin>smconfig -server ping
</font>
<br><br>
<strong>Important</strong> to note here is that this tool uses a port you may not be familiar with, 2001. This is the API port and is what the configuration tools for IRM use. By default this is enabled but you may have switched it off. You can re-enable this by connecting to the server using the Management Console as the superuser and under settings there is an <em>API traffic</em> applet where you can set the port and what addresses the server will listen on. If this is all working then the above ping command should return;
<br><br>
<font face="monospace">
Oracle IRM Server configuration tool.
Copyright (c) 1996, 2008, Oracle. All rights reserved.

<p>Connecting to [IRM Server]</p>

<p>seal://localhost:2001 is alive.<br />
</font><br />
Excellent, now lets change the caching settings;<br />
<font face="monospace"><br />
smconfig -setconfig sealedmedia.server.component.account.cache -value no<br />
smconfig -setconfig sealedmedia.server.component.security.cache -value no<br />
smconfig -setconfig sealedmedia.server.component.publisher.cache -value no<br />
smconfig -setconfig sealedmedia.server.component.group.cache -value no<br />
</font><br />
You can check all the settings in the config by running;<br />
<font face="monospace"><br />
smconfig -show config<br />
</font><br />
<h3>Installing the Oracle IRM server</h3>Finally time to install the second server, start the installer hit next and ensure you select <strong>custom</strong> for the setup type.<br />
<center><img alt="Oracle IRM custom setup" src="http://blogs.oracle.com/irm/images/failoversetup01.gif" width="504" height="379" /></center><br />
<br>Then choose your installation directory. Remember that if this is different from your first server you'll need to ensure your web logging root is configured for this local instance.<br />
<center><img alt="Choosing Oracle IRM server components" src="http://blogs.oracle.com/irm/images/failoversetup02.gif" width="504" height="379" /></center><br />
<br>Setup the ODBC connection to the clustered database using the <strong>same</strong> account credentials to connect.<br />
<center><img alt="Setting up Oracle IRM ODBC connection" src="http://blogs.oracle.com/irm/images/failoversetup03.gif" width="504" height="379" /></center><br />
<br>This is now the key area of the installation. The second field <strong>MUST</strong> be changed to be different from the first server otherwise you are going to drop and recreate all the tables for the production system!<br />
<center><img alt="failoversetup05.gif" src="http://blogs.oracle.com/irm/images/failoversetup05.gif" width="504" height="379" /></center><br />
<br>The server name might want to reflect the failover server and it doesn't matter what the superusers details are because we will delete this data after install.<br />
<center><img alt="failoversetup06.gif" src="http://blogs.oracle.com/irm/images/failoversetup06.gif" width="504" height="379" /></center><br />
<br>Network settings are important, make sure these reflect the public hostname you have for the service and that it is listening on the correct local address. This address will be what the fail over network device will redirect traffic to.<br />
<center><img alt="failoversetup07.gif" src="http://blogs.oracle.com/irm/images/failoversetup07.gif" width="504" height="379" /><br />
<img alt="failoversetup08.gif" src="http://blogs.oracle.com/irm/images/failoversetup08.gif" width="504" height="379" /><br />
<img alt="failoversetup09.gif" src="http://blogs.oracle.com/irm/images/failoversetup09.gif" width="504" height="379" /></center><br />
<br>It is typical to have the service start as the local system account.<br />
<center><img alt="failoversetup10.gif" src="http://blogs.oracle.com/irm/images/failoversetup10.gif" width="504" height="379" /></center><br />
<br>Logging again is configured locally, you might want to consider having the server write to a shared drive where both servers store logs in a common area. Note if you do this, you may need to change the previous service account details so that the server runs under a user that has permissions to write to the shared folder.<br />
<center><img alt="failoversetup11.gif" src="http://blogs.oracle.com/irm/images/failoversetup11.gif" width="504" height="379" /><br />
<img alt="failoversetup12.gif" src="http://blogs.oracle.com/irm/images/failoversetup12.gif" width="504" height="379" /></center><br />
<br>Finally you are ready to go. Before hitting install make sure you've done a backup of the database.<br />
<center><img alt="failoversetup13.gif" src="http://blogs.oracle.com/irm/images/failoversetup13.gif" width="504" height="379" /></center></p>

<p>Nearly there! Now lets configure the environment so that the server points to the right data and not the fresh schema it has just created.<ul><li>First of all stop the Oracle IRM server service<br />
<li>Open the <strong>server.properties</strong> and change the setting <strong>sealedmedia.server.persistence.namespace</strong> to reflect the correct namespace which by default is <strong>irm</strong><br />
<li>If you need to, edit the <strong>sealedmedia.server.persistence.localsettings</strong> and add <strong>sealedmedia.server.web.logging.path</strong> details as explained previously in this article.<br />
</ul>Now you can start the second IRM server to test it can connect. Use the Management Console on the local machine to connect to the local instance and just browse a few users to check. You can leave the IRM server running and connected as long as <strong>no</strong> traffic is directed to it. There is no support for a system which has two IRM servers talking to the database at the same time and could potentially result in corrupted data. The network device needs to be configured to monitor the primary server and when this isn't available, direct the requests onto the secondary. Testing from outside the local network you can determine which server is responding to the requests by using the following URL in any web browser.<br />
<font face="monospace"><br />
http://irm.domain.com:80/ping<br />
</font><br />
This will return;<br />
<font face="monospace"><br />
[IRM Server,SECONDARY_SERVER,5.4 release 5 build 10,19 Jun 2009 19:24:11 UTC]<br />
</font><br />
Where SECONDARY_SERVER is the netbios hostname of the Windows server that the IRM server is running on. This can be a useful URL for any monitoring tool to determine what service is currently active.</p>

<p>As a post clean up activity you may now wish to delete the tables that were created, there are also a few stored procedures, functions and packages depending on the database type you are using. You can drop the ones with any prefix which matches your secondary installation.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Customizing the Oracle IRM status pages</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/06/customizing_the_oracle_irm_sta.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.12872</id>
   
   <published>2009-06-15T03:57:01Z</published>
   <updated>2009-06-15T16:44:06Z</updated>
   
   <summary>Ok, so very busy end of the year (Oracle Q4 just ended) and i&apos;m really sorry for a lack of activity on the blog. There is some very interesting news on the way however and things are going to liven...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Functionality" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>Ok, so very busy end of the year (Oracle Q4 just ended) and i'm really sorry for a lack of activity on the blog. There is some very interesting news on the way however and things are going to liven up significantly... watch this space...</p>

<p>In the meantime a question came through on the grapevine regarding the status pages in Oracle IRM. These are HTML web pages that are displayed to an end user when they don't have access to sealed content or they are for some other reason unloading a sealed document. Our mantra that security is nothing without an adequate user experience and a manageable administrative model is reinforced by these very flexible status pages. So often a security product will deny you access to a file, directory or other resource and all you get is an "Access denied" error with an OK button. Oracle IRM however sends the client to a web page of your choice to display a more informative error message, like the example below.</p>

<p><img border="0" alt="No license to content status page" src="http://blogs.oracle.com/irm/images/statuspage_nolic.gif" width="600" height="378" /></p>

<p>Out of the box Oracle IRM gives you a set of standard pages which look like the above. These can be customized at three levels. Actually before I go into the customizations its worth knowing of a simple test page that allows you to look at all the possible status codes and pass in some data to see how they render. You can look at our evaluation server test page <a href="http://smweb.evaluation.sealedmedia.com/status/test.asp?context=L2%20Sales%20(Oracle)">here</a>.</p>

<h2>Basic changes to status pages</h2>
<table border="0" cellspacing="0" cellpadding="0"><tr><td valign="top">Logging into the Oracle IRM Management website and clicking on "Settings" presents you with the dialog below. The first step here is that you can change the organization name that is displayed on the status pages. Not exactly the most uber of customizations, but you have to start somewhere right? You can also change the logo used on the pages to your own, simply replace the <strong>org_logo.gif</strong> in the folder <em>\smweb\custom</em>. More detail on this can be found in the <a href="http://blogs.oracle.com/irm/files/CoreCustomization.pdf">Oracle IRM core customization guide</a>.</td><td valign="top"><img alt="Oracle IRM Management website settings " src="http://blogs.oracle.com/irm/images/managementwebsite_settings.gif" width="407" height="299" /></td></tr></table>
<h2>Modifying the distributed web pages</h2>
Further reading of the document above details more files you can customize.
<ul>
<li><strong>support_contact.htm</strong> This file, by default, contains a single line of HTML which is a HREF that contains two macros that are place holders for the system email address as per the settings dialog above. This line is then displayed on certain status pages. You can modify this line as you wish, just be careful to ensure whatever HTML you drop in plays safe with the rest of the page. You can see an example of where this would get used <a href="http://smweb.evaluation.sealedmedia.com/status/default.asp?status=licinuse&pub=L2%20Sales%20(Oracle)&srvurl=markc:81&user=fred.smith@abc.com&item=Example%20report%20and%20Investor%20Statement&clntver=3.2.5&mime=application/vnd.sealed.eml.doc&lang=EN&cat=Default&cs=Default&vrsn=Default&src=1" target="_blank">here</a>.
<li><strong>footer.htm</strong> and <strong>header.asp</strong> allow you to again modify the HTML that is displayed top and bottom of the status page.
<li><strong>default.css</strong> means you can really go crazy with these status pages. There is a good set of style declarations already in this file so you've got a nice place to start from.
<li>Finally there are a set of folders for English, German, Spanish, French and Italian versions of the website homepage. Sometimes the Oracle IRM Desktop will instead of sending you to a status page will redirect you to the basic homepage of the website and depending on the language version of the IRM Desktop you'll see the relavent file from these folders. It is often a good idea to reinforce your corporate security policies on these home pages and maybe link to other resources that an end user would find useful. <strong>Remember making the end user experience as smooth as possible is crucial to your security strategy</strong>.
</ul>
<h2>Creating your own status pages from scratch</h2>
The Oracle IRM Management website has a bunch of logic which you could go changing the ASP pages if you wanted, but you'd be out of Oracle support. Sometimes customers want to do something very different and instead of using these provided files they want to write their own from scratch. This is entirely possible and to venture down this path requires knowledge of the following concepts.<ul><li><strong>default URL</strong>. Every file that is sealed has embeded in it something called the <em>default URL</em>. This is the address which the Oracle IRM Desktop will redirect the end user to when they are unable to open a sealed document. The URL typically looks like this;<br>
<strong>http://irmweb.domain.com/status/default.asp?%%allparams%%&%%usefordefault%%</strong>
<br><br>
There are two very important macro's that sit on the URL. These macros are replaced by data during runtime when the client decides to send the user to the website.
<ul>
<li><strong>%%usefordefault%%</strong> means that the IRM Desktop will always send the user to the website. There are also some offline HTML pages that are displayed in place of the online website when the user is not connected to the internet. If you were to remove this macro, even when the user is online they would be shown the offline pages, something you'd not want and in all honestly I think even removing this line may have no effect! Much more interesting is the other macro...
<li><strong>%%allparams%%</strong> is replaced by a whole set of data which pertains to the user and activity at time of redirection. This data is placed directly onto the query string and is therefore available to the web page that the URL refers to. Here is a broken down example of what the URL would look like;

<p><code><br />
http://irmweb.domain.com/status/default.asp?<br />
cntxt=nolic<br />
&amp;status=nolic<br />
&amp;clntver=5.5.8<br />
&amp;user=john.smith@domain.com<br />
&amp;lang=EN<br />
&amp;cat=Default<br />
&amp;cs=default<br />
&amp;item=2009_05_16%2001:10:36%20Finance%20report.sxls<br />
&amp;mime=application/vnd.sealed.xls<br />
&amp;srvurl=seal://irm.domain.com:80<br />
&amp;pub=Top%20Secret%20Financial%20Data<br />
&amp;vrsn=Default<br />
&amp;brand=0<br />
&amp;prod=Office%20Unsealer&src=2<br />
&amp;sealedby=fred.bloggs@domain.com<br />
&amp;cntschema=5.0.0.0.release& <br />
</code><br />
Lots and lots of very useful information. <strong>status</strong> contains the information of what actually happened such as "No License available" or "Not Logged In". The list of these is on the <a href="http://smweb.evaluation.sealedmedia.com/status/test.asp?context=L2%20Sales%20(Oracle)">test page</a>. The <strong>user</strong> field contains who the logged in user was that is being redirected, <strong>sealedby</strong> tells you who sealed the document that the user is accessing.<br />
</ul>Now imagine taking this information from the querystring into your ASP/PHP/JSP page and then  pass some of the data to the Oracle IRM server via the API and you can do some very funky things. A good example that I helped a customer write was for handling users that accessed multiple computers. The logic went something like...<ol><li>User attempts to open a sealed document on a machine and has hit their device limit. The device limit stops a user opening the same document to a certain number of machines. They are redirected to the <em>default URL</em> and the status that is passed is <strong>licinuse</strong> which means all available rights are in use.<br />
<li>A dynamic web page then takes this information, including the user, and queries the IRM server to see how many devices they have access to and what groups the user is a member of.<br />
<li>If the user is a member of an executive group, then the code <em>automatically</em> increases the users device limit.<br />
<li>An email is then generated in the dynamic web page and is sent to the owner of the IRM classification the content was sealed to informing them of the activity.<br />
<li>The status page then informs the end user that they've had their ability to open content on multiple machines increased and tells them to retry opening the content.<br />
</ol><br />
<li><strong>Each classification can have a different URL!</strong> This means two main things, if you want have the skills or the time to build a fancy dynamically driven status page application, you can set a different URL for each classification and point it to a static HTML page. Secondly from a dynamic perspective you now have even more flexibility. You can point different classifications to different applications, and have some simply point to static files. Some classifications could be forced to deliver these pages over SSL for instance whilst others not.<br />
</ul>So all in all, this part of the Oracle IRM solution is VERY flexible. In our 10+ years of experience in deploying IRM solutions with customers we've found that making the end users experience very important. You have to guide them through WHY they cannot access content because often the reason changes. It might be that the user is new to the company and someone forgot to add them to a classificaiton. These pages enable the end user to understand and then contact the right people to get further help. Security, usability and manageability, all must be balanced to ensure a secure and effective solution.</p>]]>
      
   </content>
</entry>
<entry>
   <title>MP expenses data up for sale</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/03/mp_expenses_data_up_for_sale_1.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.11133</id>
   
   <published>2009-03-31T13:08:25Z</published>
   <updated>2009-03-31T13:53:34Z</updated>
   
   <summary>The latest high-profile data exposure story comes from the mother of all parliaments as part of an ongoing furore about inappropriate expense claims by Members of Parliament. According to the BBC, details of expenses claims of all 650 or so...</summary>
   <author>
      <name>martin.abrahams</name>
      
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>The latest high-profile data exposure story comes from the mother of all parliaments as part of an ongoing furore about inappropriate expense claims by Members of Parliament. </p>

<p><a href="http://news.bbc.co.uk/1/hi/uk_politics/7973438.stm" target="_blank">According to the BBC</a>, details of expenses claims of all 650 or so MPs from all parties are available for a sum of around £300000. There is an expectation that some of the more embarrassing claims will find their way into the papers over the coming weeks - although it is hard to imagine anything more embarrassing than the weekend's revelations about the Home Secretary's claims. </p>

<p>The breach has privacy implications. Parliament itself plans to publish the information some time this Summer as part of a drive towards more openness. However, it cannot do so until about a million receipts have been reviewed for data privacy purposes, and the incident might also represent a breach of the Official Secrets Act. Whoever is trying to sell the data evidently has no qualms about the privacy implications. Electronic copies of the receipts are being offered in redacted and unredacted form. </p>

<p>This story illustrates how seemingly trivial information can have extraordinary value and significant privacy implications. We have customers who seal payslips and other HR information, but it has never occurred to me that expense receipts represent a significant risk. <br />
</p>]]>
      
   </content>
</entry>
<entry>
   <title>Data on Presidential helicopter goes astray</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/03/data_on_presidential_helicopte_1.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10651</id>
   
   <published>2009-03-08T09:26:28Z</published>
   <updated>2009-03-10T04:10:23Z</updated>
   
   <summary>The BBC reports that information about the Presidential helicopter has been exposed inappropriately. Apparently an executive working for a defense contractor was running file sharing software, and the file in question wound up on an Iranian computer. The information was...</summary>
   <author>
      <name>martin.abrahams</name>
      
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="obama" label="obama" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>The <a href="http://news.bbc.co.uk/1/hi/world/americas/7920638.stm" target="_blank">BBC reports</a> that information about the Presidential helicopter has been exposed inappropriately. Apparently an executive working for a defense contractor was running file sharing software, and the file in question wound up on an Iranian computer. </p>

<p>The information was low-grade - no real harm done - but the story illustrates how easily information gets out and about. It also illustrates how third parties, such as contractors, can lose your information even if you do not, and how some technology focuses on leak detection rather than prevention.</p>

<p>My initial reaction was to think about how an enterprise would typically lock down all the network ports/protocols that would allow for file sharing such as this to occur. But this is no good when laptops are taken home or documents are stored on USB devices and worked on using home computers.</p>

<p>The BBC says that "Keith Tagliaferri, director of operations at <A href="http://www.tiversa.com/" target=_blank">Tiversa</a>, said the employee who inadvertently disclosed the information was a high-level executive - and the breach had taken place outside the company's offices."</p>

<p>Traditional network security tools such as firewalls simply do not protect against these types of problems. Even DLP technologies can only be effective at the points where DLP agents are deployed. It is impossible to protect every channel and its why IRM is a good compliment to these existing techniques. </p>

<p>Protecting the most valuable content is most effectively done when the security controls are around the content itself, no matter where it resides nor where it is transmitted to.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Simple Oracle IRM flash presentation</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/simple_oracle_irm_flash_presen.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10437</id>
   
   <published>2009-02-25T07:41:07Z</published>
   <updated>2009-02-25T16:14:24Z</updated>
   
   <summary>I&apos;m working on some new demo&apos;s of the IRM technology to host here. I will be showing how Oracle IRM can protect HTML and images (GIF, JPG, PNG) in the context of a portal or an online application such as...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Demonstration" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="demo" label="demo" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>I'm working on some new demo's of the IRM technology to host here. I will be showing how Oracle IRM can protect HTML and images (GIF, JPG, PNG) in the context of a portal or an online application such as online banking. Also i'll soon have a video overview of how our IRM solution integrates with the Oracle Content Management solution.</p>

<p>But whilst researching information for these demo's I found a nice flash presentation that was made last year and does a good job of explaining the issues that IRM solves, have a look!<br />
<iframe width="610" height="390" frameborder="0" scrolling="no" src="http://blogs.oracle.com/content/dav/oracle/mtblog/i/ir/irm/flash/oracle_IRM_preso.html"><br />
</iframe></p>]]>
      
   </content>
</entry>
<entry>
   <title>Laid off workers stealing company data</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/laid_off_workers_stealing_comp.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10435</id>
   
   <published>2009-02-25T05:57:33Z</published>
   <updated>2009-02-25T07:21:56Z</updated>
   
   <summary> More news articles published this week are raising awareness of risks involved with sensitive information leaving your organization when employees are laid off. Another research study from the Ponemon Institute, in conjunction with Symantec, surveyed 945 adults in the...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dlp" label="DLP" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="datalossprevention" label="Data Loss Prevention" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p><a href-="http://www.symantec.com/" target="_blank"><img border="0" alt="Symantec" src="http://blogs.oracle.com/irm/images/symantec-logo.gif" width="326" height="37" /></a></p>

<p>More <a href="http://news.bbc.co.uk/2/hi/technology/7902989.stm" target="_blank">news articles</a> published <a href="http://searchsecurity.techtarget.com/news/article/0,289142,sid14_gci1348948,00.html" target="_blank">this week</a> are <a href="http://www.networkworld.com/news/2009/022309-fired-workers-steal-data.html" target="_blank">raising awareness</a> of risks involved with sensitive information leaving your organization when employees are laid off. Another research study from the Ponemon Institute, in conjunction with Symantec, surveyed 945 adults in the United States who were laid-off, fired or changed jobs in the last 12 months. It found 59% of employees who leave or are asked to leave are stealing company data, such as contact lists, employee records, financial reports, confidential business documents and software tools</p>

<p>Kevin Rowney from Symantec told the BBC that, "The intellectual property of a company can represent the crown jewels and are almost worth more than the building. This is the core asset of a company and any breach or loss can be very expensive... The industry has concentrated on the protection of the containers where the data is stored like firewalls, access, controls and end point security systems... The end result is that most security teams are protecting the containers not the data itself. And that is a core flaw in the security methodology of many practitioners today,"</p>

<p>Symantec sponsorship obviously highlights their <a href="http://www.symantec.com/en/uk/business/theme.jsp?themeid=dlp" target="_blank">DLP solutions</a> which allows for the detection and control of information as it flows across devices such as firewalls and network files servers onto desktop and laptop computers, and ultimately onto removable USB devices.</p>

<p>Without question i'm going to state that <a href="http://blogs.oracle.com/irm/2008/11/oracle_irm_and_data_loss_preve.html" target="_blank">IRM is a perfect compliment to DLP</a> to provide a robust solution to protecting, controlling and reporting on the use of sensitive content. DLP has its limitations and IRM fills those holes, combine this with the total set of <a href="http://blogs.oracle.com/irm/2009/02/complete_security_from_databas_1.html" target="_blank">security technologies</a> from Oracle and a smart company could ensure the recent increase in risk can be reduced and controlled for a fraction of the cost from the repercussions of loosing all this data.</p>

<p>Another comment I found interesting was, "It is not enough that I will be laid off, that I will have to sell my home and possessions at a loss - I am now considered a 'thief' for'stealing' (ie taking work home with me) intellectual property. Why is the worker blamed for everything that goes wrong with a company?"</p>

<p>Oracle IRM has positive solutions for both problems. It first provides an organization with the ability to have absolute control over documents, not only by limiting who can print (and therefore steal paper copies) but also by removing access to content when an employee no longer works for the organization.</p>

<p>Secondly it can actually help the employee... Oracle IRM allows for a balance of usability and security that allows people to use sensitive content on the move and from home locations. Leaving a company and knowing they are responsible for removing your access rights, frees the ex-employee from all responsibility. If the organization is able to revoke all rights to content, then the end user no longer feels under the spot light when they leave.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Email circular exposes sensitive board minutes</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/internal_email_exposes_sensitive_board_minutes.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10323</id>
   
   <published>2009-02-20T08:47:49Z</published>
   <updated>2009-02-20T17:39:30Z</updated>
   
   <summary>Having just read Simon&apos;s comments on securing email, I can&apos;t resist mentioning a recent report in the UK press about a company that accidentally exposed its board&apos;s thinking on how to cope with the current economic downturn. According to the...</summary>
   <author>
      <name>martin.abrahams</name>
      
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="email" label="email" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="sealedemail" label="sealed email" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>Having just read Simon's comments on <a href="http://blogs.oracle.com/irm/2009/02/using_oracle_irm_to_secure_you.html">securing email</a>, I can't resist mentioning a recent report in the UK press about a company that accidentally exposed its board's thinking on how to cope with the current economic downturn.</p>

<p><a href="http://www.telegraph.co.uk/finance/newsbysector/constructionandproperty/4605700/Honesty-a-risky-policy-after-Savills-board-leak.html">According to the Daily Telegraph</a>, an up-market estate agency accidentally included its board minutes in an internal email. Employees got to read about cost cutting proposals and a "final solution" that might be called for if things get really bad in the housing market. Attempts to recall the email were doomed, as some employees had already forwarded it beyond the company network. <br />
</p>]]>
      
   </content>
</entry>
<entry>
   <title>Using Oracle IRM to secure your sensitive emails</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/using_oracle_irm_to_secure_you.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10251</id>
   
   <published>2009-02-20T01:13:30Z</published>
   <updated>2009-02-20T04:38:13Z</updated>
   
   <summary>Email is a very useful technology. It allows for people to easily and quickly communicate with vast numbers of people over great distances within minutes. However there is a downside to the ease of use, sensitive information can be broadcast...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Functionality" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="email" label="email" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="secureemail" label="secure email" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>Email is a very useful technology. It allows for people to easily and quickly communicate with vast numbers of people over great distances within minutes. However there is a downside to the ease of use, sensitive information can be broadcast with little effort and sometimes by mistake. How often have you been writing an email, filling in the "To" list and have allowed the email client to search through your history of previous emails and suggest the right recipient? Only to find that <i>just</i> after you've sent the email, you realize it went to the wrong person? I have heard all sorts of horror stories of sensitive documents, sometimes containing mergers and acquisition information being sent to the wrong people at the wrong company. Worse there have been reports of documents being sent to entire distribution/mailing lists of people by mistake. </p>

<center><img alt="Sealed email" src="http://blogs.oracle.com/irm/images/sealed-email.gif" width="479" height="239" /></center>

<p>So no surprise that we on the Oracle IRM team have a solution for protecting email communication. Oracle IRM supports a lot of formats, from Office (2000-2007, wider support than Microsoft's own IRM technology), PDF (Acrobat Reader 6.0+), HTML, JPEG, GIF, XML and others which allows people to protect documents that are attached to emails but we also support the ability to secure the content (body) of the email.</p>

<p>This is an area that comes with many different methods of creating, sending, receiving and reading the information. Some also regard their email client to be the most important tool in the workplace, so when integrating with this environment, especially from a security perspective, you need to be very careful and ensure you do not disrupt end users day to day activities.</p>

<h2>Oracle IRM ensures the best user experience when protecting sensitive emails</h2>
When the Oracle IRM team decided to include email as part of the solution, we thought long and hard about how to address the issue of multiple email clients and servers. The decision was to be as agnostic as possible to the underlying platform so that we could ensure users could consume sealed information via as many clients and servers as possible. Nothing worse than a vendor trying to tie you into their way of doing things.

<p>This led to the creation of the .seml format and the method of taking the body of an email, sealing it and then attaching that file to an ordinary email message. This means that the resulting email package can be sent via any of the usual email mechanisms. What did do on the client side was write some simple plug ins for the most common email clients to automate the above process. The email clients we current support are;<br />
<ul><li>Microsoft Outlook 2000-2007<br />
<li>Lotus Notes 6.5-7.0 <br />
<li>Novell GroupWise 6.5-7.0<br />
</ul><h2>Sending a secure email with Oracle IRM</h2>When using one of the email clients above it is very simple to send a secured email. Simply start a new email as you would normally and the Oracle IRM Desktop will insert a small button in the email window. This allows you to mark the email as one which you wish to be sealed. Upon sending of the email the IRM software will ask you what classification (context) the email falls under and will list all the contexts to which you have the rights to secure information. This is exactly the same dialog and selection a user makes when sealing any document with Oracle IRM, consistency with the end user is important to reduce any confusion in the process. After choosing the classification the email is then sealed and sent onto the recipients.<br><br><table border="0" cellpadding="3" cellspacing="0"><tbody><tr><td valign="top"><img alt="Context selection dialog" src="http://blogs.oracle.com/irm/images/context-selection-dialog.gif" width="300" height="213" /><br />
</td><td valign="top">It is still possible to send a sealed email if you don't have one of the supported clients. But it requires the end user to create the sealed email attachment manually like any other ordinary sealed file and attach that to the email. Future support of new email clients is however possible as we have an API exposed specifically for integrating with email. This API has already been used in Oracle to develop an integration with the open source Thunderbird email client.</td></tr></tbody></table></p>

<h2>Receiving a secure email with Oracle IRM</h2>
The beauty of the Oracle IRM solution is that receiving and opening a sealed email doesn't require any specific email client. Because the file is an attachment to the email, you just double click on the attachment and, assuming you have rights to the content, open the message.

<p>There are some advantages with using a client that we've integrated with. For instance to reply to a sealed email is much easier with Outlook, Notes or Groupwise because we again insert a button behind which some logic automates the replying. But it is still possible to do this from any email client it just requires some manual effort on the end user. </p>

<h2>Your email is secure and persistently under your control with Oracle IRM</h2>
Email extends the Oracle IRM format base to an area that is crucial for effective secure communication. It not only offers powerful protection using industry encryption algorithms to secure the information in transit, but it enables you to have total control over the email even after delivery. So even when your sensitive information goes out to thousands in the organization and is forwarded onto more, you still have the ability to audit and revoke access to every single copy of that communication, no matter where it resides.]]>
      
   </content>
</entry>
<entry>
   <title>Protecting large amounts of files with Oracle IRM</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/protecting_large_amounts_of_fi.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10234</id>
   
   <published>2009-02-19T01:10:45Z</published>
   <updated>2009-02-19T02:10:21Z</updated>
   
   <summary>I am often asked how it is possible to seal en mass lots of files against an Oracle IRM server. There are many ways to do this via our APIs and prebuilt tools. Sealing a folder with the Windows Explorer...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Functionality" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>I am often asked how it is possible to seal en mass lots of files against an Oracle IRM server. There are many ways to do this via our APIs and prebuilt tools.</p>

<h2>Sealing a folder with the Windows Explorer integration</h2>
The simplest method by far is by simply right clicking on a folder in Windows and selecting "Seal To..." Installing the Oracle IRM Desktop gives the user the ability to seal an entire folder structure of content directly from Windows Explorer. All you need are rights to seal in a context (be given a Contributor role) and have the Oracle IRM Desktop installed.

<p>Limitations of this method are being able to insert any form of logic in the process. Performance wise it should be just as quick via this method as any other. I tried this on my little laptop, I have a documents folder of about 600mb in size and made a copy. This folder contains all sorts of content, some already sealed and some in a format Oracle IRM doesn't support. I timed how long it took to seal 445 supported files by a right click and seal, it completed in about 45 seconds. Not a bad result on a little laptop hard disk (320GB, 5300RPM).</p>

<h2>smBatch.exe</h2>
For slightly more control you can use the command line driven utility that is available in the <a href="http://www.oracle.com/technology/software/htdocs/devlic.html?url=http://download.oracle.com/otn_software/sealed/PR4/IRM_10gR3_20080909%20GW%20BB%20and%20SDK.zip" target="_blank">Oracle IRM Developers SDK</a>. This tool uses the C++ interface and the source code for it is included as part of the SDK. It takes a set of parameters as follows. This allows for a really easy way to include sealing as part of an existing batch process that can call out to the shell passing in the details of the content to be sealed.

<p><code><br />
smBatch (DSE v5.5.9.95), Copyright (c) 1996,  2007, Oracle. All rights reserved.<br />
use: smBatch<br />
&nbsp;&nbsp;&nbsp;-licserv &lt;license server URL&gt;<br />
&nbsp;&nbsp;&nbsp;-publisher &lt;publisher ID&gt;<br />
&nbsp;&nbsp;&nbsp;-aemail &lt;administrator email&gt;<br />
&nbsp;&nbsp;&nbsp;-apwd &lt;administrator password&gt;<br />
&nbsp;&nbsp;&nbsp;-contentset &lt;content set name&gt;<br />
&nbsp;&nbsp;&nbsp;-category &lt;category&gt;<br />
&nbsp;&nbsp;&nbsp;[-sealedfileschema &lt;major.minor.revision&gt;]<br />
&nbsp;&nbsp;&nbsp;[-dryrun &lt;Run the program without sealing the files. For debug purpose&gt;<br />
&nbsp;&nbsp;&nbsp;[-batch &lt;Batch file for multiple sealing of i/o files, mime and item code&gt;<br />
&nbsp;&nbsp;&nbsp;[-metadata &lt;full path to metatdata file&gt;]<br />
&nbsp;&nbsp;&nbsp;[-mime &lt;sealed MIME type&gt;]<br />
&nbsp;&nbsp;&nbsp;[-version &lt;version code&gt;]<br />
&nbsp;&nbsp;&nbsp;[-item &lt;item code&gt;]<br />
&nbsp;&nbsp;&nbsp;[-time &lt;publication time in format 25 Aug 2000 16:30:00 EST&gt;]<br />
&nbsp;&nbsp;&nbsp;[-cipherlen &lt;number&gt;]<br />
&nbsp;&nbsp;&nbsp;[-plainlen &lt;number&gt;]<br />
&nbsp;&nbsp;&nbsp;[-period &lt;number&gt;]<br />
&nbsp;&nbsp;&nbsp;[-streaming &lt;on|off  Disable chunking if switched to off; default is on.]<br />
&nbsp;&nbsp;&nbsp;[-semail &lt;source email&gt;]<br />
&nbsp;&nbsp;&nbsp;[-spwd &lt;source password&gt;]<br />
&nbsp;&nbsp;&nbsp;[-pxuser &lt;proxy username&gt;]<br />
&nbsp;&nbsp;&nbsp;[-pxpwd &lt;proxy password&gt;]<br />
&nbsp;&nbsp;&nbsp;[-pxhost &lt;proxy host url&gt;]<br />
&nbsp;&nbsp;&nbsp;[-pxport &lt;proxy port number&gt;]<br />
&nbsp;&nbsp;&nbsp;[-impersonate &lt;login name of user to impersonate&gt;]<br />
&nbsp;&nbsp;&nbsp;[-simpersonate &lt;login name of source user to impersonate&gt;]<br />
&nbsp;&nbsp;&nbsp;&lt;infile&gt; [&lt;outfile&gt;]</p>

<p>e.g.  smBatch -lic seal://licence.www.oracle.com:80 -pub mypub-001<br />
-aem myname@mydomain.com -apw topsecret -cont cs_1 -cat cat_1<br />
-pxhost 10.2.3.54  -pxport 77 -stream off -pxuser mickey.mouse -pxpwd disney<br />
-t "25 Aug 2000 16:30:00 EST" example.pdf<br />
</code></p>

<h2>Calling the Dynamic Sealing Engine (DSE) API</h2>
For the ultimate in control you can use the DSE API which is available in Java, C++ and COM. An example of this use in a Javascript function is;

<p><code><br />
function fnSealFileActiveX (strLicenseURL, strPublisher, strAdminAccount, strAdminPassword, strContentSet, strCategory, strItemCode, strFilePathname, strSealedFilePathname)<br />
{<br />
&nbsp;&nbsp;&nbsp;try {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var objSealer = new ActiveXObject ("SealedMedia.DynamicSealingEngine");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.SetLicenceServerURL (strLicenseURL,30);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.ItemCode = strItemCode;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.username = strAdminAccount;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.password = strAdminPassword;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.publisherID = strPublisher;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.contentSet = strContentSet;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.category = strCategory;</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objSealer.SealFile (strFilePathname, strSealedFilePathname);<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;catch (e) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw e.description + " " + e.number;<br />
&nbsp;&nbsp;&nbsp;}<br />
return true<br />
}<br />
</code></p>

<h2>Using Web Services to seal files</h2>
Finally there is the option to be totally platform and language independant by using the Web Services interfaces on the Oracle IRM server. There is an excellent tutorial of how to get this up and running over on OTN. <a href="http://www.oracle.com/technology/obe/fusion_middleware/ecm/irm/eclipse/eclipse/eclipse.htm" target="_blank">Using Oracle IRM Web Services with Eclipse WTP 1.5.4</a>. However this is not going to be the best bet for performance as you will be sending all the content over the network to the IRM server, which will seal it and then pass the entire, encrypted file back to the calling client over the network.

<p>So in summary, plenty of options to fine ways of sealing existing repositories of files using Oracle IRM.</p>]]>
      
   </content>
</entry>
<entry>
   <title>The beauty of separating rights from content</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/the_beauty_of_seperating_right.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.5228</id>
   
   <published>2009-02-18T09:21:16Z</published>
   <updated>2009-02-18T08:49:18Z</updated>
   
   <summary>I was discussing the subject of why separating rights from the content is so important with a friend at work and thought I would share some elements of this discussion. Fundamental to the success of the Oracle IRM solution is...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="General" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>I was discussing the subject of why separating rights from the content is so important with a friend at work and thought I would share some elements of this discussion.</p>

<p>Fundamental to the success of the Oracle IRM solution is that from day one Martin Lambert, Oracle IRM creator, decided to separate the information that describes who can access content and what they can do with it from the actual content itself. To demonstrate why this important consider the following.</p>

<p>1. You protect 10 documents which you distribute, via email, to 100 people in your company. Each person copies those 10 documents to their local computer from their inbox. 10 of these people are managers who are given rights to print the documents, the rest are prohibited and can only open the content.<br />
2. A few weeks later the company hires another 20 people. 10 of the people from the original 100 are promoted to managers and 15 leave the company, taking the content with them.</p>

<p>Now imagine if those 10 documents, of which there are now thousands of copies, contained information about the 100 people that could initially open them. What happens a few weeks later? What do you do? Recall all the copies of those old documents and reissue new ones with updated lists of rights? How do you ensure users are then opening the right document with the correct rights? What about those who are promoted and have gained new rights to the same content? Do they have different versions of the same document, one they can print and one they cannot?</p>

<p>Many IRM solutions were born from <a href="http://www.securityfocus.com/columnists/165" target="_blank">Digital Rights Management (DRM) technologies</a> which typically embed such rights information into the protected content. <a href="http://en.wikipedia.org/wiki/Digital_rights_management" target="_blank">DRM</a> technologies are commonly used to protect rich media such as music distributed by iTunes and movies by Amazon Unbox. In these environments the content is only designed to be read by the single consumer and the rights are typically distributed/embedded at the time of purchase/download. DRM used to be very restrictive and often received a lot of bad press about the unfair methods employed to restrict the use of content by the end user. Things are better these days and a more separated rights approach is being taken. Yet the technologies are still built on this limiting methodology.</p>

<p>When you take this approach from the consumer world into the enterprise, things suddenly become very difficult. Scalability becomes a large issue. Would you really store the rights of thousands of corporate users in each file you protect? Each time the rights to a specific document changes, do you redistribute those rights? Many IRM solutions in the market are born from <a href="http://www.crn.com/it-channel/21402042" target="_blank">such DRM systems</a> and are struggling to scale into the enterprise.</p>

<p>This is where Oracle IRM is able to work so easily and allows the fast changing trust relationships in the enterprise to be reflected quickly. Oracle IRM sealed content only knows of a classification to which it belongs. It also knows on what server this classification resides. So when a user access content, two things happen.</p>

<p>1. A user when attempting to access content whilst online is authenticated against the IRM server.<br />
2. If authentication is successful, the IRM server checks to see if they are authorized to access content with the classification matching the request. Is so, the rights are shipped and cached to the requesting machine and remain valid for a certain period of time. After which the user must again check with the IRM server to see if rights to the content have changed.</p>

<p>What this separation of rights means is that by making a single, simple change to a user rights on the Oracle IRM server, their access to thousands of documents can be affected when they next check with the server.</p>

<p>If you then consider how the Oracle IRM server can be hooked into your LDAP and Active Directory repositories and that groups can be assigned rights to these classifications. Then someone joining an organization can be added to <b>one</b> group in the corporate user repository and this one single act can give them instant access to hundreds and thousands of documents that are stored in a variety of places all over the organization.</p>

<p>Because this was a design feature from the very start, it means that we've been able to improve, learn through customer experience and fine tune this model. Our 11g release will be the best demonstration yet of how Oracle is leading the way when it comes to providing persistent, scalable and usable security to your sensitive enterprise information.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Deploying Oracle IRM in unreliable network environments</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/deploying_oracle_irm_in_unreli.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10222</id>
   
   <published>2009-02-18T04:21:16Z</published>
   <updated>2009-02-18T07:00:55Z</updated>
   
   <summary>I just received a question from a fellow sales consultant in Vietnam. He asks... &quot;In my demonstration, all of our customers asked me the same questions when I delivered the IRM demo: how can distribute the IRM server in multiple...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Functionality" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>I just received a question from a fellow sales consultant in Vietnam. He asks...</p>

<p>"In my demonstration, all of our customers asked me the same questions when I delivered the IRM demo: how can distribute the IRM server in multiple provices in Vietnam? Vietnam internet connection is very bad, therefore all distributed locations in Vietnam could not share the same central IRM server, then they are expected to deploy one central IRM Server on internet, and few other IRM servers on intranets of each location thru out Vietnam. </p>

<p>The requirement is how to synchronize all IRM data (security configuration, roles, rights...) between these IRM servers, so that when I assign for you a document in Hanoi IRM server, then I travel to Hochinhminh I can open the document with Hochiminh IRM server"</p>

<p>There are a number of ways to resolve this issue and not knowing the specifics of the infrastructure for these customers i'll outline all possible ways to solve the problem. </p>

<h2>Oracle IRM is already very network resilient</h2>
Firstly, Oracle IRM is by design very resilient to network performance. When the technology was first developed back in the late 90's it was very common for mobile workers to be using 14.4 and 28.8 modems. Network bandwidth and reliability was very poor in comparison to today's standards. Therefore Oracle IRM had some vital features which were essential in those early days and are unique to the Oracle IRM technology.<ul><li>Network protocol was a cut down version of SSL designed for speed and low bandwidth use. It is also tunneled inside HTTP which gives it a stateless aspect that forces a system design which is efficient with network communication.
<li>As long as you are not assigning large amounts of rights to each user, the size of data to be transferred from server to client is small. Again due to the bandwidth limitations around when the system was initially designed, Oracle IRM is very efficient with the data that is sent server to client and back. For example as you access sealed content offline the client audits this activity. These logs are returned to the server in batches to conserve available network bandwidth.<li>Offline caching has been in the core design of the system from day 1. This enables trusted users to travel with sensitive information without requiring to constantly connect with the network to validate rights. This of course needs to be balanced with the increased risk of extending that offline period, but in cases like this, just being able to deploy IRM brings a huge increase in security. This offline period can be taken to an extreme, some customers have given users a whole year of offline use. So they only need to access the IRM server once in an entire year! Of course this dramatically reduces the effectiveness of the security, but its demonstrative of the flexibility of the system.</ul>

<p>Apart from taking advantage of the inbuilt functionality, it is possible to build a system which allows for a more balanced security approach. This does involve a little more work and complexity and requires good system design to avoid instability as more components are involved.</p>

<h2>Multiple Oracle IRM servers can talk to one database</h2>
It would be possible to deploy multiple IRM server instances in each province. Then using localized DNS resolution (remember each piece of content has a fixed DNS hostname pointing to the home IRM server) you can have rights requests be served from a local servers. The IRM server by default is set to cache data in memory which mitigates some of the connectivity issues from the server instance back to the centralized database.

<p>There are issues here. You need to figure out a smart way to do <a href="http://www.caraytech.com/geodns/" target="_blank">geographical DNS</a> resolving which is hard if the end user is using public DNS servers and not ones on your own network. Also you might find that the connectivity from server to database also shares exactly the same issue you are trying to design around, that of a very poor network connection.</p>

<h2>Using Oracle database in a distributed manner</h2>
The ultimate solution of course would be to have an Oracle IRM server with its own distributed copy of an Oracle database running in each location. Oracle database has some very powerful capabilities which allow it to clone schema's to remote databases. A good example of this in action is how Google achieves its super-fast response time by cloning the Oracle database server in many locations across the world.

<p>This, whilst possible, is going to require some clever consulting to setup. Latency of changes to data needs to be taken into consideration across the entire system and also allowing those remote IRM and database systems to update information back to the "master" server. There is also still the issue of ensuring DNS points users to the right local server.</p>

<p>With 10g this would be a challenge, but he imminent release of 11g opens up the ability for the system architect to insert all sorts of logic right into the Oracle IRM server which would facilitate a design such as the one above. Of course when it comes to resolving distributed database issues then Oracle is already the master of that problem :)</p>

<h2>Using the Oracle IRM API to manage the distribution of rights</h2>
Another, more complex system could be built on the extensive API's available. The central IRM server would contain the master copy of rights and classifications which could then be "copied" using logic contained in an application that would utlilize the IRM API to update the intranet IRM servers. 

<p>Considerations also need to be taken about how to handle the audit logs from the separate IRM servers. These can be written to binary files, which are transferred back to a central location for processing into a complete audit of all activity. The Oracle IRM server also allows for these events to be placed onto a message queue which would provide a quicker method for amalgamating the records.</p>]]>
      
   </content>
</entry>
<entry>
   <title>UK citizens&apos; private information being lost at record rate</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/uk_citizens_private_informatio.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10115</id>
   
   <published>2009-02-12T05:12:01Z</published>
   <updated>2009-02-12T05:23:37Z</updated>
   
   <summary>Tis not a good time to be a UK citizen right now, &quot;your personal information of UK citizens is being lost and stolen at an unprecedented rate&quot;, the UK’s privacy watchdog said today. However, if you happen to be one...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p>Tis not a good time to be a UK citizen right now, "your personal information of UK citizens is being lost and stolen at an unprecedented rate", the UK’s privacy watchdog said today. However, if you happen to be one of the private companies that have lost this data you are currently safe in the knowledge that you're not going to be investigated. </p>

<p>The Information Commissioner’s Office (ICO) in the UK has been <a href="http://www.timesonline.co.uk/tol/news/politics/article5688347.ece" target="_blank">reported</a> saying that "Data breaches jumped by 36 per cent last year, the ICO said. Personal information is now lost - on average - more than once a day." </p>

<p>This is just shocking news, but worse is that the ICO is unable to investigate any breaches if they are within the realm of the private sector. Richard Thomas, the Information Commissioner himself states, "For more than 20 years, my office has not had the power to carry out any inspection without the consent of the organisation concerned, In the six and a half years that I have been commissioner, I have strenuously argued that that is not acceptable. One would not expect a food inspector to have to get the restaurant’s consent before carrying out an inspection.” </p>

<p>The government is making changes but this only applies to central and local government departments, private companies will still be exempt from investigation. Surely this must change, how can the ICO ask companies to sign its <a href="http://www.ico.gov.uk/Home/about_us/news_and_views/current_topics/personal_info_promise.aspx" target="_blank">Personal Information Promise</a> and not be given the power to investigate those who break this trust? Crazy...</p>]]>
      
   </content>
</entry>
<entry>
   <title>Average loss of data breach in 2008 = $6.65 million and results in lost customers</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/average_loss_of_data_breach_in.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10073</id>
   
   <published>2009-02-09T20:24:51Z</published>
   <updated>2009-02-09T22:34:53Z</updated>
   
   <summary>CIO.com have published an article by Dr. Larry Ponemon of the Ponemon Institute. It continues the relentless reports of how data loss incidents are on the rise and the associated costs. The article discusses the results of the recent annual...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<p><a href="http://www.cio.com/article/479101/Costs_of_a_Data_Breach_Can_You_Afford_._Million_" target="_blank">CIO.com</a> have published an <a href="http://www.cio.com/article/479101/Costs_of_a_Data_Breach_Can_You_Afford_._Million_" target="_blank">article</a> by Dr. Larry Ponemon of the Ponemon Institute. It continues the relentless reports of how data loss incidents are on the rise and the associated costs. The article discusses the results of the recent annual data breach study which concludes that the average cost of a data breach in 2008 was $6.65 million.</p>

<table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td valign="top"><a href="http://homes.cerias.purdue.edu/%7Espaf/"><img alt="Larry Poneman" src="http://blogs.oracle.com/irm/images/Larry_Poneman.jpg" width="113" height="139" /></a></td><td valign="top"><span style="font-family: Arial,Helvetica,sans-serif; font-size: medium; color: rgb(255, 0, 0);">"Violate a consumer's trust and they are more likely to walk, and that likelihood increases when the breach involves an organization in which the consumer has placed a great deal of trust."</span><br><span style="color: rgb(102, 0, 0);">Dr. Larry Ponemon, chairman and founder <a href="http://www.ponemon.org" target="_blank">The Ponemon Institute</a>.</span></td></tr></tbody></table>

<p>The summary of this study leads Dr Ponemon to state "the financial impact for a company that experiences a data breach is significant and rising." The institute use the data from their studies to, "analyze the methods and strategies used by companies when responding to a breach, and the outcome of the response, to create best practices so other organizations don't have to learn from their own experience." </p>

<p>One aspect of the report I found interesting is the effect on certain industries when it comes to rates of customer loss. Dr Ponemon describes;</p>

<p>"This year, lost business costs rose to a level 38 percent higher than in 2005. What's more, healthcare and financial services organizations experienced much higher abnormal customer loss—6.5 percent and 5.5 percent respectively—when compared with retail and consumer products organizations, whose churn rates were found to be 1.5 percent and 3.6 percent respectively. The significant difference in these rates of customer loss can be explained in one word: trust. Violate a consumer's trust and they are more likely to walk, and that likelihood increases when the breach involves an organization in which the consumer has placed a great deal of trust.</p>

<p>What do I mean? When a consumer chooses to do business with a financial services or healthcare organization, they tend to conduct more due diligence than when they walk through the doors of a department store to buy a shirt or a pair of shoes. A retail purchase is a simple transaction, but banking and healthcare requires entrusting an individual or organization with a great deal of highly sensitive information. Violate that trust and the customer may be more inclined to look for a new relationship. This is especially evident when the consumer receives multiple breach notifications from such an organization."</p>

<p>Companies right now need to do everything possible to retain existing customers and attract new business. As Larry highlights, people are very diligent when they make decisions about whom to place their finances with and with whom they entrust their healthcare so these organisations are more at risk than most. </p>

<p>Yet it isn't all doom and gloom. It is possible to turn this risk into a competitive advantage. Budgeting for the deployment of an IRM technology to protect customer information can both reduce financial risks of data loss but can also be used to differentiate your organisation from the competition by being seen to be using advanced technologies to protect their confidential information. This can drive new business which is crucial right now. Businesses who are freezing budgets, hoping to cut costs are potentially exposing themselves to further financial demise. Instead it is wise spending in the right areas to both maximise revenue and minimise risk that will prove the survival of the fittest.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Kaiser Permanente becomes another healthcare data loss casulty</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/kaiser_permanente_joins_the_he.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10072</id>
   
   <published>2009-02-09T19:22:03Z</published>
   <updated>2009-02-09T19:37:56Z</updated>
   
   <summary>A news report in the San Francisco bay area has brought attention to Kaiser warning nearly 30,000 employees of a data breach involving their names, addresses and social security numbers. Infact a handful of employees have already reported incidents of...</summary>
   <author>
      <name>Simon Thorpe</name>
      <uri>http://blogs.oracle.com/irm/about.html</uri>
   </author>
         <category term="Data loss" scheme="http://www.sixapart.com/ns/types#category" />
         <category term="Health care" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="dataloss" label="data loss" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="healthcare" label="healthcare" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td valign="top"><img alt="Kaiser Permanente" src="http://blogs.oracle.com/irm/images/Kaiser_logo.gif" width="245" height="28" /></td><td valign="top">A <a href="http://www.mercurynews.com/ci_11646163" target="_blank">news report</a> in the San Francisco bay area has brought attention to Kaiser warning nearly 30,000 employees of a data breach</td></tr></tbody></table> involving their names, addresses and social security numbers. Infact a handful of employees have already reported incidents of identity theft.

<p>The report states, "The theft came to light after the arrest of San Ramon resident Mia Garza, 28, on Dec. 23 on suspicion of possession of stolen property and forgery. In a confiscated computer, San Ramon police later found a file with Kaiser employee data, said San Ramon police Cpl. Rich Persson."</p>

<p>So it seems that a computer was stolen from Kaiser and contained the information about the employees. A classic case of data loss that would've been prevented had the document in question been secured using Oracle IRM. Not only that, but attempts to open the file would've created an audit trail for the police to use as part of the investigation.</p>

<p>Kaiser is helping it's employees by providing "one year of free credit monitoring to help affected employees protect their accounts." This can't be cheap for 30,000 odd employees, I wonder if the cost of an IRM solution would have been cheaper?</p>]]>
      
   </content>
</entry>
<entry>
   <title>Online Oracle Enterprise 2.0 (E2.0) Conference</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/irm/2009/02/online_e20_conference.html" />
   <id>tag:blogs.oracle.com,2009:/irm//122.10058</id>
   
   <published>2009-02-09T10:08:01Z</published>
   <updated>2009-02-09T19:02:06Z</updated>
   
   <summary> Oracle IRM forms part of the Oracle Enterprise 2.0 (E2.0) solution set, enabling organizations to manage, search, protect, track, and archive information assets, and build rich, collaborative web sites and portals for internal and external business processes. Oracle is...</summary>
   <author>
      <name>martin.abrahams</name>
      
   </author>
         <category term="General" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="e20" label="e2.0" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="enterprise20" label="enterprise 2.0" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="informationrightsmanagement" label="information rights management" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="irm" label="irm" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/irm/">
      <![CDATA[<center><a href="http://events.unisfair.com/index.jsp?eid=353&seid=26" target="_blank"><img alt="Online Oracle Enterprise 2.0 Conference" src="http://blogs.oracle.com/irm/images/e20conf.jpg" width="477" height="196" /></a></center>

<p>Oracle IRM forms part of the Oracle Enterprise 2.0 (E2.0) solution set, enabling organizations to manage, search, protect, track, and archive information assets, and build rich, collaborative web sites and portals for internal and external business processes. Oracle is hosting a virtual conference which will go over the entire set of technologies in this area, including IRM.</p>

<p>To find out more, sign up for the <a href="http://events.unisfair.com/index.jsp?eid=353&seid=26" target="_blank">Oracle E2.0 Online Conference</a> which will be live on February 19th and will be made available for playback afterward.</p>]]>
      
   </content>
</entry>

</feed>
