<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Henri Kaukola</title>
    <link>http://www.kaukolaweb.com/blog/</link>
    <description>Henri Kaukola's Weblog</description>
          <language>en</language>
              <webMaster>henri@kaukolaweb.com</webMaster>
        <dc:title>Henri Kaukola</dc:title>
    <generator>Midgard Components Framework - de.linkm.newsticker</generator>
    <item>
        <dc:subject>How's the weather in Helsinki right now?</dc:subject>
        <title>How's the weather in Helsinki right now?</title>
        <link>http://www.kaukolaweb.com/blog/how-s-the-weather-in-helsinki-right-now-.html</link>
        <guid isPermaLink="true">http://www.kaukolaweb.com/blog/how-s-the-weather-in-helsinki-right-now-.html</guid>
        <pubDate>Tue, 08 Nov 2005 21:06:48 +0200</pubDate>
                  <dc:creator>Henri Kaukola</dc:creator>
                <description>The Helsinki Testbed project has launched a local weather service plug-in for Google Earth. The plug-in shows near real-time weather data gathered from the Testbed network.
A pretty cool idea from the Helsinki Testbed project to take advantage of the Google Earth to display local weather parameters around Helsinki area.

In addition to looking out the window, I'm now able to check what may be expected en route. After getting totally soaked several times while biking to work I can see the benefits. Now I just need to move the computer to the living room...

See the Testbed project site for more information on the plug-in.
</description>
        <content:encoded><![CDATA[The Helsinki Testbed project has launched a local weather service plug-in for Google Earth. The plug-in shows near real-time weather data gathered from the Testbed network.
<p>A pretty cool idea from the <a href="http://testbed.fmi.fi/">Helsinki Testbed project</a> to take advantage of the <a href="http://earth.google.com/">Google Earth</a> to display local weather parameters around Helsinki area.</p>

<p>In addition to looking out the window, I'm now able to check what may be expected en route. After getting totally soaked several times while biking to work I can see the benefits. Now I just need to move the computer to the living room...</p>

<p>See the <a href="http://testbed.fmi.fi/other.html">Testbed project site</a> for more information on the plug-in.</p>
]]></content:encoded>
        <category>General</category>
            </item>
    <item>
        <dc:subject>Updates</dc:subject>
        <title>Updates</title>
        <link>http://www.kaukolaweb.com/blog/updates.html</link>
        <guid isPermaLink="true">http://www.kaukolaweb.com/blog/updates.html</guid>
        <pubDate>Mon, 03 Oct 2005 21:05:47 +0300</pubDate>
                  <dc:creator>Henri Kaukola</dc:creator>
                <description>I've been super-lazy lately with my blog. That's not going to change any time soon but here's some quick updates.
The summer went by on overdrive. We bought an apartment (3 rooms, kitchen, sauna and backyard the size of a stamp) from Lippajärvi and entered the category of high-debt families. Well, as my friend says, the debt is (financial) capital.

Obviously, the whole apartment thingy has taken quite a lot of time. Our son, Akseli, is also growing rapidly - I think I should order my... ermh... his Lego Robotics Invention System soon.
</description>
        <content:encoded><![CDATA[I've been super-lazy lately with my blog. That's not going to change any time soon but here's some quick updates.
<p>The summer went by on overdrive. We bought an apartment (3 rooms, kitchen, sauna and backyard the size of a stamp) from <a href="http://maps.google.com/maps?q=helsinki&amp;ll=60.230224,24.727221&amp;spn=0.029676,0.081050&amp;t=k&amp;hl=en" title="Lippajärvi on Google Maps">Lippajärvi</a> and entered the category of high-debt families. Well, as my friend says, <em>the debt is (financial) capital</em>.</p>

<p>Obviously, the whole apartment thingy has taken quite a lot of time. Our son, Akseli, is also growing rapidly - I think I should order my... ermh... <em>his</em> <a href="http://mindstorms.lego.com/eng/products/ris/index.asp" title="Lego's rock!">Lego Robotics Invention System</a> soon.</p>
]]></content:encoded>
        <category>General</category>
            </item>
    <item>
        <dc:subject>Enter Vaisala</dc:subject>
        <title>Enter Vaisala</title>
        <link>http://www.kaukolaweb.com/blog/enter-vaisala.html</link>
        <guid isPermaLink="true">http://www.kaukolaweb.com/blog/enter-vaisala.html</guid>
        <pubDate>Wed, 04 May 2005 20:58:06 +0300</pubDate>
                  <dc:creator>Henri Kaukola</dc:creator>
                <description>
I started my new job as a Web Marketing Specialist at Vaisala Instruments last Monday. It has been interesting three days trying to get up to speed with some ongoing projects, all the while getting to know the environment. I've been introduced to some 50+ people, got my own room, and got lost on my way out of the office on my first day.

