<rss version="2.0">
 <channel>
    <title>Safari / OS X InfoCard Selector</title>
    <link>http://www.hccp.org/safari-plug-in.html</link>
    <description>An ongoing implementation of a InfoCard/CardsPace Selector for Safari / OS X.</description>
    <language>en-us</language>




	<item>
	        <title>Release: InfoCard Selector for Safari (v0.2.1219)</title>
	        <link>http://www.hccp.org/SafariInfoCardSelector-0.2.1219.pkg.zip</link>
	        <description>
				<![CDATA[ 
				<b>New Features/Enhancements:</b>
				<ul>
					<li>multiple card support</li>
					<li>site usage history</li>
					<li>site usage affinity</li>
					<li>site/card specific PPIDs</li>
					<li>indication of required attributes in UI</li>
					<li>Mac OS X Package (.pkg) Installer</li>																									
				</ul>
				]]>
		    </description>
		    <author>Ian Brown</author>
			<pubDate>Thu, 21 Dec 2006 15:00:00 PST</pubDate>
			<enclosure url="http://www.hccp.org/SafariInfoCardSelector-0.2.1219.pkg.zip" length="2253379" type="application/zip"/>
    </item>

	<item>
	        <title>Release: InfoCard Selector for Safari (Power PC build) (v0.2.1219)</title>
	        <link>http://www.hccp.org/SafariInfoCardSelector-0.2.1219-PPC.pkg.zip</link>
	        <description>
				<![CDATA[ 
				<b>New Features/Enhancements:</b>
				<ul>
					<li>multiple card support</li>
					<li>site usage history</li>
					<li>site usage affinity</li>
					<li>site/card specific PPIDs</li>
					<li>indication of required attributes in UI</li>
					<li>Mac OS X Package (.pkg) Installer</li>																									
				</ul>
				]]>
		    </description>
		    <author>Ian Brown</author>
			<pubDate>Thu, 21 Dec 2006 15:00:00 PST</pubDate>
			<enclosure url="http://www.hccp.org/SafariInfoCardSelector-0.2.1219-PPC.pkg.zip" length="2224551" type="application/zip"/>
    </item>

<item>
        <title>Detecting a Safari InfoCard PlugIn Using JavaScript</title>
        <link>http://www.hccp.org/plugin-detect.html</link>
        <description>
        <![CDATA[

<h3>Detecting a Safari InfoCard PlugIn Using JavaScript</h3>

<p>

A few weeks ago <a href="http://www.openrowley.com/">Pete Rowley</a> <a href="http://www.openrowley.com/2006/10/11/web-2-oh-dear-opinity-only-wants-microsoft-identity-selectors/">pointed out</a> an issue with <a href="https://secure.opinity.com/1.5/home/login.php">Opinity's InfoCard support</a>. It would appear that the folks at Opinity decided to refuse InfoCard tokens from non-IE7 selectors. So, for instance, if I attempt to log in using the <a href="http://www.hccp.org/safari-plug-in.html">Safari-based selector</a>, I get the following alert:
</p>
<div align="center"><img src="images/opinity-login.gif"/></div>
<p>While I can understand that the webmaster at Opinity might be trying to help out users who are attempting to use a non-Microsoft browser, a more appropriate way to do this would be to ask the browser itself, via some simple JavaScript, if it understands embedded objects of type <i>"application/x-informationcard"</i>.
<p>So, for those of you out there that are running a relying party that understands InfoCard/Cardspace, and you want to limit access to that particular login medium to browsers that understand the protocol, here is a small snippet of JavaScript that will query a browser's installed plug-ins and check for InfoCard support:
<pre>

 &lt;script language="JavaScript">
 var infoCardMimeType="application/x-informationcard"; //InfoCard MIME Type

 function isInfoCardSupportedByPlugIn() {
    if (navigator.plugins && navigator.plugins.length > 0) {
	   var pluginsArrayLength = navigator.plugins.length;
	   // for each plugin...
	   for (pluginsArrayCounter=0; pluginsArrayCounter < pluginsArrayLength; pluginsArrayCounter++ ) {
	       // check to see if plugin has assoc. MIME type and 
	       // if so, if it is of type "application/x-informationcard"
	       if (navigator.plugins[pluginsArrayCounter][0] 
	            && infoCardMimeType == navigator.plugins[pluginsArrayCounter][0].type) {
	           return true;
	       }
	   }
	   return false;
	}
 }
 &lt;/script>
 
</pre>
</p>
<p>
Using the above code, here's what we are able to discern about the  browser with which you are currently using to view this page: 
<div  align="center" class="message"><script language="JavaScript">
if (isInfoCardSupportedByPlugIn()) {
 document.write("<br\>InfoCard IS supported in this browser by a plug-in.<br\><br\>");
} else {
 document.write("<br\>InfoCard is NOT supported in this browser by a plug-in.<br\> While the browser you are using may support InfoCard natively, like IE7, it is not supporting it via the use of a registered plug-in.<br\><br\>");
}

</script>

</div>
</p>
<p>So, hopefully the Opinity people will take the time to let us choose the credential types that we would prefer to log in with, without forcing us to make unnecessary choices about browsers and operationg systems.
<p class="footer">
10/25/2006</p>

        ]]>
        </description>
    </item>






