creating and IRM service in the Amazon Cloud

Ok, I am a glutton for punishment. We don’t have any hardware to play with in our office. It turns out that very few people have extra hardware laying around. I guess I got spoiled working at a University for as long as I did. We always had something from the 90’s laying around that we could use to play with and when virtual machines became trendy, it was easy to get a VM to prototype anything that you wanted. Now that I have been at Oracle for a while, I find it a little difficult to find a VM to play with and test software. Thus my current project. How do you get an IRM server running in the Amazon Cloud and get all of the services running properly. I did run into a few challenges, the following describes many of these hurdles.

1) the software only runs on Windows. I am a Unix admin so I feel lost initially. Some of the things that I stumbled into are trivial issues for Windows admins. I had to start a Windows Server 2003 instance and get it running with remote desktop. Given that this is different from VNC, it took a little learning to figure out what ports need to be opened and how to connect. Needless to say, it would not work through the corporate firewall and I reluctantly had to spend hours and hours working from home instead of commuting to the office

2) I had to remove components from Windows to get things properly working. IRM does not install properly if .NET is installed. It works fine but it has problems installing. I had to look at Metalink and the forums to find this out. This was easy because I know how to remove components.

3) I had to add components to Windows. The IIS service with SMTP needs to be configured and running for the management interface to properly operate. I would have preferred running Apache but that wasn’t an option so I had to figure out how to first install then configure IIS. The installation was a little difficult because running in a virtual service, it is a little difficult to mount a DVD and point my instance to the software. Fortunately, Amazon thought of this and provides a snapshot of the DVD with SNAP ID snap-8010f6e9. This is the Windows Server DataCenter Edition of 2003. All I had to do was select IIS and SMTP service and begin the install. It did ask me to find a couple of files, but that was relatively trivial. Once I got the IIS service installed, I had to configure it to send email from a drop directory. At this point I went on the web and found http://fmuntean.wordpress.com/2008/10/26/how-to-configure-iis-smtp-server-to-forward-emails-using-a-gmail-account/ since I wanted to use my gmail account as a relay since Oracle only allows email to be initiated from within the firewall.

3) Once I had the web service up and running, I had to install a database. For this installation I installed the Oracle Database Express Edition. This is adequate for a test system but I might want to install Standard Edition or Enterprise Edition to make it part of my backup and failover strategy. This was relatively trivial but did require that I install the client side software to allow for ODBC connections. I could not get an ODBC connection when I default installed XE.

4) Once I had the web service and database up and running, I had to install the IRM server. This was relatively trivial as well. I did need to remember where I installed the IIS service and the pickup location for email as well as the ODBC connector for XE. Given that this was my first install, this is where everything went wrong. I could not get email to work because I forgot where I defined the pickup directory in IRM and IIS. I again had to search the web and look for ways of testing email drop directories. I got this working by simply creating a file in the drop directory which in my case was C:\Inetpub\mailroot\Pickup (tough one, I know) and watching to see if the file disappears and shows up in my email. Fortunately, it did because I configured the IIS server properly using the IIS Manager that gets installed with IIS. The next problem was where does IRM define the drop directory. I looked everywhere and had to ask the expert (Simon Thorpe) how to find it. It turns out that there is a file c:\Inetpub\wwwroot\SealedMedia Management\smpweb_config.txt that defines the drop directory. I would have never looked there. I installed the software in e:\Program Files\Oracle\Information Rights Managerment\IRMServer. I guess this is the difference from a program written for Unix and a program written to work with IIS. I would have create a symbolic link from the install directory into the IIS root and made it simple. Once I got this working, I was able to login and create an account. The account creation sent a confirmation email to the user (which I could verify) and everything looks to be working.

Now that I have the service running, I can let some local customers play with it. The management console and web console are good interfaces that allow me to define contexts and have them play with managing, sealing, and notifying people of changes. I don’t need to give them access to the operating system because the service is self contained. Overall this was a good learning experience.