So, it's been busy, and if I can do my math, it will be for some time. I'm not expecting to blog all that much in the coming months, but try to keep the habit from dying altogether.
</description>
        <content:encoded><![CDATA[
<p>I started my new job as a <em>Web Marketing Specialist</em> at <a href="http://www.vaisala.com/" title="Vaisala Group Web site">Vaisala Instruments</a> last Monday. It has been interesting three days trying to get up to speed with some ongoing projects, all the while getting to know the environment. I've been introduced to some 50+ people, got my own room, and got lost on my way out of the office on my first day.</p>

<p>So, it's been busy, and if I can do my math, it will be for some time. I'm not expecting to blog all that much in the coming months, but try to keep the habit from dying altogether.</p>
]]></content:encoded>
        <category>Work</category>
            </item>
    <item>
        <dc:subject>Leaving Nemein</dc:subject>
        <title>Leaving Nemein</title>
        <link>http://www.kaukolaweb.com/blog/leaving-nemein.html</link>
        <guid isPermaLink="true">http://www.kaukolaweb.com/blog/leaving-nemein.html</guid>
        <pubDate>Fri, 22 Apr 2005 21:38:04 +0300</pubDate>
                  <dc:creator>Henri Kaukola</dc:creator>
                <description>
Today was my last day as Nemein Consultant. The past four years I've been working for Nemein have been anything but dull. I wonder if a single day has passed without me learning something new. I've also had the privilege to meet, and work with, the Midgard project crew.

I will miss both my fellow co-workers, whom I've become close friends with, and the community, that I've become to love. However, as a forever optimistic person, I hope to meet everyone again for a pivo (or three).

In the end I'd also like to say thank you to all the clients I've worked with. You have made it the most amazing, interesting and busiest four years of my life.

May the Amerigard be with you, and thanks for all the fish!
</description>
        <content:encoded><![CDATA[
<p>Today was my last day as <a href="http://www.nemein.com/">Nemein</a> Consultant. The past four years I've been working for Nemein have been anything but dull. I wonder if a single day has passed without me learning something new. I've also had the privilege to meet, and work with, the <a href="http://www.midgard-project.org/">Midgard</a> project <a href="http://www.midgard-project.org/community/whoswho/">crew</a>.</p>

<p>I will miss both my <a href="http://www.nemein.com/en/team/">fellow co-workers</a>, whom I've become close friends with, and the <a href="http://www.midgard-project.org/community/whoswho/">community</a>, that I've become to love. However, as a forever optimistic person, I hope to meet everyone again for a <em>pivo</em> (or three).</p>

<p>In the end I'd also like to say <em>thank you</em> to all the <a href="http://www.nemein.com/en/clients/">clients</a> I've worked with. You have made it the most amazing, interesting and busiest four years of my life.</p>

<p><em>May the Amerigard be with you, and thanks for all the fish!</em></p>
]]></content:encoded>
        <category>Nemein</category>
            </item>
    <item>
        <dc:subject>Aegir-1.0.3 and NTLM authentication</dc:subject>
        <title>Aegir-1.0.3 and NTLM authentication</title>
        <link>http://www.kaukolaweb.com/blog/aegir-1-0-3-and-ntlm-authentication.html</link>
        <guid isPermaLink="true">http://www.kaukolaweb.com/blog/aegir-1-0-3-and-ntlm-authentication.html</guid>
        <pubDate>Fri, 08 Apr 2005 07:10:40 +0300</pubDate>
                  <dc:creator>Henri Kaukola</dc:creator>
                <description>
The Aegir CMS is unable to do single sign-on with NTLM authentication. This is due to the fact that Aegir natively uses Nemein_Authentication library, which in turn does not understand Midgard's basic authentication (that is also utilized by NTLM authentication).

To force Aegir to support single sign-on together with NTLM, the following changes must be made (DISCLAIMER: The changes have been tested with a Aegir-1.0.3 installation. I tested Aegir with both NTLM authentication and regular Nemein_Authentication, and found that everything were working properly. However, the tests included only articles and attachments - there may be some other hidden problems elsewhere. So, keep another admin interface handy in case your Aegir brakes!):


Turn on authentication in the Aegir host record. NOTE: I'm using sitegrouped Aegir (www.example.com:8001/aegir) and have SG0 Aegir (www.example.com:8002/aegir_sg0) available under separate host.
Modify Nemein_Authentication library


Snippet: /Nemein_Authentication/Functions


function auth_by_cookies()

 // Disable cookie checking when the basic auth is in use and user is set, place this right in the beginning
 if ($GLOBALS['midgard']-&amp;gt;auth &amp;amp;&amp;amp; $GLOBALS['midgard']-&amp;gt;user) {
     return false;
 }



Modify Aegir libraries


Snippet: /AegirCore/lib/auth

// Provide alternative authentication routine for the basic auth, add this right after if ($logout) clause
} elseif ($GLOBALS['midgard']-&amp;gt;auth) {
    $aegir_user = mgd_get_person($GLOBALS['midgard']-&amp;gt;user);
    $mgd_login['uid'] = $aegir_user-&amp;gt;id;
}

