<?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/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
>

<channel>
	<title>From the Desk of Brandon Haynes &#187; Security</title>
	<atom:link href="http://blogs.law.harvard.edu/brandonhaynes/category/technology/security-technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.law.harvard.edu/brandonhaynes</link>
	<description>Observations about the intersection of technology, business, and intellectual property</description>
	<lastBuildDate>Wed, 21 Oct 2009 16:14:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/us/</creativeCommons:license>
		<item>
		<title>Whitepaper: DotNetNuke Multi-Factor Authentication</title>
		<link>http://blogs.law.harvard.edu/brandonhaynes/2009/08/28/whitepaper-dotnetnuke-multi-factor-authentication/</link>
		<comments>http://blogs.law.harvard.edu/brandonhaynes/2009/08/28/whitepaper-dotnetnuke-multi-factor-authentication/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 14:19:48 +0000</pubDate>
		<dc:creator>Brandon Haynes</dc:creator>
				<category><![CDATA[DotNetNuke (DNN) Content Management System]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Authentication]]></category>
		<category><![CDATA[DotNetNuke]]></category>
		<category><![CDATA[DotNetNuke Integration]]></category>
		<category><![CDATA[Multi-Factor]]></category>
		<category><![CDATA[Multifactor]]></category>
		<category><![CDATA[Provider]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/brandonhaynes/?p=249</guid>
		<description><![CDATA[I am pleased to make available a whitepaper detailing the high-level motivation and approach involved in the creation of the recently-released DotNetNuke Multi-Factor Authentication Provider, along with a discussion of the unique characteristics of a DotNetNuke installation that render the approaches of other vendors (e.g. RSA SecurID) incomplete or unsatisfactory.  Additionally, each out-of-the-box factor [...]]]></description>
			<content:encoded><![CDATA[<p>I am pleased to make available a whitepaper detailing the high-level motivation and approach involved in the creation of the recently-released <a href="http://dnnmultifactor.codeplex.com/">DotNetNuke Multi-Factor Authentication Provider</a>, along with a discussion of the unique characteristics of a <a href="http://www.dotnetnuke.com">DotNetNuke</a> installation that render the approaches of other vendors (e.g. <a href="http://rsa.com/node.aspx?id=1156">RSA SecurID</a>) incomplete or unsatisfactory.  Additionally, each out-of-the-box factor is described in general detail in a format that is digestible by an audience of varying technical sophistication.</p>
<p>This paper is intended for all audiences who might have an interest in overall DotNetNuke installation security, and is designed to assist management in identifying an appropriate level of authentication-related risk.</p>
<ul>
<li><a href="http://blogs.law.harvard.edu/brandonhaynes/files/2009/08/multifactor-authentication-in-dotnetnuke.pdf"><strong>Download the Multi-Factor Authentication in DotNetNuke Whitepaper</strong></a></li>
<li><a href="http://dnnmultifactor.codeplex.com/">Learn more about the Multi-Factor Authentication Provider</a></li>
<li><a href="http://www.dotnetnuke.com">Learn more about the DotNetNuke Web Application Framework</a></li>
</ul>



Share on:


	<a rel="nofollow" id="digg" href="javascript:window.location='http%3A%2F%2Fdigg.com%2Fsubmit%3Fphase%3D2%26amp%3Burl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication%26amp%3Bbodytext%3DI%2520am%2520pleased%2520to%2520make%2520available%2520a%2520whitepaper%2520detailing%2520the%2520high-level%2520motivation%2520and%2520approach%2520involved%2520in%2520the%2520creation%2520of%2520the%2520recently-released%2520DotNetNuke%2520Multi-Factor%2520Authentication%2520Provider%252C%2520along%2520with%2520a%2520discussion%2520of%2520the%2520unique%2520characteristics%2520of%2520a';" title="Digg"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow" id="del.icio.us" href="javascript:window.location='http%3A%2F%2Fdelicious.com%2Fpost%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication%26amp%3Bnotes%3DI%2520am%2520pleased%2520to%2520make%2520available%2520a%2520whitepaper%2520detailing%2520the%2520high-level%2520motivation%2520and%2520approach%2520involved%2520in%2520the%2520creation%2520of%2520the%2520recently-released%2520DotNetNuke%2520Multi-Factor%2520Authentication%2520Provider%252C%2520along%2520with%2520a%2520discussion%2520of%2520the%2520unique%2520characteristics%2520of%2520a';" title="del.icio.us"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow" id="facebook" href="javascript:window.location='http%3A%2F%2Fwww.facebook.com%2Fshare.php%3Fu%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Bt%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication';" title="Facebook"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow" id="google" href="javascript:window.location='http%3A%2F%2Fwww.google.com%2Fbookmarks%2Fmark%3Fop%3Dedit%26amp%3Bbkmk%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication%26amp%3Bannotation%3DI%2520am%2520pleased%2520to%2520make%2520available%2520a%2520whitepaper%2520detailing%2520the%2520high-level%2520motivation%2520and%2520approach%2520involved%2520in%2520the%2520creation%2520of%2520the%2520recently-released%2520DotNetNuke%2520Multi-Factor%2520Authentication%2520Provider%252C%2520along%2520with%2520a%2520discussion%2520of%2520the%2520unique%2520characteristics%2520of%2520a';" title="Google Bookmarks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow" id="dotnetkicks" href="javascript:window.location='http%3A%2F%2Fwww.dotnetkicks.com%2Fkick%2F%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication';" title="DotNetKicks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/dotnetkicks.png" title="DotNetKicks" alt="DotNetKicks" class="sociable-hovers" /></a>
	<a rel="nofollow" id="linkedin" href="javascript:window.location='http%3A%2F%2Fwww.linkedin.com%2FshareArticle%3Fmini%3Dtrue%26amp%3Burl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication%26amp%3Bsource%3DFrom%2Bthe%2BDesk%2Bof%2BBrandon%2BHaynes%2BObservations%2Babout%2Bthe%2Bintersection%2Bof%2Btechnology%252C%2Bbusiness%252C%2Band%2Bintellectual%2Bproperty%26amp%3Bsummary%3DI%2520am%2520pleased%2520to%2520make%2520available%2520a%2520whitepaper%2520detailing%2520the%2520high-level%2520motivation%2520and%2520approach%2520involved%2520in%2520the%2520creation%2520of%2520the%2520recently-released%2520DotNetNuke%2520Multi-Factor%2520Authentication%2520Provider%252C%2520along%2520with%2520a%2520discussion%2520of%2520the%2520unique%2520characteristics%2520of%2520a';" title="LinkedIn"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a>
	<a rel="nofollow" id="stumbleupon" href="javascript:window.location='http%3A%2F%2Fwww.stumbleupon.com%2Fsubmit%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F%26amp%3Btitle%3DWhitepaper%253A%2520DotNetNuke%2520Multi-Factor%2520Authentication';" title="StumbleUpon"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a>
	<a rel="nofollow" id="technorati" href="javascript:window.location='http%3A%2F%2Ftechnorati.com%2Ffaves%3Fadd%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F08%252F28%252Fwhitepaper-dotnetnuke-multi-factor-authentication%252F';" title="Technorati"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>


<br/><br/>]]></content:encoded>
			<wfw:commentRss>http://blogs.law.harvard.edu/brandonhaynes/2009/08/28/whitepaper-dotnetnuke-multi-factor-authentication/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/us/</creativeCommons:license>
	</item>
		<item>
		<title>Beta Release: DotNetNuke Amazon S3 Folder Integration Providers</title>
		<link>http://blogs.law.harvard.edu/brandonhaynes/2009/06/22/released-dotnetnuke-amazon-s3-folder-integration-providers/</link>
		<comments>http://blogs.law.harvard.edu/brandonhaynes/2009/06/22/released-dotnetnuke-amazon-s3-folder-integration-providers/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 12:43:32 +0000</pubDate>
		<dc:creator>Brandon Haynes</dc:creator>
				<category><![CDATA[DotNetNuke (DNN) Content Management System]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[5.1]]></category>
		<category><![CDATA[Amazon S3]]></category>
		<category><![CDATA[Authorization]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[DotNetNuke]]></category>
		<category><![CDATA[DotNetNuke 5.1]]></category>
		<category><![CDATA[DotNetNuke Integration]]></category>
		<category><![CDATA[Provider]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/brandonhaynes/?p=199</guid>
		<description><![CDATA[I am pleased to announce a beta release of my Amazon S3 integration authorization and data providers.  It may be downloaded via CodePlex on its project homepage.  As is all of my DotNetNuke work, this project is fully open-source and available under a liberal BSD license.
The DotNetNuke web application framework offers multiple file persistence options out-of-the-box, including [...]]]></description>
			<content:encoded><![CDATA[<p>I am pleased to announce a <a href="http://dnnamazons3.codeplex.com/">beta release</a> of my <a href="http://aws.amazon.com/s3">Amazon S3</a> integration authorization and data providers.  It may be downloaded via CodePlex on its <a href="http://dnnamazons3.codeplex.com/">project homepage</a>.  As is all of my DotNetNuke work, this project is fully open-source and available under a liberal <a href="http://dnnamazons3.codeplex.com/license">BSD license</a>.</p>
<p>The <a class="externalLink" href="http://www.dotnetnuke.com/">DotNetNuke web application framework</a> offers multiple file persistence options out-of-the-box, including file-system storage (both unsecured and secured by ACL), along with ACL-secured database storage. When creating a link to a resource, the DotNetNuke UI provides a convenient list of these files, and also allows direct input of arbitrary URI.</p>
<p>However, there exists no ready method by which an administrator might link to a known set of files persisted external to the installation. While direct URI input might be used here, it requires knowledge of these data, and does not allow for enumeration and management of the external objects themselves.</p>
<p>This project attempts to bridge that gap by integrating resources persisted on the Amazon S3 into the DotNetNuke framework. Resources stored there are enumerable via the File Manager and selectable via the URL control. Throughout the core framework, these external resources are treated identically to database-secured resources, including observance of Amazon S3 ACL, automatic synchronization, and (reasonably friendly) 301 Redirects to the Amazon S3 when accessed via LinkClick.aspx.</p>
<p>This is effectuated via customization of two providers: authorization and data. The authorization provider integrates Amazon S3 ACLs for external resources, and the data provider allows enumeration of and details about the external resources themselves.</p>
<p><span id="more-199"></span></p>
<h2>Project Goals</h2>
<ul>
<li>Integration with the <a class="externalLink" href="http://aws.amazon.com/s3">Amazon S3</a> for data storage external to the DotNetNuke framework.</li>
<li>Seamless integration into the DotNetNuke UI, both at the File Manager and URL controls. For example:
<ul>
<li>Amazon S3 objects should appear in the File Manager just like any other internal files,</li>
<li>Amazon S3 objects should appear in the core URL control, and</li>
<li>Insofar as is feasible, Amazon S3 files should be indistinguishable from their secured storage counterparts.</li>
</ul>
</li>
<li>No external Amazon S3 UI or kludgy link generation</li>
<li>Whenever possible, utilization of 301 Redirects to Amazon S3 resource URIs.</li>
<li>Full observance of the external Amazon S3 bucket ACLs.</li>
<li>Require no core changes and utilize only existing DotNetNuke extension points</li>
</ul>
<h2>Configuration and Usage</h2>
<p>After installation, two new profile properties will be automatically created across all portals:</p>
<ul>
<li>S3Key, and</li>
<li>S3Secret</li>
</ul>
<p>The names of these properties may be changed in the web.config near the configuration/dotnetnuke/permissions node). To enable a portal for Amazon S3 integration, the key and secret <strong>for the portal administrator</strong> must be configured with valid values.</p>
<p>Any user may submit his or her own key and secret information at the profile level; these data will be used to circumscribe the set of available Amazon S3 objects for that user.</p>
<p>After a portal&#8217;s administrator account is configured with a valid Amazon S3 key and secret, the file manager will display those buckets and objects stored on the service:</p>
<div id="attachment_133" class="wp-caption aligncenter" style="width: 310px"><a rel="attachment wp-att-133" href="http://blogs.law.harvard.edu/brandonhaynes/2009/06/08/preview-amazon-s3-integration-dodnn-conference/amazon-s3-teaser/"><img class="size-medium wp-image-133" src="http://blogs.law.harvard.edu/brandonhaynes/files/2009/06/amazon-s3-teaser-300x167.png" alt="A screenshot demonstrating Amazon S3 cloud-based integration on the DotNetNuke platform" width="300" height="167" /></a><p class="wp-caption-text">A screenshot demonstrating Amazon S3 cloud-based integration on the DotNetNuke platform</p></div>
<p>The list of available buckets will be circumscribed by the permissions granted by the administrator&#8217;s S3 account. Because DotNetNuke does not support file-level ACLs, objects within an Amazon S3 bucket are assumed to have an ACL identical to that present on the bucket itself (though a more restrictive policy will still be enforced by the S3 service).</p>
<p>Similarly, the DotNetNuke URL control will display a list of buckets accessible by the accessing user, and allow selection of the objects therein:</p>
<div id="attachment_172" class="wp-caption aligncenter" style="width: 304px"><a rel="attachment wp-att-172" href="http://blogs.law.harvard.edu/brandonhaynes/2009/06/16/presentation-materials-advanced-authorization-in-dotnetnuke/amazon-s3-uri-teaser/"><img class="size-medium wp-image-172" src="http://blogs.law.harvard.edu/brandonhaynes/files/2009/06/amazon-s3-uri-teaser-294x300.png" alt="Amazon S3 Demonstration Displaying URI Selection" width="294" height="300" /></a><p class="wp-caption-text">Amazon S3 Demonstration Displaying URI Selection</p></div>
<h2>Discussion</h2>
<h3>Overall Authorization Model</h3>
<p>There are a number of areas in which the authorization policy enforced by the provider might be improved. In its current form it is minimally complete, but could easily be made more robust and sensitive to user context (in particular, no attempt is made to deal with Amazon S3 user-specific ACL assignment). The provider is largely aimed at objects intended to be made available to &#8220;everyone.&#8221;</p>
<h3>File-based ACLs</h3>
<p>DotNetNuke does not support file-based ACLs, but these are allowed and enforced by the Amazon S3 service.</p>
<h3>Generated URIs</h3>
<p>The 301 redirect URIs created by the data provider are not per-user, and thereby require read-permission on the &#8220;everyone&#8221; group for the S3 object in question. A stronger model might generate a valid read URI for the accessing user, so long as that user has read permissions on the object itself.</p>
<h3>C<span style="text-decoration: line-through">R</span>UD</h3>
<p>Only read access is implemented for Amazon S3 buckets and objects; while it remains quite straightforward to implement the other access characteristics, these are left to the (many) other <a href="http://www.google.com/search?q=amazon+s3+managers">S3 managers</a> that exist for these purposes.</p>
<h3>Shared secret storage</h3>
<p>Shared secrets are stored in plain-text on a user&#8217;s profile; this is generally a horrible security policy (Alex Shirley will certainly yell at me for doing this after I strongly discouraged him from doing so in a similar project). Because federated authentication is not possible with the Amazon S3 service, this secret cannot be made application-specific and must be stored <em>somewhere</em>.  The solution here is an encrypted profile property type; this is clearly outside the scope of this project, but is on my radar for a future complimentary project.</p>
<h3>Performance</h3>
<p>A number of internal operations are O(n*m). While some of these are cached by the underlying DotNetNuke framework, the integration implementation itself could be improved via additional caching and lookup tables.</p>
<h2>Your Feedback is Needed!</h2>
<p>As this project moves toward an initial production release, it will rely heavily on the feedback provided by the community.  Any such feedback &#8212; including comments, ratings, and constructive criticism &#8212; is greatly appreciated.</p>
<p>B</p>



Share on:


	<a rel="nofollow" id="digg" href="javascript:window.location='http%3A%2F%2Fdigg.com%2Fsubmit%3Fphase%3D2%26amp%3Burl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Btitle%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers%26amp%3Bbodytext%3DI%2520am%2520pleased%2520to%2520announce%2520a%2520beta%2520release%2520of%2520my%25C2%25A0Amazon%2520S3%2520integration%2520authorization%2520and%2520data%2520providers.%2520%25C2%25A0It%2520may%2520be%2520downloaded%2520via%2520CodePlex%2520on%2520its%2520project%2520homepage.%2520%25C2%25A0As%2520is%2520all%2520of%2520my%2520DotNetNuke%2520work%252C%2520this%2520project%2520is%2520fully%2520open-source%2520and%2520available%2520und';" title="Digg"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow" id="del.icio.us" href="javascript:window.location='http%3A%2F%2Fdelicious.com%2Fpost%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Btitle%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers%26amp%3Bnotes%3DI%2520am%2520pleased%2520to%2520announce%2520a%2520beta%2520release%2520of%2520my%25C2%25A0Amazon%2520S3%2520integration%2520authorization%2520and%2520data%2520providers.%2520%25C2%25A0It%2520may%2520be%2520downloaded%2520via%2520CodePlex%2520on%2520its%2520project%2520homepage.%2520%25C2%25A0As%2520is%2520all%2520of%2520my%2520DotNetNuke%2520work%252C%2520this%2520project%2520is%2520fully%2520open-source%2520and%2520available%2520und';" title="del.icio.us"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow" id="facebook" href="javascript:window.location='http%3A%2F%2Fwww.facebook.com%2Fshare.php%3Fu%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Bt%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers';" title="Facebook"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow" id="google" href="javascript:window.location='http%3A%2F%2Fwww.google.com%2Fbookmarks%2Fmark%3Fop%3Dedit%26amp%3Bbkmk%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Btitle%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers%26amp%3Bannotation%3DI%2520am%2520pleased%2520to%2520announce%2520a%2520beta%2520release%2520of%2520my%25C2%25A0Amazon%2520S3%2520integration%2520authorization%2520and%2520data%2520providers.%2520%25C2%25A0It%2520may%2520be%2520downloaded%2520via%2520CodePlex%2520on%2520its%2520project%2520homepage.%2520%25C2%25A0As%2520is%2520all%2520of%2520my%2520DotNetNuke%2520work%252C%2520this%2520project%2520is%2520fully%2520open-source%2520and%2520available%2520und';" title="Google Bookmarks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow" id="dotnetkicks" href="javascript:window.location='http%3A%2F%2Fwww.dotnetkicks.com%2Fkick%2F%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Btitle%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers';" title="DotNetKicks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/dotnetkicks.png" title="DotNetKicks" alt="DotNetKicks" class="sociable-hovers" /></a>
	<img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a>
	<a rel="nofollow" id="stumbleupon" href="javascript:window.location='http%3A%2F%2Fwww.stumbleupon.com%2Fsubmit%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F%26amp%3Btitle%3DBeta%2520Release%253A%2520DotNetNuke%2520Amazon%2520S3%2520Folder%2520Integration%2520Providers';" title="StumbleUpon"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a>
	<a rel="nofollow" id="technorati" href="javascript:window.location='http%3A%2F%2Ftechnorati.com%2Ffaves%3Fadd%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F22%252Freleased-dotnetnuke-amazon-s3-folder-integration-providers%252F';" title="Technorati"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>


<br/><br/>]]></content:encoded>
			<wfw:commentRss>http://blogs.law.harvard.edu/brandonhaynes/2009/06/22/released-dotnetnuke-amazon-s3-folder-integration-providers/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/us/</creativeCommons:license>
	</item>
		<item>
		<title>Preview: Amazon S3 Integration @ the DoDNN Conference</title>
		<link>http://blogs.law.harvard.edu/brandonhaynes/2009/06/08/preview-amazon-s3-integration-dodnn-conference/</link>
		<comments>http://blogs.law.harvard.edu/brandonhaynes/2009/06/08/preview-amazon-s3-integration-dodnn-conference/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 13:07:01 +0000</pubDate>
		<dc:creator>Brandon Haynes</dc:creator>
				<category><![CDATA[DotNetNuke (DNN) Content Management System]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[5.1]]></category>
		<category><![CDATA[Authorization]]></category>
		<category><![CDATA[DotNetNuke]]></category>
		<category><![CDATA[DotNetNuke 5.1]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blogs.law.harvard.edu/brandonhaynes/?p=132</guid>
		<description><![CDATA[As many are aware, I will be presenting a session at the upcoming Day of DotNetNuke conference in Orlando, Florida.  The session is entitled &#8220;The Cutting Edge: Advanced Authorization in DotNetNuke 5.1.&#8221;  The abstract for this session reads:
Among the many improvements present in DotNetNuke version 5.1, this latest release includes authorization as a first-class extension [...]]]></description>
			<content:encoded><![CDATA[<p>As many are aware, I will be presenting a session at the upcoming <a href="http://dayofdnn.com/">Day of DotNetNuke</a> conference in Orlando, Florida.  The session is entitled &#8220;<a href="http://dayofdnn.com/Sessions/tabid/214/CodecampId/1/SessionId/33/Default.aspx">The Cutting Edge: Advanced Authorization in DotNetNuke 5.1</a>.&#8221;  The abstract for this session reads:</p>
<blockquote><p>Among the many improvements present in DotNetNuke version 5.1, this latest release includes authorization as a first-class extension point.  This allows customization previously impossible without core modification.  Additionally, the permission model (and the internal use thereof) has been significantly streamlined and centralized, allowing for great flexibility across myriad use scenarios.</p>
<p>In this session, we explore the new permission provider in detail.  This includes a discussion of how (and why) authorization services were centralized and abstracted, the overall design and structure of the provider, and available points of access control.  Finally, we examine some concrete ways in which the provider might be extended to meet real-world policy requirements.</p></blockquote>
<p>When presenting architectural or theoretical material, I always strive to include a demonstration of how the material might be applied to a real-world scenario.  In this case, I will be demonstrating how a custom authorization provider can be used to enable full DotNetNuke integration with cloud-based <a href="http://aws.amazon.com/s3/">Amazon S3 webservices</a>.  A screenshot of the file manager in an Amazon S3-enabled installation is displayed below.</p>
<div style="float: right;margin: 8px"><a href="http://blogs.law.harvard.edu/brandonhaynes/files/2009/06/amazon-s3-teaser.png" rel="lightbox[132]"><img class="alignnone size-medium wp-image-46" src="http://blogs.law.harvard.edu/brandonhaynes/files/2009/06/amazon-s3-teaser-300x167.png" alt="A screenshot demonstrating Amazon S3 cloud-based integration on the DotNetNuke platform" width="300" height="167" /></a></div>
<p>This session should appeal to a wide audience; I cover enough theoretical background for individuals new to security theory, and delve deep enough into the 5.1 authorization architecture to satisfy those that have high familiarity with the platform.  If you are interested in learning more about the internals of the framework &#8212; and how 5.1 authorization might be utilized &#8212; be sure to stop by!</p>
<p>Epilogue: The presentation materials are now <a href="http://blogs.law.harvard.edu/brandonhaynes/2009/06/16/presentation-materials-advanced-authorization-in-dotnetnuke/">available here</a>, and the Amazon S3 Integration providers may be <a href="http://blogs.law.harvard.edu/brandonhaynes/2009/06/22/released-dotnetnuke-amazon-s3-folder-integration-providers/">found here</a>.</p>



Share on:


	<a rel="nofollow" id="digg" href="javascript:window.location='http%3A%2F%2Fdigg.com%2Fsubmit%3Fphase%3D2%26amp%3Burl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Btitle%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference%26amp%3Bbodytext%3DAs%2520many%2520are%2520aware%252C%2520I%2520will%2520be%2520presenting%2520a%2520session%2520at%2520the%2520upcoming%2520Day%2520of%2520DotNetNuke%2520conference%2520in%2520Orlando%252C%2520Florida.%2520%25C2%25A0The%2520session%2520is%2520entitled%2520%2522The%2520Cutting%2520Edge%253A%2520Advanced%2520Authorization%2520in%2520DotNetNuke%25205.1.%2522%2520%25C2%25A0The%2520abstract%2520for%2520this%2520session%2520reads%253A%250D%250AAmong%2520';" title="Digg"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow" id="del.icio.us" href="javascript:window.location='http%3A%2F%2Fdelicious.com%2Fpost%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Btitle%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference%26amp%3Bnotes%3DAs%2520many%2520are%2520aware%252C%2520I%2520will%2520be%2520presenting%2520a%2520session%2520at%2520the%2520upcoming%2520Day%2520of%2520DotNetNuke%2520conference%2520in%2520Orlando%252C%2520Florida.%2520%25C2%25A0The%2520session%2520is%2520entitled%2520%2522The%2520Cutting%2520Edge%253A%2520Advanced%2520Authorization%2520in%2520DotNetNuke%25205.1.%2522%2520%25C2%25A0The%2520abstract%2520for%2520this%2520session%2520reads%253A%250D%250AAmong%2520';" title="del.icio.us"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow" id="facebook" href="javascript:window.location='http%3A%2F%2Fwww.facebook.com%2Fshare.php%3Fu%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Bt%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference';" title="Facebook"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow" id="google" href="javascript:window.location='http%3A%2F%2Fwww.google.com%2Fbookmarks%2Fmark%3Fop%3Dedit%26amp%3Bbkmk%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Btitle%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference%26amp%3Bannotation%3DAs%2520many%2520are%2520aware%252C%2520I%2520will%2520be%2520presenting%2520a%2520session%2520at%2520the%2520upcoming%2520Day%2520of%2520DotNetNuke%2520conference%2520in%2520Orlando%252C%2520Florida.%2520%25C2%25A0The%2520session%2520is%2520entitled%2520%2522The%2520Cutting%2520Edge%253A%2520Advanced%2520Authorization%2520in%2520DotNetNuke%25205.1.%2522%2520%25C2%25A0The%2520abstract%2520for%2520this%2520session%2520reads%253A%250D%250AAmong%2520';" title="Google Bookmarks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow" id="dotnetkicks" href="javascript:window.location='http%3A%2F%2Fwww.dotnetkicks.com%2Fkick%2F%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Btitle%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference';" title="DotNetKicks"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/dotnetkicks.png" title="DotNetKicks" alt="DotNetKicks" class="sociable-hovers" /></a>
	<img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a>
	<a rel="nofollow" id="stumbleupon" href="javascript:window.location='http%3A%2F%2Fwww.stumbleupon.com%2Fsubmit%3Furl%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F%26amp%3Btitle%3DPreview%253A%2520Amazon%2520S3%2520Integration%2520%2540%2520the%2520DoDNN%2520Conference';" title="StumbleUpon"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a>
	<a rel="nofollow" id="technorati" href="javascript:window.location='http%3A%2F%2Ftechnorati.com%2Ffaves%3Fadd%3Dhttp%253A%252F%252Fblogs.law.harvard.edu%252Fbrandonhaynes%252F2009%252F06%252F08%252Fpreview-amazon-s3-integration-dodnn-conference%252F';" title="Technorati"><img src="http://blogs.law.harvard.edu/brandonhaynes/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>


<br/><br/>]]></content:encoded>
			<wfw:commentRss>http://blogs.law.harvard.edu/brandonhaynes/2009/06/08/preview-amazon-s3-integration-dodnn-conference/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/us/</creativeCommons:license>
	</item>
	</channel>
</rss>
