<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DanNorris.com &#187; oid</title>
	<atom:link href="http://www.dannorris.com/tag/oid/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dannorris.com</link>
	<description></description>
	<lastBuildDate>Tue, 31 Aug 2010 05:24:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>MSAD/OID/EUS/DB integration session room change, Weds at noon</title>
		<link>http://www.dannorris.com/2008/09/24/msadoideusdb-integration-session-room-change-weds-at-noon/</link>
		<comments>http://www.dannorris.com/2008/09/24/msadoideusdb-integration-session-room-change-weds-at-noon/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 20:04:08 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[OpenWorld]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle DB 11g]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[eus]]></category>
		<category><![CDATA[ms ad]]></category>
		<category><![CDATA[oid]]></category>
		<category><![CDATA[oow08]]></category>
		<category><![CDATA[openworld08]]></category>

		<guid isPermaLink="false">http://www.dannorris.com/?p=262</guid>
		<description><![CDATA[My session scheduled for Wednesday at noon titled &#8220;Integrating Microsoft Active Directory and Oracle Internet Directory with Database Logins: Enterprise User Security&#8221; (S300044) has been moved to a larger room. It will now be in Marriott Salon 8, so if you were on the waiting list (there were quite a few of you!), you shouldn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>My session scheduled for Wednesday at noon titled &#8220;Integrating Microsoft Active Directory and Oracle Internet Directory with Database Logins: Enterprise User Security&#8221; (S300044) has been moved to a larger room. It will now be in Marriott Salon 8, so if you were on the waiting list (there were quite a few of you!), you shouldn&#8217;t have any trouble finding a seat now as the room holds almost 900 people.</p>
<p>See you there&#8211;it should be a fun and informative session!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dannorris.com/2008/09/24/msadoideusdb-integration-session-room-change-weds-at-noon/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Concatenating lines in ldapsearch results</title>
		<link>http://www.dannorris.com/2008/09/08/concatenating-lines-in-ldapsearch-results/</link>
		<comments>http://www.dannorris.com/2008/09/08/concatenating-lines-in-ldapsearch-results/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 18:27:12 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[App Server]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Identity Management]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[concatenate]]></category>
		<category><![CDATA[infrastructure]]></category>
		<category><![CDATA[ldapadd]]></category>
		<category><![CDATA[ldapsearch]]></category>
		<category><![CDATA[ldif]]></category>
		<category><![CDATA[oid]]></category>
		<category><![CDATA[portal]]></category>

		<guid isPermaLink="false">http://www.dannorris.com/?p=236</guid>
		<description><![CDATA[Many of us have had reasons to migrate Oracle Application Server (specifically, Portal) environments from one server or group of servers to another. This is often the case when hardware upgrades are needed and the whole environment must be moved to another set of hosts. Recently, I was helping move an Oracle Portal (10.1.2.0.2) environment [...]]]></description>
			<content:encoded><![CDATA[<p>Many of us have had reasons to migrate Oracle Application Server (specifically, Portal) environments from one server or group of servers to another. This is often the case when hardware upgrades are needed and the whole environment must be moved to another set of hosts.</p>
<p>Recently, I was helping move an Oracle Portal (10.1.2.0.2) environment from one host to another. This was due to a company spin off, so the &#8220;sticky&#8221; part of this move was that the domain name and resulting realm changed (more on that in a minute).</p>
<p>First, if you&#8217;ve had to perform this task, you should have already identified Metalink Note <a href="https://metalink.oracle.com/metalink/plsql/f?p=130:14:7778433353718512829::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,251776.1,1,1,1,helvetica">251776.1</a> which describes the process necessary for moving users and groups from one OracleAS Infrastructure to another. The note&#8217;s step 3 mentions that the <a href="http://en.wikipedia.org/wiki/LDIF">LDIF</a> file must be edited to replace all references to the old realm with the new realm in the target system. However, this can prove difficult if you do actually have to change the realm name because of the way that ldapsearch produces output. The LDIF standard specifies that lines can be continued on the following line if a space is the first character on the line. The corresponding ldapadd command can properly import lines that are broken into multiple lines, but the standard search and replace tools (in notepad, vi or any other standard text editor) can&#8217;t find the occurrences properly to replace them. So, some entries are able to be replaced easily like this one (assume we need to replace &#8220;<code>dc=dannorris,dc=local</code>&#8221; with &#8220;<code>dc=newcorp,dc=com</code>&#8220;):<span id="more-236"></span> <code> </code></p>
<pre>dn: cn=dba,cn=portal.080827.121025.144000000,cn=groups,dc=dannorris,dc=local
uniquemember: cn=portal,cn=users,dc=dannorris,dc=local
uniquemember: cn=orcladmin,cn=users,dc=dannorris,dc=local
cn: DBA
displayname: DBA
description: portal.080827.121025.144000000 - Database Administrators
owner: cn=portal,cn=users,dc=dannorris,dc=local
owner: cn=orcladmin,cn=users,dc=dannorris,dc=local
objectclass: top
objectclass: groupofUniqueNames
objectclass: orclGroup
objectclass: orclPrivilegeGroup</pre>
<p>The problem comes when you encounter a group name that causes one or more of the lines to be wrapped to the next line (ldapsearch has a hard-coded line length), like this one (note that the first and eighth lines aren&#8217;t wrapped because of your screen&#8211;that&#8217;s actually how ldapsearch outputs them):</p>
<p><code> </code></p>
<pre>dn: cn=DANCO_PROCUREMENT_LIMITED,cn=portal.080827.121025.144000000,cn=groups,d
 c=dannorris,dc=local
objectclass: orclGroup
objectclass: groupOfUniqueNames
objectclass: top
owner: cn=danco_admin,cn=users, dc=dannorris,dc=local
uniquemember: cn=danco_admin,cn=users,dc=dannorris,dc=local
uniquemember: cn=dba,cn=portal.080827.121025.144000000,cn=groups,dc=dannorris,
 dc=local
orclisvisible: true
displayname: DANCO_PROCUREMENT_LIMITED
cn: DANCO_PROCUREMENT_LIMITED</pre>
<p>The standard search and replace function in the text editor won&#8217;t be able to interpret the value of the  <code>dn:</code> attribute above as somethin that needs to be replaced because the search string would be &#8220;<code>dc=dannorris,dc=local</code>&#8221; and the above is &#8220;<code>d\n c=dannorris,dc=local</code>&#8221; instead. Similarly, the <code>uniquemember:</code> value is also broken across lines.</p>
<p>I found it useful to have a short utility script (in <a href="http://en.wikipedia.org/wiki/Perl">Perl</a>, because that&#8217;s what I know <em>and</em> <strong>it&#8217;s always available with recent Oracle installations</strong>) that can concatenate the broken lines into a single line that can be consumed by search and replace more easily. The script also removes the <code>authpassword:</code> attributes as it processes since those can&#8217;t be loaded with ldapadd (as mentioned in the Metalink note). Here&#8217;s the script source (I call it concat.pl):</p>
<p><code> </code></p>
<pre>$cnt=0;
while ($line = &lt;&gt;) {
  chomp($line);
  if ( $line =~ /^authpassword/ ) {
    next;
  } elsif ( $line =~ /^\S+/) { ### this line is a "normal" or starting line
    $results[$cnt++] = $line;
  } elsif ( $line =~ /^$/ ) {  ### this line is blank
    $results[$cnt++] = "";
  } elsif ( $line =~ /^ \S+/ ) {  ### this line is a continuation
    $results[$cnt-1] = $results[$cnt-1] . substr($line,1);
  }
}

for $i (0 .. $cnt) {
  print "$results[$i]\n";
}</pre>
<p>The script essentially creates a simple array of output and then the for loop at the end spits out the resulting array to STDOUT. There are a few simple <a href="http://perldoc.perl.org/perlre.html">regular expressions</a> used and the \S <a href="http://perldoc.perl.org/perlrequick.html#Using-character-classes">character class</a> from Perl to make things easy. To run this script, you need to invoke perl directly (I wrote this for Windows, so that&#8217;s why there&#8217;s no #! at the start). I run it like this on Windows:</p>
<p><code> </code></p>
<pre>%ORACLE_HOME%\perl\5.6.1\bin\MSWin32-x86\perl concat.pl &lt; input.ldif &gt; output.ldif</pre>
<p>Then just review the output to see that it looks like you expect. Once satisfied, you can perform the search and replace knowing that it should match all the occurrences, not just the ones that happened to fit on a single line.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dannorris.com/2008/09/08/concatenating-lines-in-ldapsearch-results/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Cool thing happened on Twitter today&#8230;</title>
		<link>http://www.dannorris.com/2008/01/22/cool-thing-happened-on-twitter-today/</link>
		<comments>http://www.dannorris.com/2008/01/22/cool-thing-happened-on-twitter-today/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 15:46:48 +0000</pubDate>
		<dc:creator>Dan</dc:creator>
				<category><![CDATA[App Server]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Identity Management]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[web 2.0]]></category>
		<category><![CDATA[oid]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.dannorris.com/2008/01/22/cool-thing-happened-on-twitter-today/</guid>
		<description><![CDATA[A neat thing happened today on Twitter. While I admit that I don&#8217;t necessarily &#8220;get it&#8221; as fast as some of my &#8220;web 2.0&#8243; friends do, I haven&#8217;t seen this happen too much on Twitter since I&#8217;ve been following it in the past several months. I&#8217;m sure it probably happens all the time to cool [...]]]></description>
			<content:encoded><![CDATA[<p>A neat thing happened today on <a href="http://twitter.com/">Twitter</a>. While I admit that I don&#8217;t necessarily &#8220;get it&#8221; as fast as some of my &#8220;web 2.0&#8243; friends do, I haven&#8217;t seen this happen too much on Twitter since I&#8217;ve been following it in the past several months. I&#8217;m sure it probably happens all the time to cool people, but I was lucky enough to cross over for a few minutes and that&#8217;s notable.</p>
<p>Basically, the &#8220;thing&#8221; was that someone needed help understanding how to get started with an OID installation for managing TNS connect descriptors. He wanted (and needed) to use an existing database since he was resource-constrained and wasn&#8217;t sure what the installation process looks like for such an installation.</p>
<p>Here&#8217;s the combined thread between <a href="http://twitter.com/fuadar">@fuadar</a>, <a href="http://twitter.com/topperge">@topperge</a> and me (<a href="http://twitter.com/dannorris">@dannorris</a>) just a few minutes ago:</p>
<p><em><strong>fuadar:</strong> looking for someone or some document to install oid in an existing 10.2 database need only names service resolution<br />
<strong> dannorris:</strong> @fudar It&#8217;s much easier to just have it install its own DB. If you use existing DB, you must run metadata repos creation asst first.<br />
<strong> fuadar:</strong> @dnanorris out of space already have a database out there for other functions. trying to setup oid to solve our tnsnames issues<br />
<strong> dannorris:</strong> @fudar Issues? Honestly, OID usually introduces more issues than it solves when it comes to TNS. It&#8217;s a lot more complex than a text file.<br />
<strong> fuadar:</strong> @dannorris true but i&#8217;m trying to come up with some way to manage acouple of hundred servers and a couple of thousand clients<br />
<strong> dannorris:</strong> @fudar It&#8217;s definitely the right direction to head&#8211;just need realistic expectations about complexity and manageability&#8211;not easier!<br />
<strong> fuadar:</strong> @dannorris agree just looking for better documentation<br />
<strong> topperge:</strong> @fuadar fudar, all you need is RepCA and install the identity repos, http://tinyurl.com/yweyr8<br />
<strong> dannorris:</strong> @fuadar Better free up some space first&#8211;you&#8217;ll need a gig or two I&#8217;d expect. (ps sorry for misspelling your handle)<br />
<strong> fuadar:</strong> @topperge so what you are saying is just go thru the oid software install process and then so the repca manually<br />
<strong> fuadar:</strong> @topperge i am using the Oracle Identity management dvd&#8217;s 10.1.4.0.1<br />
<strong> dannorris:</strong> @fuadar Install RepCA first, run it, then install OID from IdM and tell it to use the repos you created.<br />
<strong> dannorris:</strong> @fuadar be sure to check DB prereqs (version, pkgs, options, etc.). Follow section here http://snurl.com/1xzda<br />
<strong> fuadar: </strong>@dannorris thanks reinstalling the software now<br />
<strong> topperge:</strong> @fuadar There is a 10.1.4 MRCA with the DVDs, install from that first , then install from the OIM Infrastructure CD second<br />
<strong> topperge:</strong> @fuadar then make sure you patch to 10.1.4.2 which is patch 5983637 on metalink (doing the same install right now) </em></p>
<p>Even patch numbers! Posting that same question to a forum would likely have taken several hours to get responses&#8211;and precise responses as well. Now, I don&#8217;t want everyone to believe that @topperge (<a href="http://www.matttopper.com/">Matt Topper</a>) and I sit around all day looking for questions we can answer on Twitter. However, I am on Twitter most of the time (even though I don&#8217;t tweet that often) and occasionally will throw a response or post in when I think of it. Matt is usually there and seems to behave similarly most of the time.</p>
<p>The bottom line: today, Twitter helped someone solve a real technical problem much faster than they were likely to solve it via other means (web 2 dot oh or otherwise). I don&#8217;t know that it happens every day, but we can only save one life at a time <img src='http://www.dannorris.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>You can follow me (<a href="http://twitter.com/dannorris">@dannorris</a>) on twitter, but as I don&#8217;t say much, you won&#8217;t likely be impressed. After all, I&#8217;m no <a href="http://twitter.com/jkuramot">Jake Kuramoto</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dannorris.com/2008/01/22/cool-thing-happened-on-twitter-today/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