Snippet: /AegirCore/lib/auth_functions


function aegir_sitegroup_reauth($sitegroup)

// Provide fallback routine for the basic auth, place this right in the beginning
if ($GLOBALS['midgard']-&amp;gt;auth &amp;amp;&amp;amp; $GLOBALS['midgard']-&amp;gt;user) {
    return;
}


Page: /Aegir CMS/rcs

// Provide a fallback for the $currentuser check
if (!$currentuser) {
    if (!$currentuser = mgd_get_person($GLOBALS['midgard']-&amp;gt;user)) {
        quitit();
    }
}
// Provide fallback for the basic auth
if (strtolower($currentuser-&amp;gt;username) != strtolower($set[&quot;username&quot;])
    &amp;amp;&amp;amp; !$currentuser) {
    echo &quot;cookie problem?&quot;;
    exit;
}




After the changes you can point your browser directly to to http://www.example.com/aegir/newframeset/ to get single sign-on authentication. In case you want to compare your code, I made an RTF file that shows changed parts of code in bold.

Update 2005-04-25: The link to the RTF had a typo. Thanks Solt!
</description>
        <content:encoded><![CDATA[
<p>The <a href="http://www.midgard-project.org/projects/aegir/">Aegir CMS</a> is unable to do single sign-on with NTLM authentication. This is due to the fact that Aegir natively uses Nemein_Authentication library, which in turn does not understand <a href="http://www.midgard-project.org/">Midgard's</a> basic authentication (that is also utilized by NTLM authentication).</p>

<p>To force Aegir to support single sign-on together with NTLM, the following changes must be made (DISCLAIMER: The changes have been tested with a Aegir-1.0.3 installation. I tested Aegir with both NTLM authentication and regular Nemein_Authentication, and found that everything were working properly. However, the tests included only articles and attachments - there may be some other hidden problems elsewhere. So, keep another admin interface handy in case your Aegir brakes!):</p>

<ul>
<li><p>Turn on authentication in the Aegir host record. NOTE: I'm using sitegrouped Aegir (www.example.com:8001/aegir) and have SG0 Aegir (www.example.com:8002/aegir_sg0) available under separate host.</p></li>
<li><p>Modify Nemein_Authentication library</p>

<ul>
<li><p>Snippet: /Nemein_Authentication/Functions</p>

<ul>
<li><p><code>function auth_by_cookies()</code></p>

<pre><code> // Disable cookie checking when the basic auth is in use and user is set, place this right in the beginning
 if ($GLOBALS['midgard']-&gt;auth &amp;&amp; $GLOBALS['midgard']-&gt;user) {
     return false;
 }
</code></pre></li>
</ul></li>
</ul></li>
<li><p>Modify Aegir libraries</p>

<ul>
<li><p>Snippet: /AegirCore/lib/auth</p>

<pre><code>// Provide alternative authentication routine for the basic auth, add this right after if ($logout) clause
} elseif ($GLOBALS['midgard']-&gt;auth) {
    $aegir_user = mgd_get_person($GLOBALS['midgard']-&gt;user);
    $mgd_login['uid'] = $aegir_user-&gt;id;
}
</code></pre></li>
<li><p>Snippet: /AegirCore/lib/auth_functions</p>

<ul>
<li><p><code>function aegir_sitegroup_reauth($sitegroup)</code></p>

<pre><code>// Provide fallback routine for the basic auth, place this right in the beginning
if ($GLOBALS['midgard']-&gt;auth &amp;&amp; $GLOBALS['midgard']-&gt;user) {
    return;
}
</code></pre></li>
</ul></li>
<li><p>Page: /Aegir CMS/rcs</p>

<pre><code>// Provide a fallback for the $currentuser check
if (!$currentuser) {
    if (!$currentuser = mgd_get_person($GLOBALS['midgard']-&gt;user)) {
        quitit();
    }
}
// Provide fallback for the basic auth
if (strtolower($currentuser-&gt;username) != strtolower($set["username"])
    &amp;&amp; !$currentuser) {
    echo "cookie problem?";
    exit;
}
</code></pre></li>
</ul></li>
</ul>

<p>After the changes you can point your browser directly to to http://www.example.com/aegir/newframeset/ to get single sign-on authentication. In case you want to compare your code, I made an <a href="http://www.kaukolaweb.com/midcom-serveattachmentguid-97ae6dbba6d4142ba55b46e1d1e9906b/aegir_ntlm_auth_changes.rtf">RTF file</a> that shows changed parts of code in <strong>bold</strong>.</p>

<p><strong>Update 2005-04-25:</strong> The link to the RTF had a typo. Thanks <a href="http://www.midgard-project.org/community/whoswho/solt.html">Solt</a>!</p>
]]></content:encoded>
        <category>Midgard</category>
            </item>
  </channel>
</rss>
