<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://rss.integryst.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>WebCenter Interaction, ALUI, Plumtree blog by Integryst</title>
	
	<link>http://blog.integryst.com/webcenter-interaction</link>
	<description>WebCenter Interaction, ALUI, Plumtree</description>
	<lastBuildDate>Mon, 06 Sep 2010 21:24:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://rss.integryst.com/webcenter-interaction" /><feedburner:info uri="webcenter-interaction" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Wall of Shame Rant: Comment Spammers</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/NtxEZq8r9iQ/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/09/06/wall-of-shame-rant-comment-spammers/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 21:24:34 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Integryst]]></category>
		<category><![CDATA[wall of shame]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=599</guid>
		<description><![CDATA[I know I haven&#8217;t posted in a while, but &#8211; wow - those comments keep coming in!  Oh wait, no, they&#8217;re all from spammers who clearly have nothing to do but waste my time deleting them all.  These leeches should all &#8230; well, let&#8217;s keep it clean for the kiddies.  Spam is a fact of life, [...]]]></description>
			<content:encoded><![CDATA[<p>I know I haven&#8217;t posted in a while, but &#8211; wow - those comments keep coming in!  Oh wait, no, they&#8217;re all from spammers who clearly have nothing to do but waste my time deleting them all.  These leeches should all &#8230; well, let&#8217;s keep it clean for the kiddies.  Spam is a fact of life, and it&#8217;s only <a title="Spam Stats" href="http://www.spamlaws.com/spam-stats.html" target="_blank">going to</a> <a href="http://www.junk-o-meter.com/stats/index.php" target="_blank">get</a> <a href="http://akismet.com/stats/" target="_blank">worse</a>.</p>
<p>Fortunately, I was able to get a little bit of satisfaction recently by NOT approving the following post:</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/09/comment-spam.png"><img class="alignnone size-full wp-image-600" title="comment-spam" src="http://blog.integryst.com/webcenter-interaction/files/2010/09/comment-spam.png" alt="" width="606" height="81" /></a></p>
<p><em>Dear Russian Mafia, I didn&#8217;t approve this asshole&#8217;s comment.  You know what to do.  </em></p>
<p>For the rest of you all, I&#8217;ve turned on Captchas for commenting so at least the automated spambots will be kept out.  Sorry for the additional 10 seconds when posting comments here!</p>

<p><a href="http://feedads.g.doubleclick.net/~a/Tedj28Mt5ovr6bzigYyVE7Ha6yI/0/da"><img src="http://feedads.g.doubleclick.net/~a/Tedj28Mt5ovr6bzigYyVE7Ha6yI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Tedj28Mt5ovr6bzigYyVE7Ha6yI/1/da"><img src="http://feedads.g.doubleclick.net/~a/Tedj28Mt5ovr6bzigYyVE7Ha6yI/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/NtxEZq8r9iQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/09/06/wall-of-shame-rant-comment-spammers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/09/06/wall-of-shame-rant-comment-spammers/</feedburner:origLink></item>
		<item>
		<title>Some musings on passwords</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/zp8PyoOlP-I/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/08/19/some-musings-on-passwords/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 10:11:18 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[passwords]]></category>
		<category><![CDATA[threat matrix]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=584</guid>
		<description><![CDATA[Ah, security.  Here we go again.  My thesis in this post is that we all occasionally mistake &#8220;complexity&#8221; for &#8220;security&#8221; when choosing passwords &#8211; or, as administrators, setting password policy.  An IT administrator who checks every box in the password policy configuration may not be doing much more to secure users&#8217; accounts than his peer [...]]]></description>
			<content:encoded><![CDATA[<p>Ah, security.  Here we go again.  My thesis in this post is that we all occasionally mistake &#8220;complexity&#8221; for &#8220;security&#8221; when choosing passwords &#8211; or, as administrators, setting password policy.  An IT administrator who checks every box in the password policy configuration may not be doing much more to secure users&#8217; accounts than his peer who sets a password to &#8220;<a href="http://www.youtube.com/watch?v=a6iW-8xPw3k" target="_blank">12345</a>&#8220; to &#8220;test things out&#8221; &#8211; and forgets to change it later.  Similarly, an admin who configures passwords to expire every two weeks may be less secure than a more pragmatic one who sets a time limit of 3 or 6 months.</p>
<p>Countless essays, papers, statistical analyses, and blog posts have discussed the topic of passwords (a remarkably rich subject), so hopefully I&#8217;m not just adding to the the noise by saying: All too often, I see people forget about the &#8220;Threat Matrix&#8221; (not related to, well, <a href="http://www.imdb.com/title/tt0364888/" target="_blank">anything by the same name</a>).</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/08/matrix.png"><img class="alignnone size-full wp-image-586" title="matrix" src="http://blog.integryst.com/webcenter-interaction/files/2010/08/matrix.png" alt="" width="354" height="258" /></a></p>
<p>The &#8220;threat matrix&#8221; is really a multi-dimensional graph of vulnerabilities, responses, and new vulnerabilities caused by those responses.  But for the sake of this post, let&#8217;s look at two of the dimensions:</p>
<ol>
<li><em>In what ways can a password be circumvented, and </em></li>
<li><em>How can you counter those threats in the most effective way</em>? </li>
</ol>
<p>A password can be beaten with a random string attack, dictionary attack, network sniffer, or simply a bad guy dropping by your office after-hours and rifling through your drawers.  A common mistake is thinking that common forms of thwarting some attacks necessarily make ALL attacks less likely.  Almost by definition, decreasing the odds of one attack type increase the odds of another. </p>
<p>So, to the admins out there setting security policy: consider that the security benefits to increasing password length and complexity requirements do NOT rise linearly with increased length and complexity.  In fact, they drop off pretty quickly.</p>
<ul>
<li>A password that has a requirement of &#8220;10 characters, at least one lower-case and one upper-case, one number, one special character, and one ancient greek symbol that doesn&#8217;t appear on your keyboard&#8221; is NOT a more secure password.  Because, by the time the frustrated user has tried 47 different memorable-but-impossible-to-remember passwords, s/he&#8217;s gonna have to write that damned thing down &#8211; and we all know THAT isn&#8217;t secure.</li>
<li>Full <a href="http://en.wikipedia.org/wiki/Leet" target="_blank">l33tspeak</a> is not a secure password strategy.  If every one of your passwords is the l33tspeak version of the username (alidbuser/@l1dbu$3r, contentdb/c0nt3ntdb), it&#8217;s not secure.</li>
<li>Dictionary attacks against a web site are impractical, and permanently locking accounts as a way to thwart them after 3 failed login attempts is ridiculous.  At very least, if you&#8217;re going to lock accounts, have them auto-unlock after 10 minutes.  This makes the effort to even try hundreds of passwords impractical, let alone the millions or billions that would be required for a full dictionary attack.</li>
</ul>
<p>I think of all the blog posts I&#8217;ve written, this may have taken the longest.  I&#8217;ve written, re-written, and trimmed pages and pages of text to basically complain about amazingly complex password rules that some clients have in place without even knowing WHY (&#8220;because they&#8217;re more secure&#8221; is not the correct answer). </p>
<p>As I&#8217;ve continually pruned this post so as not to completely bore you, I realize that the Threat Matrix is an important concept that all IT people should consider in all aspects of daily IT work.  There are plenty of real-world scenarios where the matrix of threats and responses are not fully understood, and hopefully we can make light of some of these in future posts.<span id="more-584"></span>Only semi-related: I DARE you to ask me some time why I think some TSA agents have no idea of how to practically apply a Threat Matrix.  I&#8217;ll tell you the stor(ies) of when that TSA agent took my 2-oz toothpaste tube out of the shaving kit &#8211; which, incidentally, is neither a liquid, nor a gel, nor an aerosol &#8211; and put it in a quart-size plastic bag (to make sure it would fit?), then sent me on my way.  It&#8217;s a good thing most terrorists are dumber than most TSA agents:  I&#8217;m glad <a href="http://abcnews.go.com/Blotter/terror-tape-times-square-bomber-wimped-suicide/story?id=11162584" target="_blank">this guy</a> never watched <a href="http://www.youtube.com/watch?v=LCf8z89HhE0#t=3m50s" target="_blank">this</a>.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/kGLolEJZ2gZ9M9ZVbc5Xg8Mr8Nk/0/da"><img src="http://feedads.g.doubleclick.net/~a/kGLolEJZ2gZ9M9ZVbc5Xg8Mr8Nk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/kGLolEJZ2gZ9M9ZVbc5Xg8Mr8Nk/1/da"><img src="http://feedads.g.doubleclick.net/~a/kGLolEJZ2gZ9M9ZVbc5Xg8Mr8Nk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/zp8PyoOlP-I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/08/19/some-musings-on-passwords/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/08/19/some-musings-on-passwords/</feedburner:origLink></item>
		<item>
		<title>Cool Tools 9: Atlassian Confluence</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/-WYGJARIzcw/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/08/16/cool-tools-9-atlassian-confluence/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 03:53:36 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Confluence]]></category>
		<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[Atlassian]]></category>
		<category><![CDATA[Wiki]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=579</guid>
		<description><![CDATA[I started the Cool Tools feature 3 years ago at Function1, and I’m sorry to say, I’ve listed everything you could possibly ever need now or in the future of WebCenter consulting, portal development, or portlet hacking.
HA! Truth is, while I’ve already done one lap around the “software utility” track, there are LOTs of Cool [...]]]></description>
			<content:encoded><![CDATA[<p>I started the <a href="http://blog.integryst.com/webcenter-interaction/category/cool-tools/">Cool Tools</a> feature 3 years ago at <a href="http://www.function1.com/category/cool-tools/page/2/" target="_blank">Function1</a>, and I’m sorry to say, I’ve listed everything you could possibly ever need now or in the future of WebCenter consulting, portal development, or portlet hacking.</p>
<p>HA! Truth is, while I’ve already done one lap around the “software utility” track, there are LOTs of Cool Tools out there &#8211; some directly related to portal development, debugging, or maintenance, and some more broadly defined.</p>
<p>In fact, I wouldn’t really consider today’s “Cool Tool” a “tool” at all – it’s a full-fledged application, and it’s likely to give the WebCenter stack a run for its money in the long term.</p>
<p>Allow me to introduce <a href="http://www.atlassian.com/software/confluence/" target="_blank">Atlassian’s Confluence</a> – one of the web’s best Wiki platforms out there. We’ve been working with this application a lot lately, and have been very impressed with it. It’s a powerful wiki platform, has a robust third-party support and development network, is dramatically less expensive than Oracle products, and provides many of the features some clients bought the Plumtree portal for. (Does it surprise you to know that a bunch of the old Plumtree team ended up there?)</p>
<p>When ALUI Publisher was released, BEA occasionally said it would be the blog and wiki platform that customers had been waiting for (it wasn’t). Then, we started hearing that the ill-fated product called <a href="http://forums.oracle.com/forums/thread.jspa?messageID=3113024" target="_blank">Pages</a> was the REAL blog and wiki platform (it wasn’t). 2009 brought us some more “<a href="http://blogs.oracle.com/WCI/2009/08/announcements_new_wci_sample_p.html" target="_blank">WCI Sample Portlets</a> available for the Wiki/Blog/Discussions functionality” (meh, didn’t really work). This year the message clients have been hearing “it’s all about <a href="http://download.oracle.com/docs/cd/E15523_01/webcenter.1111/e12405/wcadm_wiki.htm" target="_blank">WebCenter Spaces</a>”. Honestly, while we may or may not see the fabled 11g version of WebCenter Interaction, Spaces does look very intriguing. In my opinion, though, it’s still not as rich as the much more mature – some would say over-the-hill &#8211; WCI portal is now. And it certainly is not the right application for all WCI customers.</p>
<p>So, friends, until I see Oracle deliver the <a href="http://en.wikipedia.org/wiki/Loch_Ness_Monster" target="_blank">great</a>, <a href="http://en.wikipedia.org/wiki/Jackolope" target="_blank">mythical</a>, <a href="http://en.wikipedia.org/wiki/Abominable_snowman" target="_blank">elusive</a> Enterprise Wiki we’ve been hearing about for years, consider me firmly in the <a href="http://www.atlassian.com/" target="_blank">Atlassian</a> camp on this one – the stability, ease of use, price-point, and sizable third-party ecosystem are first-rate! Don’t take my word for it &#8211; try it out yourself for <a href="http://www.atlassian.com/software/confluence/pricing.jsp" target="_blank">ten bucks</a>.</p>
<p>Stay tuned for many more tips and follow-up posts on Confluence and other third-party products that can work alongside your existing portal implementations – and some posts on where Confluence falls short of a “full Portal Replacement”. Until then, feast your eyes on&#8230; THIS:</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/08/atlassian-confluence-profile.png"><img class="alignnone size-full wp-image-580" title="atlassian-confluence-profile" src="http://blog.integryst.com/webcenter-interaction/files/2010/08/atlassian-confluence-profile.png" alt="" width="392" height="329" /></a></p>
<p>OK I&#8217;m not going to lie to you, unlike most Cool Tools, it&#8217;s not easy to find a screen shot that embodies all of what a great wiki product Confluence is.  At least it&#8217;s not as hard as <a href="http://www.brighthub.com/multimedia/photography/articles/42713.aspx" target="_blank">taking a picture of the wind</a>&#8230;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/nly9W3285569cmNjkAEvsul5GIY/0/da"><img src="http://feedads.g.doubleclick.net/~a/nly9W3285569cmNjkAEvsul5GIY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/nly9W3285569cmNjkAEvsul5GIY/1/da"><img src="http://feedads.g.doubleclick.net/~a/nly9W3285569cmNjkAEvsul5GIY/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/-WYGJARIzcw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/08/16/cool-tools-9-atlassian-confluence/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/08/16/cool-tools-9-atlassian-confluence/</feedburner:origLink></item>
		<item>
		<title>Treat Collaboration Server as a REST-based API</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/B78Sc3i4WOo/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/08/05/treat-collaboration-server-as-a-rest-based-api/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 16:16:56 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Coding Tricks]]></category>
		<category><![CDATA[Collaboration Server]]></category>
		<category><![CDATA[Code Samples]]></category>
		<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[hack]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=552</guid>
		<description><![CDATA[The IDK methods for Collaboration Server are terribly sparse &#8211; you can&#8217;t get calendar events, file sizes, or a whole bunch of other critical data that you may want if you were to actually embark on a mission to write a better UI for Collab (trust me, I have).  Sure you could try and use [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://download.oracle.com/docs/cd/E13158_01/alui/wci/docs103/devguide/con_prc_collaboration.html" target="_blank">IDK methods for Collaboration Server </a>are terribly sparse &#8211; you can&#8217;t get calendar events, file sizes, or a whole bunch of other critical data that you may want if you were to actually embark on a mission to write a better UI for Collab (trust me, I have).  Sure you could try and use the woefully undocumented Collab API &#8211; I&#8217;ve shown you how to <a href="http://blog.integryst.com/webcenter-interaction/2010/07/05/deploying-wci-api-applications-without-the-portal-installed" target="_self">deploy the portal API</a> in the past &#8211; but that&#8217;s a challenge in and of itself.</p>
<p>Instead, let&#8217;s look at an alternate approach:  use the Collab Server as a sort of <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" target="_blank">REST API</a>.  It&#8217;s not really, but the basic idea is that you use URLs in your code to directly call functionality in Collaboration Server to do certain tasks.  For example, say you want to add a Collaboration project to a page programmatically; there is no mechanism to do this through the IDK, and we have no idea how to use the API, but using a <a href="http://blog.integryst.com/webcenter-interaction/2010/08/02/cool-tools-8-iewatch" target="_self">header tool</a>, we find that through Project Explorer, it works with a simple URL: <strong>/collab/do/project/selector/add?commPage=true&amp;projID=COLLABID</strong>.</p>
<p>So, it turns out we can do the same thing programmatically, by using Java&#8217;s network libraries to call that URL directly (setting the proper authenticationid).  The code after the jump shows an example of how to do this; we use this approach in <a href="http://www.integryst.com/site/integryst.i/page/products/204/automater/466" target="_self">Integryst&#8217;s Automater</a>, which allows you to script a bunch of actions at a time (what good is automatically creating a collab project if you can&#8217;t add it to a community page you just created!?). </p>
<p>Tweak away!</p>
<p><span id="more-552"></span></p>
<pre class="brush: java">
int collabID = ParamHelper.getIntParamValue(getInputs(),&quot;collabid&quot;,-1);
int communityID = ParamHelper.getIntParamValue(getInputs(),&quot;communityid&quot;,-1);
String wsapi = ParamHelper.getParamValue(getInputs(),&quot;wsapi&quot;);

String response = &quot;&quot;;

LOG.info(&quot;&gt; Add Collab Project to Community. Params [collabID=&quot; + collabID + &quot;, communityID=&quot; + communityID + &quot;]&quot;);

// the IDK doesn&#039;t provide methods for attaching messages to documents, so we use HTTP methods to do that
// collab settings for direct connection
String host = ParamHelper.getParamValue(getInputs(),&quot;collab.host&quot;);
String port = ParamHelper.getParamValue(getInputs(),&quot;collab.port&quot;);
String user = ParamHelper.getParamValue(getInputs(),&quot;collab.user&quot;);
String pass= ParamHelper.getParamValue(getInputs(),&quot;collab.pass&quot;);

// these may not be needed...
String imageserver = ParamHelper.getParamValue(getInputs(),&quot;collab.imageserverurl&quot;);
String gadgetid = ParamHelper.getParamValue(getInputs(),&quot;collab.gadgetid&quot;);
String pageid = ParamHelper.getParamValue(getInputs(),&quot;collab.pageid&quot;);
String userid = ParamHelper.getParamValue(getInputs(),&quot;collab.userid&quot;);
String username = ParamHelper.getParamValue(getInputs(),&quot;collab.username&quot;);

String addr = &quot;http://&quot; + host + &quot;:&quot; + port + &quot;/collab/do/project/selector/add?commPage=true&amp;amp;amp;amp;amp;projID=&quot; + collabID;

try{
LOG.debug(&quot;Attempting Collab Connection to &quot; + addr);
URL url = new URL(addr);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
String encoding = new sun.misc.BASE64Encoder().encode((user + &quot;:&quot; + pass).getBytes());
conn.setRequestProperty (&quot;Authorization&quot;, &quot;Basic &quot; + encoding);
conn.setRequestProperty (&quot;CSP-Aggregation-Mode&quot;, &quot;Multiple&quot;);
conn.setRequestProperty (&quot;CSP-Activity-Rights&quot;, &quot;uri%u003A%u002F%u002Furi%u002Ecollaboration %u002Eplumtree%u002Ecom%u002Factivity%u002Fviewpresence,uri%u003A%u002F %u002Furi%u002Ecollaboration %u002Eplumtree%u002Ecom %u002Factivity%u002Fbulkupload,uri%u003A %u002F%u002Furi%u002Ecollaboration%u002Eplumtree%u002Ecom%u002Factivity %u002Fmanagecollab,uri%u003A%u002F%u002Furi %u002Ecollaboration %u002Eplumtree%u002Ecom%u002Factivity %u002Fmanagecollabprojects&quot;);
conn.setRequestProperty (&quot;CSP-Gateway-Specific-Config&quot;,
&quot;PT-User-Name=&quot; + username + &quot;,&quot; +
&quot;PT-User-ID=&quot; + userid + &quot;,&quot; +
&quot;PT-Community-ID=&quot; + communityID + &quot;,&quot; +
&quot;PT-Gadget-ID=&quot; + gadgetid + &quot;,&quot; +
&quot;PT-Gateway-Version=2.5,&quot; +
&quot;PT-Content-Mode=1,&quot; +
&quot;PT-Time-Zone=America%u002FNew%u005FYork,&quot; +
&quot;PT-Imageserver-URI=&quot; + imageserver + &quot;/,&quot; +
&quot;PT-User-Charset=UTF-8,&quot; +
&quot;PT-Page-ID=&quot; + pageid + &quot;,&quot; +
&quot;PT-Community-ACL=15,&quot; +
&quot;PT-SOAP-API-URI=&quot; + wsapi + &quot;,&quot; +
&quot;PT-Class-ID=43,&quot; +
&quot;PT-Guest-User=0&quot;);

conn.setRequestProperty (&quot;USER-AGENT&quot;, &quot;Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)&quot;);
conn.setRequestProperty (&quot;CSP-Gateway-Type&quot;, &quot;Plumtree&quot;);
conn.setRequestProperty (&quot;CSP-User-Info&quot;, &quot;FullName=&quot; + username);
conn.setRequestProperty (&quot;CSP-Protocol-Version&quot;, &quot;1.3&quot;);
conn.setRequestProperty (&quot;Accept-Language&quot;, &quot;en-us&quot;);
conn.setRequestProperty (&quot;CSP-Can-Set&quot;, &quot;Gadget-User,User,Gadget-Realm,Realm&quot;);
conn.setRequestProperty (&quot;Host&quot;, host + &quot;:&quot; + port);
conn.setRequestProperty (&quot;ACCEPT&quot;, &quot;*/*&quot;);
conn.setRequestProperty (&quot;Accept-Encoding&quot;, &quot;gzip&quot;);
conn.setRequestMethod(&quot;GET&quot;);

conn.connect();

// read the headers
for (int i=0; ; i++) {
String headerName = conn.getHeaderFieldKey(i);
String headerValue = conn.getHeaderField(i);

if (headerName == null &amp;amp;amp;amp;amp;&amp;amp;amp;amp;amp; headerValue == null) {
// No more headers
break;
}
if (headerName == null)
LOG.debug(&quot;Response: &quot; + headerValue);
else
LOG.debug(&quot;Response Header: &quot; + headerName + &quot;: &quot; + headerValue);
}

InputStream in = conn.getInputStream();

// read the response
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String text = reader.readLine();
if (text != null)
LOG.debug(&quot;Response Text: &quot; + text);

response += &quot;Project &quot; + collabID + &quot; has been added to community : &quot; + communityID + &quot;
&quot;;

conn.disconnect();
}
catch(Exception ex) {
response = &quot;Exception adding project &quot; + collabID + &quot; to community &quot; + communityID + &quot;: &quot; + ex.getMessage();
LOG.error(response, ex);
}

addOutput(new Param(&quot;collabid&quot;, &quot;&quot; + collabID, &quot;output&quot;, null));
addOutput(new Param(&quot;communityid&quot;, &quot;&quot; + communityID, &quot;output&quot;, null));

LOG.info(&quot;&lt; Add Collab Project to Community: &quot; + response);
return response;
}
</pre>

<p><a href="http://feedads.g.doubleclick.net/~a/vSQU-tu5oh8ByULFabydLR-k9o8/0/da"><img src="http://feedads.g.doubleclick.net/~a/vSQU-tu5oh8ByULFabydLR-k9o8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/vSQU-tu5oh8ByULFabydLR-k9o8/1/da"><img src="http://feedads.g.doubleclick.net/~a/vSQU-tu5oh8ByULFabydLR-k9o8/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/B78Sc3i4WOo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/08/05/treat-collaboration-server-as-a-rest-based-api/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/08/05/treat-collaboration-server-as-a-rest-based-api/</feedburner:origLink></item>
		<item>
		<title>Cool Tools 8: IEWatch</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/zPbTgEnBcNM/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/08/02/cool-tools-8-iewatch/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 21:39:54 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[debugger]]></category>
		<category><![CDATA[header tool]]></category>
		<category><![CDATA[IE]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=568</guid>
		<description><![CDATA[You know what I like about Integryst&#8217;s Cool Tools feature?  You guys always have great alternatives to the specific problems these tools solve &#8211; the Cool Tool feature of Benthic&#8217;s Golden drew more comments than any other post, and they were all great!
I&#8217;ve profiled header tools before (FireBug is an obvious one), but I haven&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>You know what I like about Integryst&#8217;s <a href="http://blog.integryst.com/webcenter-interaction/category/cool-tools/" target="_self">Cool Tools</a> feature?  You guys always have great alternatives to the specific problems these tools solve &#8211; the Cool Tool feature of <a href="http://blog.integryst.com/webcenter-interaction/2010/07/21/cool-tools-7-benthic-softwares-golden/" target="_self">Benthic&#8217;s Golden</a> drew more comments than any other post, and they were all great!</p>
<p>I&#8217;ve profiled header tools before (<a href="http://www.function1.com/2007/08/cool-tools-part-i-firebug/" target="_blank">FireBug</a> is an obvious one), but I haven&#8217;t profiled any IE header/debug tools yet.  I&#8217;ve used <a href="http://www.ieinspector.com/httpanalyzer/index.html" target="_blank">IEInspector&#8217;s HTTP Analyzer</a> before, but for the love of all that was Holy and Mighty, that thing crashed IE more often than a WebCenter Consultant on a 24 hour code bender (didn&#8217;t see that one coming did you?  yeah, I&#8217;m not funny).</p>
<p>So, today&#8217;s profile is for my latest IE header tool of choice: <a href="http://www.iewatch.com/ieprofessional.aspx" target="_blank">IEWatch&#8217;s IEWatch Professional</a>.  It&#8217;s not cheap at $169, but at least it&#8217;s not as bad as HTTP Analyzer and doesn&#8217;t fold like a cheap suit (yeah, i don&#8217;t even know what that means.  i&#8217;m not funny.).  The tool is straightforward:  install it and choose View: Explorer Bars: IEWatch from IE&#8217;s menu, and you&#8217;ve got a slick header tool that gives you a decent snapshot of what IE is doing behind the scenes, showing requests, responses, post data, and pretty much everything else you need to diagnose a poorly performing ALUI portal&#8230;</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/portal-iewatch.png"><img class="alignnone size-full wp-image-569" title="portal-iewatch" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/portal-iewatch.png" alt="" width="613" height="197" /></a></p>
<p>So here&#8217;s my question &#8211; given that HTTP Analyzer is cheaper, but has more bugs than <a href="http://www.mnh.si.edu/education/fieldtrip/planned_programs/insect_zoo/" target="_blank">this place</a> (sheeeesh!  i TOLD YOU i wasn&#8217;t funny!), what IE header tool do YOU use?</p>

<p><a href="http://feedads.g.doubleclick.net/~a/-Ig9dfPGKeSy4P9GXrgq0VW6zPw/0/da"><img src="http://feedads.g.doubleclick.net/~a/-Ig9dfPGKeSy4P9GXrgq0VW6zPw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/-Ig9dfPGKeSy4P9GXrgq0VW6zPw/1/da"><img src="http://feedads.g.doubleclick.net/~a/-Ig9dfPGKeSy4P9GXrgq0VW6zPw/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/zPbTgEnBcNM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/08/02/cool-tools-8-iewatch/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/08/02/cool-tools-8-iewatch/</feedburner:origLink></item>
		<item>
		<title>Changing the Server Name for Automation Server</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/RSVKHp3F6u4/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/07/29/changing-the-server-name-for-automation-server/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 19:02:31 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Automation Server]]></category>
		<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[best practices]]></category>
		<category><![CDATA[host files]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=547</guid>
		<description><![CDATA[It&#8217;s not without some controversy (OK, &#8220;spirited discussion&#8221;), but I&#8217;ve strongly recommended the use of host files to aid environment portability.  If you&#8217;re a believer in this &#8220;alias&#8221; approach, you&#8217;ll find that for some components, it isn&#8217;t very obvious how to set up those aliases.  This isn&#8217;t quite a host file hack, but serves the same [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s not <a href="http://blog.integryst.com/webcenter-interaction/2010/06/08/use-host-files-for-better-wci-environment-portability-and-mobility/" target="_self">without some controversy</a> (OK, &#8220;spirited discussion&#8221;), but I&#8217;ve strongly recommended the use of host files to aid environment portability.  If you&#8217;re a believer in this &#8220;alias&#8221; approach, you&#8217;ll find that for some components, it isn&#8217;t very obvious how to set up those aliases.  This isn&#8217;t quite a host file hack, but serves the same purpose:  when you migrate the database from one environment to the other, you want to avoid having to change as many settings as possible.</p>
<p>One of these settings is the ALUI Automation Server: in &#8220;Select Utility: Automation Service&#8221;, you get a list of servers running the Automation Service, and can set which administrative folders are associated to which Job (aka Automation) Servers.  If you migrate the portal database between environments, you might have one entry show up for &#8220;PRODPORTAL3&#8243; (in prod) and another for &#8220;PORTALDEV9&#8243; (in dev).  But then in the dev environment you have to re-register every one of the folders that was associated with the prod folder. </p>
<p>What if you could just create an alias that worked in both environments?  Fortunately, you can, and the tweak is easy:  Just edit %PT_HOME%\settings\configuration.xml in both environments, and change the value below to be the same thing.  Then, when the automation server in either environment starts up, it&#8217;ll look for jobs registered with that same name:</p>
<pre class="brush: xml">
&lt;component name=&quot;automation:server&quot; type=&quot;http://www.plumtree.com/ config/component/types/automation&quot;&gt;
&lt;setting name=&quot;automation-server:server-name&quot;&gt;
&lt;value xsi:type=&quot;xsd:string&quot;&gt;WCI-AUTOMATION&lt;/value&gt;
&lt;/setting&gt;
</pre>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-automation.png"><img class="alignnone size-full wp-image-548" title="alui-automation" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-automation.png" alt="" width="336" height="188" /></a></p>
<p>Oh, and if you&#8217;re a &#8220;UI&#8221; kind of person, you can achieve the same result by changing the name through the Configuration Manager:</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-automation1.png"><img class="alignnone size-full wp-image-564" title="alui-automation" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-automation1.png" alt="" width="431" height="204" /></a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/47HYJsov4oEvRzPu0wd4jaUS1L0/0/da"><img src="http://feedads.g.doubleclick.net/~a/47HYJsov4oEvRzPu0wd4jaUS1L0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/47HYJsov4oEvRzPu0wd4jaUS1L0/1/da"><img src="http://feedads.g.doubleclick.net/~a/47HYJsov4oEvRzPu0wd4jaUS1L0/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/RSVKHp3F6u4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/07/29/changing-the-server-name-for-automation-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/07/29/changing-the-server-name-for-automation-server/</feedburner:origLink></item>
		<item>
		<title>What Pages are those Portlets on?</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/hPRk0o7ss6s/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/07/25/what-pages-are-those-portlets-on/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 00:51:35 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[WebCenter Interaction]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=542</guid>
		<description><![CDATA[You can do a lot with a few simple SQL queries against the ALUI / WCI database.  Oracle (and I) strongly discourage any direct database updating without using the API, but there&#8217;s nothing out there that says you can&#8217;t QUERY the database &#8211; heck, for Analytics server, it&#8217;s actually encouraged (PDF Link).
So, today&#8217;s post is [...]]]></description>
			<content:encoded><![CDATA[<p>You can do a lot with a few simple SQL queries against the ALUI / WCI database.  Oracle (and I) strongly discourage any direct database updating without <a href="http://blog.integryst.com/webcenter-interaction/2010/07/05/deploying-wci-api-applications-without-the-portal-installed/" target="_self">using the API</a>, but there&#8217;s nothing out there that says you can&#8217;t QUERY the database &#8211; heck, for Analytics server, it&#8217;s <a href="http://download.oracle.com/docs/cd/E13158_01/alui/analytics/docs103/schema/Database_Schema_Oracle_WebCenter_Analytics_v10-3.pdf" target="_blank">actually encouraged</a> (PDF Link).</p>
<p>So, today&#8217;s post is an easy one that answers the question: &#8220;which pages and communities are my portlets displayed on&#8221;?  The SQL is simple:</p>
<pre class="brush: sql">

 select
                        ptcommunities.name community_name,
                        ptpages.name page_name,
                        ptgadgets.name portlet_name
from
                        ptcommunities,
                        ptpages,
                        ptpagegadgets,
                        ptgadgets
where
                        ptcommunities.folderid = ptpages.folderid
and                ptpagegadgets.gadgetid = ptgadgets.objectid
and                ptpages.objectid = ptpagegadgets.pageid
</pre>
<p>&#8230; and you&#8217;ll get a list of communities, pages and portlets that you can sort or filter any way you want:</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-pages-portlets.png"><img class="alignnone size-full wp-image-543" title="alui-pages-portlets" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-pages-portlets.png" alt="" width="449" height="441" /></a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/xLojP97ANXZ35jjp2vyFLzoU8Gs/0/da"><img src="http://feedads.g.doubleclick.net/~a/xLojP97ANXZ35jjp2vyFLzoU8Gs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/xLojP97ANXZ35jjp2vyFLzoU8Gs/1/da"><img src="http://feedads.g.doubleclick.net/~a/xLojP97ANXZ35jjp2vyFLzoU8Gs/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/hPRk0o7ss6s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/07/25/what-pages-are-those-portlets-on/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/07/25/what-pages-are-those-portlets-on/</feedburner:origLink></item>
		<item>
		<title>Cool Tools 7: Benthic Software’s Golden</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/HG-LhL1GF9E/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/07/21/cool-tools-7-benthic-softwares-golden/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 18:41:23 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[database]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=539</guid>
		<description><![CDATA[For those of you that use the Oracle DB in your portal stack (or for pretty much anything), you know what an atrocity Oracle&#8217;s SQL*Plus is (it&#8217;s more dated than Plumtree / ALUI!).  I&#8217;ve looked on and off over the years for a simple Oracle client that works as well as Microsoft&#8217;s SQL Server Management [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you that use the Oracle DB in your portal stack (or for pretty much anything), you know what an atrocity Oracle&#8217;s SQL*Plus is (it&#8217;s more dated than Plumtree / ALUI!).  I&#8217;ve looked on and off over the years for a simple Oracle client that works as well as Microsoft&#8217;s SQL Server Management Studio, and I want to thank Hani Atalla for turning me on to this one: <a href="http://www.benthicsoftware.com/products.htm" target="_blank">Benthic Software&#8217;s Golden</a>.  It&#8217;s hyper-simple to use, and even has all the &#8220;creature comforts&#8221; like being able to copy a result set into an Excel Spreadsheet (try doing THAT with SQL*Plus!).  It does require <a href="http://www.oracle.com/technology/tech/oci/instantclient/index.html" target="_blank">Oracle&#8217;s Instant Client</a> to work, but even I (as a non-Oracle DBA) was able to install both in a matter of minutes.</p>
<p>If you&#8217;ve sweated through SQL*Plus sessions for way too long, definitely check this tool out &#8211; it&#8217;s cheap, at only $40.  If you&#8217;ve got a better tool for quick and easy Oracle DB queries, I&#8217;d love to hear about it in the comments!</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/benthic-golden.png"><img class="alignnone size-full wp-image-540" title="benthic-golden" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/benthic-golden.png" alt="" width="399" height="478" /></a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/c8sjpy13mb4YxxH5Fw68kYp9uuk/0/da"><img src="http://feedads.g.doubleclick.net/~a/c8sjpy13mb4YxxH5Fw68kYp9uuk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/c8sjpy13mb4YxxH5Fw68kYp9uuk/1/da"><img src="http://feedads.g.doubleclick.net/~a/c8sjpy13mb4YxxH5Fw68kYp9uuk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/HG-LhL1GF9E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/07/21/cool-tools-7-benthic-softwares-golden/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/07/21/cool-tools-7-benthic-softwares-golden/</feedburner:origLink></item>
		<item>
		<title>Analytics – SAML2Keystore value</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/K9eMJ85VuCI/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/07/17/analytics-saml2keystore-value/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 06:25:38 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[configuration]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=531</guid>
		<description><![CDATA[Look, I&#8217;ll make this quick and profess my ignorance:  I&#8217;m not really sure what the whole &#8220;Key Service&#8221; thing is in WebCenter Analytics; it&#8217;s obviously a security token that needs to be set in multiple places (the Configuration Manager and Java Keystore) to work properly.  A little while ago, I had a client accidentally change the value, [...]]]></description>
			<content:encoded><![CDATA[<p>Look, I&#8217;ll make this quick and profess my ignorance:  I&#8217;m not really sure what the whole &#8220;Key Service&#8221; thing is in WebCenter Analytics; it&#8217;s obviously a security token that needs to be set in multiple places (the Configuration Manager and Java Keystore) to work properly.  A little while ago, I had a client accidentally change the value, and Analytics wouldn&#8217;t work.  The keystore passphrase no doubt exists somewhere in the Analytics JRE, but I couldn&#8217;t find out where to reset it.  So, I couldn&#8217;t find out where to change it in the JRE, and didn&#8217;t know what it was suppose to be, so Analytics was DOA.</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-analytics-passphrase.png"><img class="alignnone size-full wp-image-532" title="alui-analytics-passphrase" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-analytics-passphrase.png" alt="" width="400" height="280" /></a></p>
<p>I got lucky on this one, and hopefully if you found this post through a Google Search, you&#8217;ll have saved yourself the headache of trying to figure out what value should be in there.  The answer is in the <a href="http://download.oracle.com/docs/cd/E12529_01/analytics25/worksheet_MP1/Installation_Configuration_Worksheets_AL_Analytics_ALI_v2-5.pdf" target="_blank">Analytics Configuration Worksheet</a> (PDF link):</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-analytics-worksheet.png"><img class="alignnone size-full wp-image-533" title="alui-analytics-worksheet" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-analytics-worksheet.png" alt="" width="547" height="171" /></a></p>
<p>That&#8217;s right: it&#8217;s &#8220;<strong>saml2keystore</strong>&#8220;.  Anyone know how to reset the actual value in Java&#8217;s Keystore for Analytics?</p>

<p><a href="http://feedads.g.doubleclick.net/~a/ZHTe81BQD_t9eFnkkEGjL3O2CXk/0/da"><img src="http://feedads.g.doubleclick.net/~a/ZHTe81BQD_t9eFnkkEGjL3O2CXk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ZHTe81BQD_t9eFnkkEGjL3O2CXk/1/da"><img src="http://feedads.g.doubleclick.net/~a/ZHTe81BQD_t9eFnkkEGjL3O2CXk/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/K9eMJ85VuCI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/07/17/analytics-saml2keystore-value/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/07/17/analytics-saml2keystore-value/</feedburner:origLink></item>
		<item>
		<title>Security Reminder: Stay Vigalent!</title>
		<link>http://rss.integryst.com/~r/webcenter-interaction/~3/OkZCJSM2H3U/</link>
		<comments>http://blog.integryst.com/webcenter-interaction/2010/07/13/security-reminder-stay-vigalent/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 14:03:11 +0000</pubDate>
		<dc:creator>Matt Chiste</dc:creator>
				<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[Logs]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[best practices]]></category>
		<category><![CDATA[logging]]></category>

		<guid isPermaLink="false">http://blog.integryst.com/webcenter-interaction/?p=521</guid>
		<description><![CDATA[Government work can be a challenge with all the rules, regulations, and procedures that come with it.  But there&#8217;s one thing I have to continually remind myself when dealing with that &#8220;way too much paperwork&#8221; thing: whether I&#8217;m administering a government web site, ALUI portal, or any other web application is that security can and MUST [...]]]></description>
			<content:encoded><![CDATA[<p>Government work can be a challenge with all the rules, regulations, and procedures that come with it.  But there&#8217;s one thing I have to continually remind myself when dealing with that &#8220;way too much paperwork&#8221; thing: whether I&#8217;m administering a government web site, ALUI portal, or any other web application is that security can and MUST be taken seriously at all times. </p>
<p>So, consider this a friendly reminder &#8211; especially if you&#8217;re exposing your portal on the Internet: stay vigalent, and take all threats seriously.  About 18 months ago, I got an alert in the middle of the night that we were out of drive space on a portal server at one of my semi-government clients.  No big deal; it happens all the time.  Only this time it was different.  Overnight, our logs had exploded from roughly 20MB/day to 2GB/day:  something was seriously wrong.  The logs were so big they were hard to even open, but when i did finally crack them open, here&#8217;s a snippet of what I found:</p>
<p><a href="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-security-log.png"><img class="alignnone size-full wp-image-522" title="alui-security-log" src="http://blog.integryst.com/webcenter-interaction/files/2010/07/alui-security-log.png" alt="" width="583" height="191" /></a></p>
<p>Basically, there were GIGABYTES of these requests &#8211; someone was scanning our servers, alternating in different object IDs for different spaces, looking for incorrectly secured communities or other portal objects.  They were basically just scanning different activity spaces, making all kinds of semi-random requests with different IDs a couple times a second.</p>
<p>It turned out that these particular baddies weren&#8217;t that sophisticated: they were making no effort to conceal their source IPs through some sort of distributed attack, and their algorithm clearly didn&#8217;t demonstrate a deep knowledge of how portal URLs are constructed.  And honestly, we were lucky for even finding this attack in the first place because at the time we didn&#8217;t regularly audit the logs, and only caught it because of that benign disk space warning.</p>
<p>In the end, we blocked the entire subnet (from <a href="http://www.dailyfinance.com/story/u-s-wants-answers-from-china-on-cyber-attack-on-google/19315841/" target="_blank">China, a notorious hacker hangout</a>), and the attacks stopped.  We should have <a href="http://www.fbi.gov/cyberinvest/computer_intrusions.htm" target="_blank">reported the attempted breach</a>, and I certainly would if it happened again, but I&#8217;m sharing this story with a single moral: no matter how &#8220;little&#8221; you think your site may be or how you think &#8220;noone cares about my little corner of the internet&#8221;, the bad guys are out there, and they don&#8217;t discriminate when they&#8217;re looking for victims.</p>
<p>So, take a minute today to check your security settings one more time, and keep an eye on those log files for anything suspicious!</p>

<p><a href="http://feedads.g.doubleclick.net/~a/mXGFSHefoB4BeHyE4wy7FTPcqik/0/da"><img src="http://feedads.g.doubleclick.net/~a/mXGFSHefoB4BeHyE4wy7FTPcqik/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/mXGFSHefoB4BeHyE4wy7FTPcqik/1/da"><img src="http://feedads.g.doubleclick.net/~a/mXGFSHefoB4BeHyE4wy7FTPcqik/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/webcenter-interaction/~4/OkZCJSM2H3U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.integryst.com/webcenter-interaction/2010/07/13/security-reminder-stay-vigalent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.integryst.com/webcenter-interaction/2010/07/13/security-reminder-stay-vigalent/</feedburner:origLink></item>
	</channel>
</rss>