<item>
        <title>Support for optional claims.</title>
        <link>http://www.hccp.org/safari-plug-in.html</link>
        <description>
        <![CDATA[

<h3>Support for optional claims.</h3>
<p>The latest revision of the InfoCard Selector for Safari has a refactored UI (it's a little more card-like, and is a baby step towards providing a similar user experience to the Microsoft CardSpace selector). Along with the new UI, users can now choose to send optional claims to the relying party. The new interface should also make clearer what information is being submitted to a relying party.</p>
<p>More information and downloads are available <a href="http://www.hccp.org/safari-plug-in.html">here</a>.
<p>
<table>
<tr><td  valign="top">
<p align="center"><a name="simple-demo"/><b>Simple Login to Identity Blog</b></p>
For the faint of heart, or for those running those other operating systems, here's a short screencast of the selector in action, authN'ing against <a href="https://www.identityblog.com/wp-login.php">Kim Cameron's RP</a>:</td>

<td valign="top">
<p align="center"><a name="optional-login-demo"/><b>Login Using Optional Claims</b></p>
A short demonstration of the selector interacting with the <a href="https://xmldap.org/relyingparty/">xmldap.org sample relying party</a>, which allows users to submit a set of optional claims:</td></tr>


<tr>
<td>
<p align="center"><a href="movies/safari-infocard.mov"><img border=0 alt="click to download movie" src="images/infocard-screen.gif"/></a></p></td>


<td>
<p align="center"><a href="movies/infocard-optional-claims.mov"><img border=0 alt="click to download movie" src="images/optional-screen-grab.gif"/></a></td>



</tr>


</table>
 
</p>
<p>

<p class="footer">9/27/2006</p>

        ]]>
        </description>
    </item>





<item>
        <title>InfoCard Selector for Safari</title>
        <link>http://www.hccp.org/safari-plug-in.html</link>
        <description>
        <![CDATA[

<h3>InfoCard Selector for Safari</h3>
<p>
This is currently still at the proof of concept stage, and is lacking  most of the features found in the official CardSpace selector from Microsoft. At present, only a single self-asserted card can be selected. The "selector" will currently pull the logged in account's personal information from the AddressBook application, and allow you to use that AddressBook entry as a self-asserted InfoCard with various RPs. It should work with existing installs of Safari, and with most relying parties. 
</p>
<p>
The plug-in itself is a wrapper around <a href="http://xmldap.blogspot.com/">Chuck Mortimore</a>'s Java <a href="http://xmldap.org/">implementation</a> of an InfoCard token generator. For those of you out there using Firefox, check out Chuck's cross-platform <a href="http://xmldap.org/">Firefox InfoCard selector</a>.
</p>
<p>So download the Safari Plug-In below and give it a spin. Send me any feedback at <b>igb at hccp.org</b></p>
<p>I'll post new releases here as features are added and bugs are fixed.</p>
<h4 class="large">Downloads</h4>
<p>Currently there are two versions, one for the new Intel-based Apple's, and one for the PowerPC-based machiines. At some point I'll figure out how to get XCode to generate a Universal Binary. (<i>I suppose the PowerPC build might work on the Intel Macs, that's what <a href="http://www.apple.com/rosetta/">Rosetta</a> is all about right? But it hasn't been tested on the Intel arch, so YMMV.</i>)
</p>
<table>
    <tr>
        <td><a href="http://www.hccp.org/InfocardPlugin.bundle.zip"><img src="./images/plugin_sm.gif"/></a></td><td>
<a class="large" href="http://www.hccp.org/InfocardPlugin.bundle.zip">Intel version</a><br>
<a class="small" href="http://www.hccp.org/InfocardPlugin.bundle.zip">http://www.hccp.org/InfocardPlugin.bundle.zip</a>
</td>
</tr></table>
<br/>
<br/>
<table>
    <tr>
        <td><a  href="http://www.hccp.org/InfocardPluginPPC.bundle.zip"><img src="./images/plugin_sm.gif"/></a></td><td><a class="large" href="http://www.hccp.org/InfocardPluginPPC.bundle.zip">PowerPC version</a><br>
<a class="small" href="http://www.hccp.org/InfocardPluginPPC.bundle.zip">http://www.hccp.org/InfocardPluginPPC.bundle.zip</a>
</td>
</tr></table>
<h4 class="large">Installation</h4>
<p>Installation is pretty simple. After downloading the ZIP file, extract the archive. You should now have a file called <b>InfocardPlugin.bundle</b>. Just copy that to the <i>Library/Internet Plug-Ins</i> directory <i>under your home directory</i>. restart Safari, and off you go.</p>
<h4 class="large">Demo</h4>
For the faint of heart, or for those running those other operating systems, here's a short screencast of the selector in action, authN'ing against <a href="https://www.identityblog.com/wp-login.php">Kim Cameron's RP</a>:<br/>
<p align="center"><a href="movies/safari-selector.mov"><img alt="click to download movie" src="images/safari-selector-movie.gif"/></a>
<p class="footer">9/12/2006</p>

        ]]>
        </description>
    </item>

 </channel>
</rss>